0% au considerat acest document util (0 voturi)
3 vizualizări9 pagini

Note Focp

Documentul discută despre componentele de bază ale unui sistem informatic, inclusiv dispozitivele de intrare, unitatea centrală de procesare, unitatea de control, unitatea aritmetică și logică, memoria și dispozitivele de ieșire. Oferă detalii despre fiecare componentă și funcțiile acestora. De asemenea, oferă un exemplu de structură de bază a unui program C, inclusiv documentația, preprocesorul, definiția și secțiunile principale.

Tradus de

ScribdTranslations
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
3 vizualizări9 pagini

Note Focp

Documentul discută despre componentele de bază ale unui sistem informatic, inclusiv dispozitivele de intrare, unitatea centrală de procesare, unitatea de control, unitatea aritmetică și logică, memoria și dispozitivele de ieșire. Oferă detalii despre fiecare componentă și funcțiile acestora. De asemenea, oferă un exemplu de structură de bază a unui program C, inclusiv documentația, preprocesorul, definiția și secțiunile principale.

Tradus de

ScribdTranslations
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd

3. Desenaț i organizaț ia de bază a unui computer ș i explicaț i componentele acesteia.

(SAU) Explicaț i în
detalii despre organizarea de bază a unui computer cu un desen clar. (SAU) Desenaț i un diagramă bloc
al computerului ș i discutăm despre diferitele componente ale sistemului de calcul.

Dispozitivele hardware conectate la computer sunt numite echipamente periferice. Este


include toate dispozitivele de intrare, ieș ire ș i stocare secundară.

Procesare Centrală
Unitate
Unitate de control
Dispozitive de intrare Dispozitive de ieș ire

Aritmetică ș i
Unitate Logică

Memorie

Dispozitive de intrare:

Dispozitivele de intrare permit utilizatorului să introducă programul ș i datele ș i să le trimită pentru procesare.
unitate.
Dispozitivele de intrare comune sunt tastatura, mouse-ul ș i scanerele
Viteza de introducere a tastaturii este întotdeauna mai mică decât viteza de acceptare a unităț ii de memorie
Dar dacă încerci să apeș i continuu pe butonul de pe tastatură, atunci poț i auzi un sunet de bip,
din cauza nepotrivirii de viteză

Procesor

Procesorul, cunoscut în mod formal sub numele de unitate centrală de procesare (CPU), are electronic
circuiterie care manipulează datele de intrare în informa ț ia necesară. Centrala
unitatea de procesare execută efectiv instrucț iunile computerului.
Este exact ca creierul uman care ia toate deciziile importante, ia toate tipurile de
calculările ș i directivele diferitelor păr ț i ale computerului func ț ionează prin activare ș i
controlul operaț iunii.
Acesta constă din unităț i aritmetice ș i logice, unitate de control ș i memorie internă. Unitatea de control
unitatea CPU-ului coordonează acț iunea întregului sistem.
Programele oferă CPU-ului un set de instrucț iuni de urmat pentru a efectua o sarcină specifică.
între orice două componente ale sistemului de calcul există un traseu numit magistrală
care permite transferul de date între ele.

Unitate de Control

Unitatea de control (UC) coordonează componentele unui sistem informatic.


Unitatea de control este creierul sistemului de calculatoare.
Acesta preia codul tuturor instrucț iunilor din program ș i dirijează operaț iunea
alte unităț i prin furnizarea de semnale de temporizare ș i control. Toate resursele computerului sunt gestionate
de către CU.
Direcț ionează fluxul de date între Unitatea Centrală de Procesare (CPU) ș i celelalte
dispozitive.

Unitate Aritmetico-Logică

Unitatea aritmetico-logica (ALU) efectuează toate operaț iile aritmetice (adunare, scădere,
înmulț ire, ș i împărț ire) ș i operaț ii logice.
Operaț iile logice testează diverse condiț ii întâlnite în timpul procesării ș i permit
acț iuni diferite care trebuie întreprinse în funcț ie de rezultate.

Memorie

Memoria din care CPU-ul preia instrucț iunile ș i datele se numeș te memorie principală. Ea
este, de asemenea, numit memorie principală ș i este volatilă din natură. Conț inutul acestei memorii
va dispărea ori de câte ori puterea este oprită.
Aceasta con ț ine instruc ț iuni ș i date care vin de la dispozitivele de intrare ș i sunt procesate
informaț ii din unitatea aritmetică ș i logică.

Dispozitive de ieș ire

Dispozitivele de ieș ire afiș ează datele procesate - informaț ia - rezultatul procesării.
Dispozitivele sunt, în mod normal, un monitor ș i imprimante.
Aceste dispozitive sunt conectate la CPU pentru a afiș a instrucț iunile ș i datele care sunt
introduse prin dispozitive de intrare pentru verificarea utilizatorului.

STRUCTURA PROGRAMULUI C

Secț iunea de documentaț ie


Secț iunea Preprocesor
Secț iunea de definiț ii
Secț iunea Declaraț iei Globale
main ( )
{
Partea de Declaraț ie
Partea de Execuț ie
}
Sub Secț iunea Program
{
Corpul subprogramului
}

