Note Focp
Note Focp
(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.
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
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ă.
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
Exemplu
{
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:
Iniț ializare:
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.
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;
}
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
{
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.
Î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>
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
#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);
}