Secț iunea de documentaț ie:


Acesta constă într-un set de linii de comandă utilizate pentru a specifica numele programului,
autorul programului ș i alte detalii etc.
Comentarii:
Comentariile sunt foarte utile pentru identificarea caracteristicilor programului ș i a fundalului
logica programului. Linile cu '/*' ș i care se termină cu '*/' sunt cunoscute ca comentarii
linii. Acestea nu sunt executabile, compilatorul ignoră orice între /* ș i */

Secț iunea Preprocesor:


Este folosit pentru a lega fiș ierele de bibliotecă ale sistemului, pentru a defini macrocomenzi ș i pentru a defini

includere condiț ionată.


Exemplu: include <stdio.h>

Secț iunea de definiț ii:


Secț iunea de definiț ie defineș te toate constantele simbolice.
# define pi 3.14

Secț iunea Declaraț iei Globale


Variabilele care sunt folosite în mai mult de o funcț ie pe parcursul programului sunt
se numesc variabile globale ș i sunt declarate în afara tuturor funcț iilor.
Funcț ia principală
Fiecare program C trebuie să aibă o funcț ie principală, care specifică începutul programului C.
program
Partea de Declaraț ie:
Această parte este folosită pentru a declara toate variabilele care sunt utilizate în partea executabilă a
programul ș i acestea se numesc variabile locale
Partea executabilă:
Conț ine cel puț in o declaraț ie C validă. Executarea unui program începe cu
brat de deschidere ‘{‘ ș i se încheie cu ‘}’

Reguli pentru scrierea programului C:


toate afirmaț iile ar trebui să fie cu litere mici. literele mari sunt folosite doar pentru
constante simbolice.
Spaț iile goale pot fi inserate între două cuvinte. Nu se foloseș te atunci când se declară variabile.
cuvinte cheie, constante ș i funcț ii.
Declara ț iile programului pot scrie oriunde între cele două acolade care urmează
partea de declaraț ie
Utilizatorul poate, de asemenea, să scrie una sau mai multe afirma ț ii într-o singură linie, separându-le cu
punct ș i virgulă (;)

Exemplu

/* Pentru a tipări "Universitatea AMET" pe ecran */


#include<stdio.h>
funcț ia principală ( )

{
printf("Universitatea AMET");
}

2. Demonstra ț i declara ț ia, ini ț ializarea, alocarea de memorie a unui domeniu unidimensional
array cu sintaxă adecvată ș i exemplu.

Array:

Un tablou este un grup de elemente de date relaț ionate, care împărtăș esc un nume comun. Este setul de
date omogene.

Arie Unidimensională:

Acest tip de array este de asemenea numit array liniar ș i listă array. Aceste array-uri sunt de tip scară.
tip. În tabloul liniar se foloseș te un singur subscript. Acesta este scris fie în formă de rând, fie în formă de coloană.

Declaraț ie:

Sintaxă: Tip_de_date nume_array [dimensiune];

Exemplu: int n [10];

Iniț ializare:

Sintaxă:Tip_de_date nume_array [dimensiune] = {lista de valori};

Exemplu:int n [10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

Alocarea memoriei
Întotdeauna, locaț iile de memorie contigue (sau) secvenț ei sunt utilizate pentru a stoca elementele tabloului în
memorie. Array-urile au 0 ca primul indice, nu 1. În acest exemplu, n[0] Dacă dimensiunea unui array este n,
pentru a accesa ultimul element, se foloseș te indexul (n - 1). În acest exemplu, n [9]

0 1 2 3 4 5 6 7 8 9
n 1 2 3 4 5 6 7 8 9 10

Exemplu:

#include <stdio.h>
void main ( )
{
int i;
float n [10], sum = 0.0, avg;
printf ("Introdu numărul de elemente: "); Introduceț i numărul de elemente:
pentru (i = 0; i < 10; i++) 1 2 3 4 5 6 7 8 9 10
{ Sum = 55, Average = 5.5
scanf ("%f", &n [i]);
sumă += n [i];
}
avg = suma / n;
printf ("Sumă = %f, Medie = %f ", sum, avg);
}

1. Examinează apelul prin valoare ș i apelul prin referinț ă cu un exemplu adecvat. (SAU) Diferenț iază
apel prin valoare ș i apel prin referinț ă cu un program exemplu. (SAU) Cu un exemplu potrivit
ilustrează tehnicile "apel prin valoare ș i apel prin referinț ă" pentru transmiterea parametrilor. (SAU)
Discuss and differentiate pass by value and pass by reference.

APEL PRIN VALOARE:

Când valoarea este transmisă direct funcț iei, se numeș te apel prin valoare. În apelul prin valoare
doar o copie a variabilei este trecută, astfel încât orice modificări aduse variabilei nu se reflectă
în funcț ia apelantă.

Exemplu:

#include <stdio.h>
#include <conio.h>
schimbă (int, int);

void main ( )
{
int x, y;
printf ("Introdu două numere:");
scanf ("%d %d", &x, &y);
printf ("Inainte de schimbare : x = %d, y = %d", x, y);
schimbă (x, y);
printf ("După schimbare :x = %d, y = %d", a, b);
getch ( );
}
intercambia (int a, int b)
{
Introduceț i două numere: 12 34
int t;
Înainte de schimbare: x = 12, y = 34
t = a;
După schimbare: x = 34, y = 12
a = b;
b = t;
}

APEL PRIN REFERINȚĂ:

Când adresa valorii este trecută funcț iei, se numeș te apel prin referinț ă.
apel prin referinț ă deoarece adresa valorii este transmisă, orice modificări efectuate asupra valorii se reflectă
în funcț ia apelantă.

Exemplu:

#include <stdio.h>
#include <conio.h>
schimb (int *, int *);
void main ( )
{
int x, y;
printf ("Introduceț i două numere:");
scanf ("%d %d", &x, &y);
printf ("Înainte de schimbare : x = %d, y = %d", x, y);
schimbă (&x, &y);
printf ("După schimbare :x = %d, y = %d", a, b);
getch ( );
}
schimb (int *a, int *b)
{ Introduceț i două numere: 12 34
int t;
Before swapping: x = 12, y = 34
După schimbare: x = 34, y = 12
t = *a;
*a = *b;
*b = t;
}

Clase de stocare:

O clasă de stocare definește domeniul (vizibilitatea) și durata de viață a variabilelor și/sau funcțiilor
într-un program C. Ele preced tipul pe care îl modifică. Avem patru diferite
clase de stocare într-un program C -

auto
înregistrare
static
extern

Clasa de stocare auto


Clasa theautostorage este clasa de stocare implicită pentru toate variabilele locale.

{
intmount;
auto intmonth;
}
Exemplul de mai sus definește două variabile în aceeași clasă de stocare. 'auto' poate
numai să fie folosite în cadrul funcțiilor, adică, variabile locale.

Clasa de stocare registru


Clasa registerstorage este utilizată pentru a defini variabile locale care ar trebui să fie stocate într-un
înregistrare în loc de RAM. Aceasta înseamnă că variabila are o dimensiune maximă egală cu
dimensiunea registrului (de obicei un cuvânt) și nu poate avea operatorul unar '&' aplicat asupra sa (deoarece
nu are o locație de memorie).
{
înregistrează int mile;
}
Registrul ar trebui să fie folosit doar pentru variabile care necesită acces rapid, cum ar fi
contorizatoare. De asemenea, trebuie menționat că definirea 'registrului' nu înseamnă că variabila
va fi stocat într-un registru. Asta înseamnă că ar PUTEA fi stocat într-un registru în funcție de
restricții de hardware și implementare.
Clasa de stocare statică
Clasa de stocare statică instruiește compilatorul să mențină o variabilă locală în existență
în timpul vieții programului, în loc să-l creezi și să-l distrugi de fiecare dată când
intră și iese din domeniu. Prin urmare, făcând variabilele locale statice, le permite
pentru a-și menține valorile între apelurile de funcție.
Modificatorul static poate fi, de asemenea, aplicat variabilelor globale. Când acest lucru se întâmplă, el
cauzează ca domeniul de valabilitate al variabilei să fie restricționat la fișierul în care este declarată.

În programarea C, când static este folosit pe o variabilă globală, aceasta cauzează să existe o singură copie de
acel membru să fie partajat de toate obiectele clasei sale.
Demonstrație live

#include<stdio.h>

void test(); //Declaraț ia funcț iei (discutată în următoarea temă)

int main()
{
test();
test();
test();
}

void test()
{
static int a = 0; //o variabilă statică
a = a + 1;
printf("%d\t", a);
}}

Când codul de mai sus este compilat și executat, produce următorul rezultat −
1 2 3

Clasa de stocare externă


Clasa externstorage este utilizată pentru a oferi o referinț ă a unei variabile globale care este vizibilă
la TOATE fișierele programului. Când folosești 'extern', variabila nu poate fi inițializată
cu toate acestea, indică numele variabilei către o locație de stocare care a fost anterior
definit
Când ai mai multe fișiere și definești o variabilă sau o funcție globală, care va
de asemenea, poate fi utilizat în alte fișiere, apoi extern va fi folosit într-un alt fișier pentru a oferi
referința unei variabile sau funcții definite. Doar pentru înțelegere, extern este folosit pentru
declară o variabilă globală sau o funcție într-un alt fișier.
Modificatorul extern este cel mai frecvent folosit atunci când există două sau mai multe fișiere care se împărtășesc
aceleași variabile globale sau funcții, așa cum sunt explicate mai jos.

Primul fiș ier: main.c

#include<stdio.h>

intcount;
extern void write_extern();

main() {
count=5;
scrie_extern();
}
Al doilea fiș ier: support.c

#include<stdio.h>

extern intcount;

voidwrite_extern(void) {
printf("numărul este %d\n", număr);
}

S-ar putea să vă placă și