Sunteți pe pagina 1din 124

lOMoARcPSD|11547612

Masm (Macro Assembler) curs de prof. Carmen Timofte.


Medii de dezvoltare: MASM, TASM (Turbo Assembler), TASM
pe 64b
Bazele tehnologiei informației Information Technology Basics (Academia de Studii
Economice din București)

StuDocu is not sponsored or endorsed by any college or university


Downloaded by Popescu Diana (dianapopescu198@yahoo.com)
lOMoARcPSD|11547612

MASM (Macro Assembler)


Conf. Dr. Carmen Timofte

1. Structura fişierelor .exe şi .com


2. Etapele de dezvoltare a programelor in MASM
3. Arhitectura microprocesorului 8086 – registrii microprocesorului
4. Modurile de adresare ale datelor
5. Elemente de bază ale limbajului de asamblare
6. Exemple de programe în MASM
7. Bibliografie

1. Structura fişierelor .exe şi .com

MS-DOS poate să încarce şi să execute 2 tipuri de programe:


- .EXE – conţin un antet cu informaţii folosite de încărcătorul de sistem pentru a executa
ajustările la referinţele de segment (relocări în momentul încărcării); au o dimensiune mai
mare de 64 KB; au o structură multisegment (stivă, date, cod)
- .COM – conţin imaginea binară a datelor şi codului unui program; au o dimensiune mai
mică de 64 KB; nu se fac relocări ale adreselor de segment; au un singur segment, care
include date şi cod; se încarcă mai repede în memorie.

Fişierele .EXE au structura:


- segment de stivă ฀ memorează datele care trebuie salvate şi reapelate apoi de program;
poate apărea în orice ordine faţă de celelalte segmente;
- segment de date ฀ conţine variabilele referite de segmentul de cod; trebuie să fie plasat
înaintea lui;
- segment de cod ฀ conţine instrucţiunile executabile, începând cu o etichetă care identifică
punctul de intrare în program

Terminarea execuţiei unui program .EXE se realizează cu INT 21H, iar registrul AX încărcat
cu funcţia 4C00H.

2. Etapele de dezvoltare a programelor în MASM

Medii de dezvoltare: MASM, TASM (Turbo Assembler), TASM pe 64b . Se lucrează cu


oricare dintre ele!

Exemplificare pentru MASM:


- Editarea programelor ฀ se realizează cu orice editor ASCII. Programul sursă se va salva
cu extensia specifică limbajului utilizat;
exp: numefis.asm;

- Translatarea programului sursă în limbaj binar ฀ se detecteazăeventualele erori de


sintaxă, semantică; translatoarele sunt de 2 feluri: asambloare (specifice fiecărui sistem de
calcul) şi compilatoare. Dacă în urma translatării apar erori, se reia de etapa de editare, iar
dacă nu sunt erori, se obţine un program obiect (numefis.obiect)
Se realizează cu programul MASM.EXE, astfel:
MASM <enter>
Numele_programului.asm= numefis.asm
Numele_programului_obiect.obiect= <enter> şi preia numele de sus, sau se introduce un nume nou

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Numele_programului_listing.lst= <enter> sau alt nume ; acest fişier este destinat listării

- Editarea de legături ฀ (link editare) permite efectuarea de legături între mai multe
module obiect. Are ca rezultat un fişier cu extensia .exe. Se realizează cu programul
LINK.EXE, asftel:
LINK <enter>
Numele_fişierului_obiect= numefis.obiect
Numele_fişierului_executabil=<enter> sau se introduce un nume nou.

- Încărcarea în memoria internă şi execuţia efectivă – se urmăreşte vizualizarea codului


executabil al programului, rulat cu TRACE (pas cu pas)(ALT + T). Se realizează cu
programul CV.EXE (Code View), asftel:
cv numefis.exe
şi se deschide o fereastră care arată instrucţiunile şi adresele lor, conţinutul regiştrilor
microprocesorului şi flag-urile (F2).

Pentru a vizualiza zona de memorie în care se află rezultatele se foloseşte comanda din SO
Windows 9x/2000/NT, numită DEBUG:
debug numefis.exe
-? (permite aflarea tuturor subcomenzilor din mediul debug)
- t (rulare Trace)
- d DS:0000 (Dump de memorie pentru segmentul de date DS; adresa lui DS se vede la
comanda t; DATELE IN MEMORIE SUNT REPREZENTATE INVERS DECAT IN REGISTRII
MICROPROCESORULUI !!!)
- q (quit)

3. Arhitectura microprocesorului 8086 – registrii microprocesorului

Dispune de 13 registrii, astfel:


- 8 reg. generali, astfel:
- 4 reg. de date:
AX ฀ acumulator (pentru instrucţiuni aritmetice)
BX ฀ de bază
CX – contor
DX ฀ de date, pentru operaţii de *, /;
Exp. de registru pe16 biţi
AX: 15 AH 8 7 AL 0 AX are 2B = 1 word (cuvânt)
AH= A HIGHT
AL= A LOW
- 4 reg. de pointer şi indecşi:
SP ฀ Stack Pointer ฀ memorează adresacurentă a vârfului stivei
BP – Base Pointer- păstrează adresa din interiorul stivei, folosit la
citirea unui cuvânt din stivă, fără a-l extrage
SI ฀ Source Index ฀ păstrează valoareaindexului necesară adresării
unui şir de caractere;
DI – Destination Index – idem;

- 4 reg. de segment
CS ฀ Code Segment ฀ destinat adresării segm.de instrucţiuni curente
DS – Data Segment - destinat adresării segm. de date
ES – Extended Segment - destinat adresării segm. extins de date
SS – Stack Segment - destinat adresării stivei curente a programului

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

- 1 reg. pentru memorarea adresei următoarei instrucţiuni din segmentul curent IP


(Instruction Pointer)

Indicatorii de condiţie:
- indicatori de stare – de tip Read-Only; sunt poziţionaţi de instrucţiunile aritmetico-logice
şi nu pot fi decât citiţi de programatori:
AF (Auxilliary Flag) ฀ are valoarea 1 dacă apare transport între rangurile 3 şi 4;
CF (Carry Flag) – are valoarea 1 dacă apare transport pe poziţia cea mai
semnificativă;
OF (Overflow Flag) ฀ are valoarea 1 dacă apare depăşire;
SF (Signe Flag) ฀ are valoarea 1 dacă bitul de pe poziţia cea mai semnificativă este 1;
PF (Parity Flag) – are valoarea 1 dacă numărul biţilor din byte-ul cel mai puţin
semnificativ este par;
ZF (Zero Flag) – are valoarea 1 dacă rezultatul operaţiei anterioare a fost 0.

- indicatori de control – de tip Read-Write; sunt fixaţi de utilizator:


DF (Direction Flag) ฀ are valoarea 1 dacă şirul de caractere este parcurs crescător;
IF (Interrupt Flag) – are valoarea 1 dacă se consideră întreruperile externe;
TF (Trace Flag) – are valoarea 1 dacă programul se execută pas cu pas.

4. Modurile de adresare ale datelor

Reprezintă maniera în care datele sunt memorare şi accesate din memoria interna a
microprocesorului.

Există 8 moduri de adresare:

1- adresare imediată – operandul se găseşte într-un un cuvânt (word) imediat după codul
instrucţiunii
ex: MOV AX, 15
muta valoarea 15 in registrul acumulator AX;

2- adresare utilizând registre generale – valoarea operandului se găseşte într-un registru


general
ex: MOV AX, BX
mută conţinutul registrului BX în registrul AX;

3- adresare directă – valoarea operandului se găseşte la adresa specificată în instrucţiune


ex: MOV AX, LUCRU
muta conţinutul variabilei LUCRU în AX;

4- adresare indirectă – valoarea operandului se găseşte în locaţîa definită la adresa adresei


aflată în instrucţiune
ex: MOV AX, [BX]
în BX se află o adresă; la adresa specificată în BX se găseşte o altă adresă; la a II-a
adresă se găseşte operandul care va fi mutat în AX;

5- adresare cu registre de bază -


ex: MOV AX, [BX] val (pt. <DS:BX>)

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

MOV AX, [BP] val (pt. <SS:BP>)


se utilizează pentru şiruri de date;
adresa relativă= valoarea din registrul de bază + val;

6- adresare cu registre de index - adresa relativă= valoarea din registrul de index + val;
ex: MOV AX, [SI] val (pt. <DS:SI>)
MOV AX, [DI] val (pt. <DS:DI>)
se utilizează pentru tratare şiruri de date;

7- adresare cu registre de bază şi registre de index-


ex: MOV AX, [BX] [SI]
adresa relativă= valoarea din registrul de bază + valoarea din registrul de index;

8- adresare cu registre de bază, registre de index şi offset -


ex: MOV AX, [BX] [SI]val
MOV AX, [BP] [SI]val
MOV AX, [BX] [SI]val
MOV AX, [BP][DI]val
adresa relativă= valoarea din registrul de bază + valoarea din registrul de index
+val;

5. Elemente de bază ale limbajului de asamblare

 Un program în MASM se compune din mai multe segmente:


- segment de stivă;
- segment de date;
- segment de cod.

 Un program poate să înceapă cu directiva NAME, care atribuie un nume programului.

 Fiecare segment începe cu directiva SEGMENT şi se termină cu directiva ENDS.


Exp:
nume SEGMENT ……
………
nume ENDS

 Programul se termină cu directiva END.

 O directivă obligatorie este directiva


ASSUME reg_segm: nume_segm
care defineşte registrii de segment (CS, DS, ES, SS) folosiţi de fiecare segment în parte.

 Directiva SEGMENT marchează începutul segmentului. Sintaxă:


nume SEGMENT tip_aliniere, tip_combinare, clasă
unde:
tip_aliniere – reprezintă multiplul adresei de segment; poate lua valorile:
.BYTE - multiplu de 1;
.WORD - multiplu de 2;
.PARA - multiplu de 16;
.PAGE - multiplu de 256.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

tip_combinare ฀ reprezintă adresa cerută de link-editor pt. a încarca în memorie


diferite module; poate lua valorile:
PUBLIC – 2 segm. cu acelaşi nume din 2 module diferite vor fi încărcate în
memorie prin acoperire parţială;
COMMON- idem, dar se vor suprapune total;
AT <expr.>- idem, dar se vor încărca la adresa specificată în expresie;
STACK – idem, dar se vor încărca în segmentul de stivă;
MEMORY - idem, dar se vor încărca în orice locaţie liberă din memorie;
blank – se vor crea segmente separate de tip PRIVATE.

clasă ฀ reprezintă un şir de caractere între ฀ ‘ ; segmentele care au această clasă


sunt încărcate in memorie în locaţii contigue, apropiate.

 VARIABILELE – sunt elemente de date definite prin:


- tip – poate fi:
DB – (Define Byte) date de lungine 1B;
DW – date de lungime 2 B (1 Word);
DD - ------,,------------ 4 B (2 W);
DQ- -------;;----------- 8 B (4 W);
DT - -------;;---------- 10 B.
- segement – poate fi: CS, DS, SS, ES
- offset ฀ valoare întreagă fărăsemn care reprezintă distanţa faţă de baza segmentului;

 CONSTANTELE – sunt de 2 tipuri:


- de tip şir – succesiune de caractere ASCII cuprinse între ‘ ‘ sau “ “ ;
- de tip numeric – pot fi :
-binare (B)
-octalw (Q)
-zecimale (D)
-hexazecimale (H)
-virgulă mobilă (L, E)

 OPERATORI
1. Aritmetici :
- unari: - (negare)
- binari: *, /, MOD, +, -, SHL (shift left), SHR (shift right)
Exp.: MOV AX, 100H/7 (operanzii trebuie să fie valori absolute)
MOV AX, 1010000B SHR 3 (mută în AX 1010B)

2. Relaţionali : LE (left equal), LT (left than), EQ (equal), GT (great than), GE (great


equal), NE (not equal)

3. Logici : .AND., .OR., .XOR., .NOT.

4. Analitici : SEG, OFFSET, TYPE, LENGTH, SIZE, .TYPE


- returnează informaţii despre expresiile specificate; expresiile pot fi variabile,
adrese, etichete, constante;
SEG - returnează conţinutul registrului de segment ataşat variabilei sau etichetei
specificate
Sintaxă: SEG var/etichetă

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Exp: MOV AX, SEG var1 - mută în reg. AX, conţinutul registrului de segment
din care face parte var1

OFFSET ฀ returnează deplasarea variabilei sau etichetei specificate faţă de


începutul segmentul în care a fost definit
Sintaxă: OFFSET var/etichetă

TYPE -
Sintaxă: TYPE var ฀ returnează lungimea în bytes a tipului de dată corespunzător
variabilei specificate; dacă este de tip byte, returnează 1, Word, 2 etc.
Exp: var1 DW 100
..................
MOV AX, TYPE var1 - mută în AX valoarea 2
Sintaxă: TYPE etichetă – returnează distanţa asociată etichetei specificate; poate
lua valorile NEAR sau FAR.

LENGHT var ฀ returnează nr. de apariţii al tipului de variabilă; se utilizează


pentru variabile de tip vector, când returnează numărul de elemente al vectorului.
Exp: var1 DW 100
..................
MOV AX, LENGHT var1 - mută în AX valoarea 1

SIZE var ฀ returnează lungimea în bytes a variabilei specificate;


SIZE=TYPE*LENGHT;
Exp: var1 DW 100
..................
MOV AX, SIZE var1 - mută în AX valoarea 2

5. Sintetici : PTR, THIS, SHORT, HIGH, LOW, OVERWRITE


Permit modificarea atributelor unei expresii, care poate fi: variabilă, etichetă,
adresă, constantă.

PTR ฀ modifică temporar atributul corespunzător expresiei specificate;


Sintaxă: atribut PTR expresie
Atributele pot fi:
- de distanţă: NEAR, FAR;
- în funcţie de tipul expresiilor: BYTE, WORD, DWORD, QWORD, TBYTE,
STRUC.
Exp: var1 DW 100
..................
MOV AH, var1 - incorect
MOV AH, BYTE PTR var1 - var1 va fi considerată ca o zonă de 1B, în
cadrul acestei instrucţiuni; are caracter temporar;

THIS ฀ defineşte o adresă de memorie, fără a o rezerva;


Sintaxă: THIS var/etichetă

SHORT etichetă ฀ efectuează un salt prin intermediul instrucţiunii JUMP în


interiorul a 127B
Exp: JMP SHORT et1

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

HIGH var / LOW var – extrag dintr-un cuvânt, byte-ul cel mai semnificativ,
respectiv cel mai puţin semnificativ
Exp: var1 DW 100
..................
MOV AH, HIGH var1 - mută în AH p.c.m.s. din var1
MOV AL, LOW var1 - mută în AL p.c.m.p.s. din var1

6. Tratare înregistrări: SHIFT COUNT, WIDTH, MASK

 DIRECTIVE
1. Directive condiţionale
2. Directive pentru erorile condiţionale
3. Directive pentru declararea şi alocarea datelor: ASSUME, GROUP, INCLUDE,
EQU, ORG, =, EVEN, DB, DW, DD, DQ, DT, DUP, RADIX, RECORD,
STRUC, PROC, LABEL
4. Directive pentru controlul listării şi a fişierelor de listare: PAGE, .TITLE, .LIST,
.CREF, XCREF
5. Directive pentru declararea macroinstrucţiunilor sau macrodefiniţilor
6. Directive pentru controlul modului de lucru
7. Directive pentru încarcarea segmentului

EQU ฀ asociază simbolul cu expresia specificată


Sintaxă: simbol EQU expresie
Exp: A EQU 50 - în loc de constanta 50 se foloseşte simbolul A

ORG expr ฀ şterge conţinutul registrului locaţiei curente IP şi îl înlocuieşte cu


valoarea rezultată din evaluarea expresiei; dacă apare $, se calculează de la valoarea
curentă a IP;
Exp: ORG 7 - IP ia valoarea 7
ORG 7+2 – IP ia valoarea 9
ORG $+2 - IP=IP+2

EVEN ฀ nu are parametrii şi are ca efect forţarea unei adrese pare pentru
instrucţiunea următoare.

.RADIX expresie ฀ modifică asumţia implicită a calculatorului; expresia poate fi 2, 8,


16
Exp: MOV AX, 55 - mută 55 în baza 10 în AX
.RADIX 8 - modifică baza implică de lucru din 10 în 8
MOV AX, 55 – muta 55 (baza 8) în AX

Directive pentru alocarea şi iniţializarea datelor


nume_var {DB/ DW/ DD/ DQ/ DT} [expresie]
฀ alocă o zonă de memorie cu lungimea de 1B sau 2B ,.... sau 10B şi eventual
iniţializarea ei cu o valoarea rezultată din evaluarea expresiei.
- dacă apar mai multe constante separate prin virgulă, se rezervă o zonă de memorie
multiplă;

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Exp: var1 DB 5,7,3 ฀ se declară 3 zone de memorie, fiecare de 1 B, iniţializate cu


valorile 5, 7, 3.
- dacă apare semnul ?, zona de memorie va fi neiniţializată, ci doar rezervată;
Exp: var1 DW ?
-valorile de sus pot fi mixate
Exp: var1 DW 3,2,?, 5,7

DUP ฀ semnifică declararea unui vector de date, cu numărul de elemente


specificat,iniţializat sau nu;
Sintaxă:
nume_var {DB/ DW/ DD/ DQ/ DT} numar DUP (expresie)
Exp: vect DW 100 DUP (5,7) - alocă o zonă de memorie unui vector de 100 de
elemente, fiecare de 1W, iniţializat asftel: primul element 5,al doilea 7, al treilea 5 etc.
Câmpul expresie poate fi şi un şir de caractere ASCII, cuprinse între apostrofuri.
Exp: sir DB ’ LIMBAJE’ – se rezervă 7B, iniţializaţi cu caracterele L, I, ..., E.

 INSTRUCŢIUNI PT. EXEC. OPERAŢII


ADD destin, sursă
adună sursa (registru, zonă de memorie, constantă) la destinaţia (AX, zonă de
memorie, registru), punând rezultatul în destinaţie.

SUB destin, sursă


scade sursa din destinaţie, punând rezultatul în destinaţie

DIV sursă
Execută împărţirea dintre:
Deîmpărţit : Împărţitor = Cât Rest
Pe byte AL : Sursă = AL AH
Pe word AX : Sursa = AX DX

MUL destin
Execută înmulţirea dintre:
p.c.m.s. p.c.m.p.s.
Pe byte AH * Sursă = AH AL
Pe word AX * Sursa = DX AX

CMP destin, sursă


Realizează operaţia de scădere (comparare) între sursă şi destinaţie, punând indicatorii
de condiţie în funcţie de rezultat; sursa şi destinaţia rămân nemodificate.

CMPS şir_destin, şir_sursă - compară şirurile; se utilizează regiştrii SI, DI.

 INSTRUCŢIUNI DE SALT
JE etichetă - (Jump =) salt la etichetă dacă cei 2 operanzi implicaţi în
operaţia de comparare anterioară sunt egali)
JL etichetă - Jump Less
JG etichetă - Jump Great
JMP etichetă
INC destinaţie
DEC destinaţie

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

 INSTRUCŢIUNI PT. APEL INTRERUPERI (interne – software/ externe – hardware)


INT tip_întrerupere - un nr. întreg între [0, 255]
IRET - reconstituie contextul iniţial al programului
INTO - în caz de depăşire (Interrupt Overflow)

 INSTRUCŢIUNI PT. INCARCARE DE ADRESE


LEA dest, sursă - Load Effective Addresse
LDS -----,,------ - Load Data Segment
LES -----,,----- - Load Extended Segment
PUSH sursă - depune în stivă (SP=SP+2)
POP destin - extrage din stivă (SP=SP – 2)
MOV destin, sursă - mută sursa în destinaţie

 INSTRUCŢIUNI PT. MUTARE DE ŞIRURI


MOVS dest, sursa - pt. adresarea sirurilor sursă/destinaţie se
folosesc reg. SI/ DI
MOVSB ------;;------ - se mută 1 B
MOVSW ------;;------ - se mută 1 W
LODS - idem MOVS
LODSB - idem MOVSB
LODSW - idem MOVSW

 INSTRUCŢIUNI DE CICLARE
LOOP etichetă - decrementează cu 1 registrul CX; dacă valoarea lui CX<>0, atunci
se execută salt la eticheta specificată

6. Exemple de programe în MASM

Să se calculeze expresia E= a+b-c, unde a,b,c sunt numere generate în memorie la nivel de
byte.
Vom folosi SI pe a fi contor de adrese, offset – pentru deplasare în cadrul şirului de
date.

segm_stiva SEGMENT
stiva DB 128 DUP (?)
segm_stiva ENDS

segm_date SEGMENT
sir_date DB 7,23,13, ?
segm_date ENDS

segm_cod SEGMENT
ASSUME CS:segm_cod, DS:segm_date, SS:segm_stiva
et: MOV AX, segm_date
MOV DS, AX

MOV SI, offset sir_date


MOV AL, [SI]
ADD AL, [SI+1]
SUB AL, [SI+2]
MOV [SI+3], AL

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

MOV AX, 4C00H


INT 21H
segm_cod ENDS
END et

Exemple de programe

7. Bibliografie

- G. Muscă, „ Programarea în limbaj de asamblare” , Ed. Teora, 1997 (1999);


- Floarea Năstase, „ Sisteme de calcul şi operare – elemente ale limbajului de asamblare” ,
ASE, Bucureşti, 1997;
- Dan Somnea, Teodor Vlăduţ, „ Programarea în ASSEMBLER฀ , Ed. Tehnică, 1992;
- Irina Athanasiu, Alexandru Pănoiu, „ Microprocesoarele 8086, 286, 386- Programarea în
limbaj de asamblare” , Ed. Teora, 1992;
- Vlad Căprăriu, „ Sistemul de operare DOS ฀ Funcţii sistem฀ , Microinformatica, Cluj-
Napoca, 1991.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

468563095-BTI-pdf - Note de curs 1-14

Bazele tehnologiei informației Information Technology Basics (Academia de Studii


Economice din București)

StuDocu is not sponsored or endorsed by any college or university


Downloaded by Popescu Diana (dianapopescu198@yahoo.com)
lOMoARcPSD|11547612

Subiectul 1. Modelul de procesare secvential si taxonomia lui Flynn

Taxonomia lui Flynn este o clasificare a arhitecturilor sistemelor de calcul, propusă de


Michael J. Flynn în 1966. Cele patru clasificări definite de Flynn au la bază numărul de fluxuri
de instrucţiuni şi de date concurente disponibile în arhitectură.
1.SISD: Flux de instrucţiuni singular, flux de date singular (SISD) - un computer
secvenţial care nu foloseşte paralelismul nici în fluxul de date, nici în fluxul de instrucţiuni. Aici
se încadrează microprocesoarele clasice cu arhitectură von Neumann pe 8, 16, 32 şi 64 de biţi cu
funcţionare ciclică - preluare instrucţiune, execuţie instrucţiune (rezultă prelucrarea datelor)
ş.a.m.d. Ex. IBM 370, DEC VAX, SUN, IBM PC, MacIntosh.
2. MISD: Multiple Instruction (Stream), Single Data (Stream): Fluxuri de instrucţiuni
multiple, flux de date singular (MISD)- neobişnuit datorită faptului că fluxurile de instrucţiuni
multiple au nevoie, de obicei, de fluxuri multiple de date pentru a fi eficient. Acestea sunt
sistemele care folosesc microprocesoare pipeline (conductă), metodă folosită de către
procesoarele recente. La un astfel de microprocesor, de exemplu, în paralel se execută
instrucţiunea n, se decodifică instrucţiunea n+1 şi se aduce în memorie instrucţiunea n+2.
3. SIMD: Single Instruction (Stream), Multiple Data (Stream): Flux de instrucţiuni
singular, fluxuri de date multiple (SIMD)- un sistem de calcul care foloseşte fluxuri de date
multiple împreună cu un singur flux de instrucţiuni pentru a face operaţii care pot fi paralelizate.
Acestea sunt sisteme cu microprocesoare matriceale, la care operaţiile aritmetice se execută în
paralel pentru fiecare element al matricei, operaţia necesitând o sngură instrucţiune (se mai
numesc şi sisteme de procesare vectorială). Ex. CRAY-1, DAP CM-1, WARP, CM-2, ILLIAC
IV.
4. MIMD: Multiple Instruction (Stream), Multiple Data (Stream): Fluxuri multiple de
instrucţiuni, fluxuri multiple de date (MIMD)- multiple procesoare autonome care execută
diferite instrucţiuni asupra unor date diferite. Sistemele de calcul distribuite folosesc, de obicei,
arhitecturi MIMD exploatând fie un spaţiu de memorie partajat, fie un spaţiu de memorie
distribuit. Ex. Transputere, Supernode, DADO, N-cube, Ultracomputer, Butterfly, Alliant,
Sequent Balance, CRAY X-MP.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 2: Entropia. Formula lui Shannon. Exemplu de codificare.

Informaţia este un mesaj ce aduce o precizare într-o problemă ce comportă un anumit


grad de incertitudine. Deşi există o mare diversitate de informaţie, atât din punctul de vedere a
formei de prezentare, a conţinutului, a sursei care o generează cât şi a modului de recepţionare,
oamenii de ştiinţă şi-au pus problema măsurării ei cantitative. S-a constatat că informaţia şi
nedeterminarea sunt mărimi direct proporţionale.
Se consideră un experiment X în cadrul căruia se pot realiza un număr finit de n
evenimente elementare: x1, x2, x3, ..,xn. Probabilităţile de apariţie ale acestor evenimente le
vom nota cu p1, p2, p3, .., pn (pi = numărul cazurilor favorabile evenimentului x i/numărul
cazurilor egal posibile ale experimentului). Se presupune că sistemul de evenimente este un
sistem complet:
pi ≥ 0, ∀ i = 1,n
Σ pi = 1
Experimentul pune în evidenţă un anumit câmp de probabilitate {X, x, p(x)} şi o anumită
repartiţie:
X = x1 x2 . . . xn
p1 p2 . . . pn
Deoarece nu se cunoaşte apriori rezultatul experimentului X, înseamnă că acesta conţine
un anumit grad de nedeterminare. Putem afirma că:
- în urma realizării unui experiment se obţine informaţie dacă şi numai dacă rezultatul
experimentului înlătură o anumită nedeterminare;
- informaţia şi nedeterminarea sunt mărimi direct proporţionale;
- informaţia înlocuieşte nedeterminare.
Aceste particularităţi au condus la utilizarea aceleiaşi unităţi de măsură atât pentru
cantitatea de informaţie cât şi pentru nedeterminare. Nedeterminarea unui experiment depinde de
probabilităţile de realizare a evenimentelor. Dacă se notează cu H măsura gradului de
nedeterminare, pentru experimentul X, aceasta va fi o funcţie de probabilităţile evenimentelor:
H(X) = H(p1, p2, .…, pn).
În anul 1948, Claude E. Shannon a folosit pentru prima dată formula:
H(p1, p2, .…, pn) = -Σ pi*log2pi
Măsura nedeterminării, dată de această formulă, se numeşte, conform lui Claude
Shannon, entropia experimentului X sau entropia informaţională. În acest sens, unitatea de
măsură a informaţiei definită ca fiind cantitatea de informaţie obţinută prin precizarea unei
variante din două egal probabile se numeşte bit (binary digit).

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 3. Proprietăţile entropiei informaţionale

Principalele proprietăţi ale entropiei informaţionale sunt:


P1. Entropia informaţională, fiind măsura informaţiei, este o entitate nenegativă: H(p1,
p2, .…,pn)≥0.
P2. Dacă pentru un indice i∈{1, 2, .., n} avem pi =1, atunci entropia informaţională este
nulă: H(p1,p2, .…,pn) = 0.
P3. Entropia unui sistem de evenimente este maximă când evenimentele au aceeaşi
probabilitate de apariţie: H(p1,p2, .…,pn) ≤ H(1/n,1/n,…,1/n).
P4. Evenimentele imposibile nu modifică valoarea entropiei informaţionale a unui
sistem: H(p1,p2, .…,pn,0) = H(p1,p2, .…,pn).
P5. Entropia produsului mai multor surse independente de informaţie este egală cu suma
entropiilor fiecărei surse luate separat: H(X1*X2*…Xn) = H(X1)+H(X2)+...+H(Xn). Produsul
mai multor surse de informaţie reprezintă un experiment compus care constă din realizarea
simultană a câte unui eveniment corespunzător fiecărei surse.
P6. Entropia produsului a două surse oarecare X şi Y de informaţie este: H(X*Y) = H(X)
+H(Y/X). H(Y/X) reprezintă cantitatea medie de informaţie ce se obţine în urma realizării
experimentului Y, condiţionat de experimentul X: H(Y/X) = Σp(xk)*H(Y/xk), unde p(xk) =
probabilitatea realizării evenimentului xk ∈ X; H(Y/xk) = entropia experimentului Y,
condiţionată de evenimentul xk ∈ X.
H(Y/xk) = -Σ p(yi/xk)*log2 p(yi/xk)
iar p(yi/xk) este probabilitatea realizării evenimentului elementar yi ∈ Y ( i = 1,m) când s-a
realizat evenimentul xk ∈ X (k = 1,n).
Dacă X şi Y sunt experimente oarecare sunt respectate proprietăţile:
P7. H(Y/X)≤H(Y)
P8. H(X*Y)≤H(X)+H(Y)
P9. H(X/Y)=H(Y/X)+H(X)-H(Y).

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 4. Sisteme de numeraţie. Reprezentarea numerelor întregi şi


fracţionare într-o bază oarecare.

Un număr reprezintă informaţia a cărei semnificaţie este universal stabilită şi ale cărei
prelucrări au la bază aritmetica. Numerele sunt incluse într-o clasă de codificare particulară, în
care proprietăţile abstracte ale aritmeticii sunt translatate în mecanismele concrete de calcul
asupra codurilor.
Sistemul de numeraţie este format din totalitatea regulilor de reprezentare a numerelor cu
ajutorul unor simboluri numite cifre. Numărul de simboluri permise pentru reprezentarea cifrei
este numit baza sau rădăcina sistemului de numeraţie.
Sistemele de numeraţie pot fi:
- poziţionale (sistemele: zecimal, binar, octal);
- nepoziţional (sistemul roman).
Simbolurile folosite în cadrul sistemului de numeraţie roman şi valorile zecimale
corespunzătoare acestor simboluri:
IXCMVLD
1 10 100 1000 5 50 500
În studiul arhitecturii calculatoarelor ne interesează în mod deosebit
- reprezentarea binară (baza=2);
- reprezentarea octală (baza=8);
- reprezentarea zecimală (baza=10);
- reprezentarea hexazecimală (b=16).

Sistem de numeraţie Baza (b) Cifrele


Binar 2 (0,1)
Octal 8 (0,1,2,3,4,5,6,7)
Zecimal 10 (0,1,2,3,4,5,6,7,8,9)
Hexazecimal 16 (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F)

Fiind dat un număr întreg N, se numeşte reprezentare în baza b, orice succesiune de cifre
an,an-1,...,a0 care satisface următoarele proprietăţi:
- cifrele lui sunt numere naturale cu proprietatea : 0 ≤ ai ≤ b-1 (i=0÷n)
- există egalitatea: N = anbn + an-1bn-1 + ….+ a0b0
Când succesiunea de cifre are proprietăţile enumerate, prin definiţie, se poate scrie:
N = anan-1 ….a0 sau (N)b = anan-1 ….a0
Un număr întreg admite o reprezentare unică în baza b. Fiind dat un număr real R, se
numeşte reprezentare în baza b, orice succesiune de cifre an,an-1,...,a0,a-1, a-2,...,a-m ce îndeplineşte
proprietăţile:
- cifrele ai sunt numere naturale cu proprietatea : 0 ≤ ai ≤ b-1 (i = −m,n)
- nu există un rang k astfel încât să avem: ak = ak-1 = ak-2 = … = b-1
- există egalitatea: R = anbn + an-1bn-1 + ….+ a0b0 + a-1b-1 +….+ a-mb-m
În situaţia în care succesiunea de cifre are proprietăţile enumerate prin definiţie se scrie:
R = anan-1...a0a-1a-2...a-m, an este cifra cea mai semnificativă (CCMS) a numărului R, iar a-m este
cifra cea mai puţin semnificativă (CCMPS).

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 5. Conversia bazei de numeraţie

Fiind dat un număr reprezentat în sistemul de numeraţie cu baza b, calculul cifrelor


reprezentării în baza q, q>1 se numeşte conversia din baza b în baza q. Conversia numerelor dintr-
un sistem de numeraţie b în alt sistem de numeraţie cu baza q se efectuează examinând separat
partea întreagă şi partea fracţionară.
Fie (N)b=(NI)b + (NF)b, unde (NI)b - reprezintă partea întreagă a numărului (N)b iar (NF)b
reprezintă partea fracţionară.
Conversia numerelor întregi
În noua bază de numeraţie q, partea întreagă [(NI)b] se va scrie: (NI)b = anqn + an-1qn-1 +…+
a0q0, unde ai (i=0,n) sunt cifre ce aparţin sistemului de numeraţie în baza q. Conversia părţii întregi
(NI)b în baza q se va reduce la determinarea coeficienţilor ai (i=0,n), ce se obţin prin împărţirea
succesivă a lui (NI)b cu q, astfel:
(NI)b/q=(anqn-1+an-1qn-2+...+a1) + a0/q → a0
↓ ↓
(NI1)b-partea întreagă a câtului rest
…..
(NIk)b/q= anqn-k-1+an-1qn-k-2+…+ak+1+ak/q → ak

(NI(k+1))b
…….
(NIn)b/q= 0+an/q → an
Algoritmul se încheie când partea întreagă a câtului devine nulă. Cifra an reprezintă cifra cea
mai semnificativă iar a0 este cifra cea mai puţin semnificativă.
Conversia rapidă
În cazurile în care între cele două baze de numeraţie (implicate în conversie) există o relaţie
de genul: b1=b2p (b1 şi b2 sunt cele două baze, p este număr natural mai mare sau egal cu 2) atunci
conversia se poate realiza mai rapid.
Pentru a face conversia din baza b2 (baza mai mică) în baza b1, se împarte numărul
reprezentat în b1 în grupe de câte p cifre, de la dreapta la stânga pentru partea întreagă şi de la
stânga la dreapta pentru partea fracţionară. Dacă ultimul grup de cifre nu are exact p cifre, se
completează cu zerouri pentru a se obţine un grup de p cifre. Pentru a face conversia din baza b1
(baza mai mare) în baza b2, pentru fiecare cifră a numărului din baza b1 se asociază un grup de p
cifre în baza b2, obţinându-se astfel numărul în noua bază b2.
Conversia numerelor fracţionare
Partea fracţionară se poate scrie: (NF)b=a-1q-1 + a-2q-2 + a-3q-3 + ... , unde: a-j reprezintă cifre
aparţinând sistemului de numeraţie q. Conversia părţii fracţionare se va reduce la determinarea
coeficienţilor a-k (k=1,2,...) prin înmulţiri succesive:
(NF)b*q=a-1+a-2q-1+a-3q-2 + ... → a-1

(NF1)b
(NF1)b*q=a-2+a-3q-1+a-4q-2+... → a-2

(NF2)b
unde: a-1 reprezintă cifra cea mai semnificativă a părţii fracţionare. Teoretic, algoritmul ar trebui să
se încheie când partea fracţionară devine egală cu zero, ceea ce se întâmplă într-un număr limitat de
cazuri. În practică, procedeul are un număr finit de paşi, în funcţie de precizia aleasă. De exemplu,
pentru a obţine o precizie bună, pentru fiecare cifră zecimală trebuie calculate 4 cifre binare (în
cazul conversiei din zecimal în binar).

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 6. Reprezentarea numerelor în virgula fixă

1. Reprezentarea prin mărime şi semn (Cod direct - CD): Un număr reprezentat prin
mărime şi semn se poate scrie conform relaţiei: N = an*2n + Σ ai*2i (i=-m,n-1)
an = 0, daca N≥0
1, daca N<0
an este bit de semn, iar ai ∈ {0,1} pentru i =−m,n − 1 şi au fost obţinute în urma
conversiei numărului (N) în sistemul de numeraţie binar. Macheta de reprezentare a numărului N
este:

Observaţie. S-a considerat că partea întreagă se reprezintă prin n cifre binare, iar partea
fracţionară prin m cifre binare:
- dacă n = 0 → se obţine reprezentarea numerelor subunitare;
- dacă m = 0 → se obţine reprezentarea numerelor întregi.
2. Reprezentarea prin complement faţă de 1 ( cod invers - CI): Un număr reprezentat
în cod invers se poate scrie:
N = 0*2n+ Σ ai*2i (i=-m,n-1), daca N≥0
1*2n + Σ (1-aai)*2i (i=-m,n-1), daca N<0
unde ai reprezintă cifrele binare ale numărului |N|.
Observaţie: Reprezentarea prin complement faţă de 1 se obţine astfel:
1. Fie calculând: N = 2n+1-| N |CD - 2-m
2. Fie prin inversarea cifrelor binare (inclusiv cifra de semn) din reprezentarea în cod
direct a numărului în valoare absolută.
3. Reprezentarea prin complement faţă de 2 (cod complementar - CC): Forma de
scriere în cod complementar este:
N = 0*2n+ Σ aaiii*2i, pentru N≥0
1*2n + Σ aaiii*2i, pentru N<0, (i=-m,n-1), unde: Σ aaiii*2i = Σ (1-ai)*2i+2-m, iar ai reprezintă
cifrele binare ale numărulu |N|. Codul complementar al unui număr se poate obţine astfel:
1. Fie calculând: N = 2n+1-|N|CD
2. Fie adunând un 1 la CCMPS a reprezentării numărului în CI
3. Dacă se consideră reprezentarea în CD a numărului în valoare absolută, pentru
obţinerea codului complementar, începând de la CCMPS - se lasă neschimbate toate cifrele de
zero, inclusiv prima cifră binară a cărei valoare este 1; apoi toate celelalte cifre binare se vor
inversa, inclusiv cifra de semn.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 7: Operatii aritmetice în virgula fixa

1. Adunarea în cod direct (CD)


Se adună mărimile numerelor, fără cifra de semn şi se dă rezultatului semnul comun celor
două numere. Fie:
N1 = an*2n + Σ ai*2i, ai ∈ {0,1}
N2 = bn*2n + Σ bi*2i, bi ∈ {0,1}
N1+N2 = an*2n + Σ (ai+bi+ti)*2i, (i=-m,n-1)
Însumarea se face începând de la bitul cel mai puţin semnificativ al reprezentării numerelor,
ţinându-se cont de transportul de la rangul anterior (ti). Se consideră t-m=0, iar dacă va apare tn
(transport de la bitul CMS al mărimii) avem de-a face cu depăşire binară. Rezultatul operaţiei poate
fi corect când nu apare transport de la cifra cea mai semnificativă a mărimii rezultatului şi poate fi
incorect când apare transport.
2. Adunarea/scăderea în cod invers (CI)
a). Adunarea/scăderea numerelor cu acelaşi semn:
- Dacă ambele numere sunt pozitive, reprezentarea lor în cod invers este identică
reprezentării în cod direct.
- Daca numerele sunt negative, fie N1<0 şi N2<0 se noteaza prin |N1|CD, |N2|CD reprezentarea
în cod direct a valorilor absolute ale numerelor N1 şi N2.
N1 = 28-|N1|CD-20 N2 = 28 - |N2|CD-20
N1+N2 = 28+28-|N1|CD-|N2|CD-20-20
Avand în vedere că rezultatul trebuie să fie de forma:
N1+N2 = 28-(|N1|CD+|N2|CD)-20
apare necesar ca transportul de la cifra de semn să fie adunat la cifra cea mai puţin semnificativă:
N1+N2 = 28-(|N1|CD+|N2|CD)-20+28-20 ← Bitul CMPS
↓ ↓
rezultat transport de la cifra la semn
b). Adunarea/scăderea numerelor cu semne diferite:
Fie N1>0 şi N2<0. Reprezentarea lui N1 este aceeaşi în cod direct şi cod invers, iar N2 = 28-
|N2|CD-20. În urma operaţiei de adunare obţinem: N1+N2 = 28-(|N1|CD+|N2|CD)-20. Rezultatul este
pozitiv sau negativ, după valorile absolute ale numerelor N1 şi N2.
Observaţie. Adunarea în cod invers, ca şi în cod complementar, operează asupra tuturor
cifrelor binare, inclusiv asupra cifrei de semn.
3. Adunarea/scăderea în cod complementar (CC)
a). Adunarea /scăderea numerelor cu acelaşi semn
- Dacă ambele numere sunt pozitive, reprezentarea lor în cod complementar este identică
reprezentării în CD.
- Daca numerele sunt negative: fie N1<0 şi N2<0:
N1 = 28 - |N1|CD N2=28 - |N2|CD
8 8
N1+N2 = 2 – (|N1|CD+|N2|CD)+2
↓ ↓
forma de reprez. a rez. transp. de la bitul de semn
Ţinând seama de forma de reprezentare a rezultatului, apare necesar ca transportul de la cifra
de semn să se neglijeze. Observaţie. Dacă în urma însumării a două numere cu acelaşi semn,
rezultatul are semn contrar → acesta este eronat (valoarea rezultatului nu se poate încadra pe
numărul de biţi utilizat).
b). Adunarea/scăderea numerelor cu semn diferite: Fie N1>0 şi N2<0, N2=28 - |N2|CD. Prin
adunare avem: N1+N2 = 28 – (|N2|CD-|N1|CD). Dacă |N1| > |N2| rezultatul va fi pozitiv, iar pentru |N1|<
|N2| rezultatul va fi negativ.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 8. Reprezentarea numerelor în format BCD

Pentru reprezentarea numerele folosind codificarea BCD (Binary Coded Decimal) se


utilizează două formate: formatul împachetat (packed BCD) şi formatul despachetat (unpacked
BCD). Reprezentarea în BCD format împachetat conţine două cifre zecimale pe un octet (cifra
zecimală mai puţin semnificativă pe biţii 0 ÷ 3 şi cifra zecimală mai semnificativă pe biţii 4 ÷ 7).
Datele reprezentate în BCD format despachetat conţin o cifră zecimală pe octet - memorată în
biţii 0 ÷ 3, iar biţii 4 ÷ 7 conţin informaţia (F)H [(1111)2].
Microprocesorul acceptă datele în format BCD împachetat sau despachetat, având
următoarea machetă de reprezentare pe un octet:

Pentru reprezentarea numerelor nu s-a impus o anumită lungime a secvenţelor şi nu s-a


ţinut cont de semnul numărului. Pentru calculatoarele compatibile IBM-PC coprocesorul
matematic memorează numerele întregi zecimale pe zece octeţi - în format împachetat. În acest
caz macheta de reprezentare este:

S - bit de semn ( 0 pentru numere pozitive, 1 pentru numere negative);


Di - cifră zecimală (două cifre per octet);
X - biţi nefolosiţi.
Numerele negative se deosebesc de cele pozitive prin bitul de semn.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 9. Adunarea si scaderea în format BCD

1. Adunarea în 8421
Adunarea numerelor în zecimal codificat binar (8421) se face binar, rang cu rang pe
fiecare grup de patru cifre binare, cu adăugarea, eventual, a unor corecţii.
Fie a şi b două cifre zecimale codificate binar (în 8421) care se adună; rezultatul c = a + b
poate fi:
- corect, şi nu este necesar să se aplice nici o corecţie dacă: 0000< c< 1001;
- incorect şi se impune corecţia, adunând 0110 în situaţiile: a). 1010<c<1111 - această
reprezentare nu corespunde unei cifre în zecimal. Adunând 0110 va determina în transport la
rangul următor; b). 0000<c<1001, dar a rezultat a cincea cifră binară, aceasta fiind 1 şi reprezintă
transportul pentru tetrada binară superioară.
ccorectat = c + 0110

2. Scăderea în 8421
Fie a şi b două cifre zecimale codificate binar, în codul 8421 ce se scad astfel:
- dacă c = a-b este un număr pozitiv, acest rezultat este corect;
- dacă rezultatul este negativ, se realizează un împrumut de la tetrada binară superioară
(-0001)2, care va reprezenta pentru tetrada unde este necesar împrumutul valoarea (10000)2=16.
Această configuraţie de cifre [(10000)2] se adună la tetrada a şi din aceasta se scade tetrada b,
obţinându-se un număr pozitiv. Noului rezultat i se aplică o corecţie prin scăderea cifrei 6, adică
(0110)2. Scăderea este necesară deoarece în zecimal valoarea împrumutului este 10, iar prin
reprezentarea într-un cod cu 4 cifre binare împrumutul este 16.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 10. Reprezentarea numerelor în virgula mobila

În cazul reprezentării numerelor în virgulă mobilă, se pleacă de la faptul că un număr N se


poate scrie sub forma: N=±(f)b*bE, unde: b reprezintă baza sistemului de numeraţie utilizat (mai
frecvent se utilizează baza 2 sau 16); E exponentul real si f partea fracţionară a numărului.
Reprezentarea în calculator, implică existenţa a trei câmpuri, acestea fiind:
- bitul de semn: S = 0, daca N≥0 sau 1, daca N<0
- Exponentul (cunoscut şi sub denumirea de caracteristică), are o valoare determinată prin
relaţia: EXP = exponent real + constantă în exces.
Constanta în exces se stabileşte în funcţie de format şi de calculator şi are ca scop
eliminarea unei zone în care să fie specificat semnul corespunzător exponentului real. Se pot
reprezenta în acest mod şi numere negative folosind acelaşi tip de reprezentare.
- Fracţia (sau mantisa). Numărul de cifre binare corespunzătoare acestei zone variază, de
asemenea, în funcţie de calculator şi formatul utilizat. De regulă, fracţia trebuie să fie normalizată,
respectând relaţia: 1/b ≤ (f)b <1.
Pentru reprezentarea în virgulă mobilă a unui număr real N, într-un calculator din familia
IBM-PC se consideră: N=±2E(f)2. 1≤(f)2<2 iar (f)2=I0f1f2...fn (I0 = 1, iar valoarea lui n depinde de
formatul ales). De regulă se utilizează următoarele formate:
1) Formatul real binar:
- simplă precizie, având macheta: - dublă precizie:

fi - cifrele binare ale fracţiei normalizate;


Ei - cifrele binare ale zonei de exponent;
EXP=E + (81)H.
Dacă zona exponent este egală cu zero, numărul zecimal este egal cu zero. Dacă zona
exponent este diferită de zero, atunci numărul zecimal va fi determinat astfel:
<N> = <S>*( 0.1<fractie>)2*2<EXP>-(80)h
2) Formatul real sau formatul IEEE (Institute of Electrical and Electronics Engineers) 754,
apărut în anul 1985:
- simplă precizie (format scurt), având macheta: - dublă precizie (format lung), cu macheta:

unde: fi - cifrele binare ale zonei exponent (EXCES=127 sau 1023);


EXP = E+127[(7F)H] - pentru format scurt;
EXP = E + 1023 [(3FF)H] - pentru format lung.
-format temporar (sau real extins), cu macheta:

unde: I0 - bitul părţii întregii, ce se memorează în formatul temporar;


fi - cifrele binare ale fracţiei;
Ei - cifrele binare ale zonei exponent,
EXP = E + 16383 [(3FFF)H]
Dacă exponentul este egal cu zero, atunci numărul este egal cu zero. Dacă exponentul nu
este egal cu zero, numărul zecimal se va calcula după relaţia:
<N>=<S>*(1.<fracţie>)2*2<EXP>-EXCES

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 11. Coduri numerice si alfanumerice

Codurile în care sunt reprezentate numai numere se numesc coduri numerice, iar cele
care cuprind numerele, literele şi semnele speciale se numesc coduri alfanumerice. Dintre
codurile alfanumerice amintim:
- Codul BCD (Binary Coded Decimal), reprezintă unul din primele coduri utilizate în
tehnica de calcul. O secvenţă de cod are lungimea de şase biţi/caracter.
- Codul EBCDIC (Extended Binary Coded Decimal Information Interchange Code),
secvenţele de cod au o lungime de opt biţi/caracter.
- Standardul ASCII (American Standard Code for Information Interchange) secvenţele de
cod au o lungime de opt biţi/caracter.
- Standardul Unicode utilizează secvenţe de cod cu lungimea de 16 biţi/caracter. Acest
cod a fost conceput să înlocuiască standardul ASCII, prin intermediul căruia se pot reprezenta
maximum 256 (28) caractere. Codul ASCII este un subset al standardului Unicode. Caracterele
de bază din toate limbile scrise existente pot fi reprezentate prin standardul Unicode.
Codurile normalizate au fost realizate în aşa fel încât să uşureze modul de prelucrare a
informaţiei. Astfel, partea stângă a codului permite identificarea imediată a naturii informaţiei
codificate (litere, cifre, funcţii), următoarele poziţii ale codului sunt organizate într-un mod care
să uşureze conversia în vederea calculelor (în cazul cifrelor) sau ordonarea alfabetică (în cazul
literelor).
Codurile numerice au fost introduse pentru a se opera mai uşor cu informaţia numerică.
Codurile numerice pot fi: ponderate sau neponderate.
Un cod numeric este ponderat dacă unei cifre zecimale îi corespunde o succesiune de
cifre binare, în care fiecare cifră de rang j are asociată o anumită pondere Pj. Fie N un număr
zecimal:
N = zkzk-1zk-2...z0, zi ∈ {0, 1, ....9}, i=0,k
Oricare ar fi cifra zecimală zi, aceasta se va reprezenta printr-o secvenţă binară ce
satisface relaţia: zi = Σ aj*Pj, j∈{0,1}, Pj ∈ {0, ±1, ±2, ....±9} constituie ponderea corespunzătoare
rangului j, iar n numărul de simboluri din secvenţa binară asociată cifrei zecimale. Dintre
codurile ponderate amintim:
- Codul 8421, codul binar-zecimal natural, având ca ponderi puterile lui 2 (23,22,21,20).
- Codul 2421 (Aiken), la care codificarea primelor cinci cifre zecimale (0÷4) este identică
secvenţelor din codul 8421. Codificarea cifrei zecimale 5 se obţine din secvenţa corespunzătoare
cifrei zecimale 4 prin schimbarea simbolurilor binare 0 în 1 şi 1 în 0. Astfel, fiecare complement
faţă de 9 al unei cifre zecimale se reprezintă printr-o secvenţă ce rezultă complementând faţă de
1 simbolurile binare din secvenţa cifrei zecimale respective. Codurile ce au această proprietate se
numesc autocomplementare, prezentând avantaje în efectuarea operaţiilor aritmetice.
- Pentru codul 8421 ponderile sunt puteri ale lui 2, însă două sunt negative. Este un cod
auto-complementar.
- Codul bichinar (50 43210) conţine secvenţe de câte şapte simboluri binare împărţite în
două grupe. Acest cod a fost folosit la primele calculatoare electronice. Alte coduri numerice
ponderate sunt: 4221, 5421, 7421, 6421.
Din categoria codurilor neponderate, amintim:
- Codul EXCES 3 a fost realizat de G. Stibitz şi se remarcă prin aceea că: este un cod
autocomplementar si cifrei zecimale zero îi corespunde o secvenţă binară ce conţine cifre binare
de 1.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

- Codul Gray se caracterizează prin aceea că două secvenţe de cod consecutive diferă
printr-o singură poziţie binară. Dacă notăm cu: a8, a4, a2, a1 cifrele binare ale secvenţelor codului
8421, în ordinea ponderilor şi cu b4, b3, b2 şi b1 cifrele binare ale secvenţelor Gray, în ordinea de
la stânga la dreapta, acestea din urmă pot fi calculate folosind relaţiile: b8 = a8; b3 = a8⊕a4; b2 =
a4⊕a2; b1 = a2⊕a1.
- Codul „2 din 5” este un cod pseudo-ponderat. Secvenţele de cod pentru cifrele zecimale
1 ÷ 9 au asociate ponderile 74210, numai codificarea cifrei zecimale 0 face excepţie de la această
regulă. Caracteristica secvenţelor de cod este aceea că din cele cinci cifre binare două sunt
semnificative (au valoarea 1).

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 12. Coduri de bare

Codul de bare reprezintă un sistem de codificare prin care se permite identificarea


automată sau semiautomată a diverselor entităţi (legitimaţii, cărţi, bilete de avion, produse din
cele mai variate etc.). Codul de bare are avantajul de a fi relativ simplu de produs şi recunoscut.
El poate fi aplicat direct pe orice produs (pe ambalajul acestuia) sau ulterior, ca etichetă.
Majoritatea codurilor de bare au la bază principiul binar, reprezentarea făcându-se printr-un
număr de linii sau linii şi spaţii cu o anumită lăţime. Secvenţa de linii sau linii şi spaţii reprezintă
un caracter numeric sau alfanumeric.
Pentru exemplificare vom considera codul 2/5 (2 din 5), cod numeric (sunt reprezentate
cifrele de la 0 la 9). Codificarea se face prin trasarea a două linii late şi trei înguste. Raportul de
imprimare linie îngustă/linie lată este de 1/2 sau 1/3. Spaţiile nu conţin informaţie.

Caracter Linia1 Linia2 Linia3 Linia4 Linia5


1 1 0 0 0 1
2 0 1 0 0 1
3 1 1 0 0 0
4 0 0 1 0 1
5 1 0 1 0 0
6 0 1 1 0 0
7 0 1 0 1 1
8 1 0 0 1 0
9 0 1 0 1 0
0 0 0 1 1 0
start 1 1 0
stop 1 0 1

1: linie lată; 0: linie îngustă

Dacă în cazul codului 2 din 5 spaţiile nu conţin informaţie, există şi un cod asemănător în
care densitatea informaţiei reprezentate este mai mare; acest cod se numeşte „codul 2 din 5
intercalat” iar în acest caz spaţiile conţin informaţii în acelaşi mod ca şi liniile. Codificarea
informaţiei permite rezolvarea unor probleme ce pot apare în transmisia, stocarea sau prelucrarea
acesteia, cum ar fi:
- detectarea şi corectarea erorilor pentru a se asigura integritatea informaţiei;
- compresia pentru minimizarea cantităţii de informaţie;
- criptarea pentru a se garanta securitatea informaţiei.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 13. Coduri detectoare si corectoare de erori

Codificarea se efectuează având ca scop principal protejarea informaţiei de perturbaţiile


ce pot să apară într-un sistem de transmisie. De aceea, înainte de a emite simbolurile de
informaţie pe canalul de comunicaţie, ce poate fi supus perturbaţiilor, se adaugă o anumită
informaţie redundantă, de obicei prin introducerea unor simboluri suplimentare, numite
simboluri de control. Rolul acestor simboluri de control este acela de a indica utilizatorului
prezenţa erorilor şi chiar să-i dea posibilitatea de a le corecta. Codurile obţinute astfel, prin
mărirea redundanţei, se numesc coduri detectoare şi corectoare de erori. În acest caz, schema
unui sistem de transmiterea informaţiei arata astfel:

Se poate face o clasificare a codurilor detectoare şi corectoare de erori după modul de


prelucrare al simbolurilor. Dacă prelucrările necesare obţinerii proprietăţilor de detecţie sau de
corecţie se fac în blocuri de n simboluri, avem coduri bloc. Dacă prelucrarea simbolurilor
generate de sursă se realizează în mod continuu, avem de-a face cu coduri convoluţionale
(recurente). Din categoria codurilor bloc se disting:
- codurile grup, secvenţele de cod sunt considerate ca fiind elemente dintr-un spaţiu
vectorial;
- codurile ciclice, secvenţele de cod sunt considerate ca fiind elemente într-o algebră.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 14. Teoremele fundamentale ale algebrei booleene

1. Teoremele reuniunii şi intersecţiei:


- Există un element 0 numit prim element cu proprietăţile: x0=0 şi x0=x
- Există un element 1 numit ultim element cu proprietăţile: x1=x şi x1=1
2. Teoremele de unicitate:
- Elementul 1 este unic
- Elementul 0 este unic
3. Teoremele complementării:
- Principiul contradicţiei: x  x = 0
- Principiul terţului exclus: x  x = 1
4. Teorema dublei negaţii: x  x
5. Teoremele absorbţiei:
x (x  y)=x
x (x  y)=x
6. Teoremele lui DeMorgan:
x y  x y x y  x y
7. Teoremele de idempotenţă:
xx…x = x
xx…x = x
8. Teoremele de comutativitate, asociativitate şi distributivitate pentru cele 2 legi de
compoziţie:
xy = y x
x (y z)=(x y) z
x (y  z)=(x y)  (x z)

x  y=y  x
x (y z)=(x  y) z
x (y  z)=(x y) (x z)

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 15. Existenta si unicitatea functiilor logice

Forma canonică disjunctivă, respectiv conjunctivă a unei funcţii logice este unică. Forma
canonică disjunctivă (respectiv conjunctivă) a unei funcţii logice se numeşte şi forma normală
disjunctivă (respectiv conjunctivă) perfectă.
Forma normală disjunctivă a unei expresii logice este o sumă de produse elementare
egală cu expresia dată. Forma normală conjunctivă a unei expresii logice este un produs de sume
elementare egal cu expresia dată. Forma normală disjunctivă (respectiv conjunctivă) a unei
funcţii nu este unică.
Vom considera în continuare cele două forme canonice atât pentru funcţia de o singură
variabilă cât şi pentru funcţia de două variabile.
Funcţia booleană de o singură variabilă: fie f : B2→B2 o funcţie booleană de o singură
variabilă iar a şi b două constante booleene. Forma canonică disjunctivă este: f (x) = ax∪bx. Am
obţinut a = f(1) şi b = f(0), valori unic determinate. Înlocuim x=1, x=0 în relatia lui f(x):
f(1) = a • 1 ∪ b • 1 = a • 1 ∪ b • 0 = a ∪ 0 = a
f(0) = a • 0 ∪ b • 0 = a • 0 ∪ b • 1 = 0 ∪ b = b
FCD: f(x) = f(1) • x ∪ f(x) • x
Pentru demonstrarea existentiei (in forma canonica disjunctive), vom inlocui pe x pe rand
cu valorile 0 si 1 in relatia anterioara:
f(1) = f(1) • 1 ∪ f(0) • 1 = f(1) • 1 ∪ f(0) • 0 = f(1)
f(0) = f(1) • 0 ∪ f(0) • 0 = f(1) • 0 ∪ f(0) • 1 = f(0)
Pentru forma canonica conjunctiva avem: f (x) = (a ∪ x)(b ∪ x). Înlocuim x = 1, x = 0 în
relatia lui f(x):
f (1) = (a ∪ 1) • (b ∪ 1) = (a ∪ 1) • (b ∪ 0) = 1 • b = b
f(0) = (a ∪ 0) • (b ∪ 0) = (a ∪ 0) • (b ∪ 1) = a • 1 = a
FCC: f(x) = (f(0) ∪ x) • (f(1) ∪ x)
Am obţinut în acest caz: a = f(0) şi b = f(1), valori unic determinate. Pentru demonstrarea
existenţei (în forma canonică conjunctivă), vom înlocui x pe rând cu valorile 0 şi 1 în relaţia
anterioară:
f(1) = (f(0) ∪ 1) • (f(1) ∪ 1) = (f(0) ∪ 1)(f(1) ∪ 0)= 1 • f(1) = f(1)
f(0) = (f(0) ∪ 0) • (f(1) ∪ 0) = (f(0) ∪ 0)(f(1) ∪ 1)= f(0) • 1 = f(0)
f(x,y) = axy ∪ bxy ∪ cxy ∪ dxy - forma canonică disjunctivă
Considerăm forma FCD şi înlocuim x =1, x = 0, y =1, y = 0 în relaţia lui f(x,y). Vom
avea : a = f(1,1), b = f(1,0), c = f(0,1), d = f(0,0).
FCD: f(x,y) = f(1,1)xy ∪ f(1,0)xy ∪ f(0,1)xy ∪ f(0,0)xy
Funcţia booleană de două variabile: Fie f : B2 × B2→ B2 o funcţie booleană de două
variabile iar a, b, c şi d patru constante booleene. În cazul formei canonice conjunctive avem:
f(x,y) =(a∪x∪y)(b∪x∪y)(c∪x∪y)(d∪x∪y)
Inlocuim în această relaţie x=0, x=1, y=0, y=1 şi obţinem: a=f(0,0), b=f(0,1), c=f(1,0),
d=f(1,1).
FCC : f (x,y) = (f(0,0)∪x∪y)(f(0,1)∪x∪y)(f(1,0)∪x∪y)( f (1,1)∪x∪y)
Demonstrarea existenţei în cazul formei canonice disjunctive: f(x,y) =f(1,1)xy ∪
f(1,0)xy ∪ f(0,1)xy ∪ f(0,0)xy - forma canonică disjunctivă. Considerăm aceasta expresie şi
înlocuim x =1, x = 0, y =1, y = 0 şi obţinem:

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

x=y=1 → f(1,1) = f(1,1) • 1 • 1 ∪ f(1,0) • 1 • 1 ∪ f(0,1) • 1 • 1 ∪ f(0,0) • 1 • 1 = f(1,1)


x=1, y=0 → f(1,0) = f(1,1) • 1 • 0 ∪ f(1,0) • 1 • 0 ∪ f(0,1) • 1 • 0 ∪ f(0,0) • 1 • 0 = f(1,0)
x=0, y=1 → f(0,1) = f(1,1) • 0 • 1 ∪ f(1,0) • 0 • 1 ∪ f(0,1) • 0 • 1 ∪ f(0,0) • 0 • 1 = f(0,1)
x=y=0 → f(0,0) = f(1,1) • 0 • 0 ∪ f(1,0) • 0 • 0 ∪ f(0,1) • 0 • 0 ∪ f(0,0) • 0 • 0 = f(0,0)
Demonstrarea existenţei în cazul formei canonice conjunctive: FCC: f(x,y) = (f(0,0)
∪x∪y)(f(0,1) ∪x∪y)(f(1,0) ∪x∪y)(f(1,1) ∪x∪y)
Considerăm aceasta expresie şi înlocuim x =1, x = 0, y =1, y = 0 şi obţinem:
x=y=1 → f(1,1)=(f(0,0) ∪ 1 ∪ 1)(f(0,1) ∪ 1 ∪1)(f(1,0) ∪ 1 ∪ 1 )(f(1,1) ∪ 1 ∪ 1) = f(1,1)
x=1, y=0 → f(1,0)=(f(0,0) ∪ 1 ∪ 0)(f(0,1) ∪ 1 ∪ 0)(f(1,0) ∪ 1 ∪ 0)(f(1,1) ∪ 1 ∪ 0) = f(1,0)
x=0, y=1 → f(0,1)=(f(0,0) ∪ 0 ∪ 1)(f(0,1) ∪ 0 ∪1)(f(1,0) ∪ 0 ∪ 1 )(f(1,1) ∪ 0 ∪ 1) = f(0,1)
x=y=0 → f(0,0)=(f(0,0) ∪ 0 ∪ 0)(f(0,1) ∪ 0 ∪ 0)(f(1,0) ∪ 0 ∪ 0 )(f(1,1) ∪ 0 ∪ 0) = f(0,0)

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 16. Forme de reprezentare ale functiilor booleene

Funcţiile booleene se pot reprezenta fie sub forma unor tabele de adevăr, fie sub forma
expresiilor booleene. Cele două forme de reprezentare sunt echivalente. Oricărei funcţii logice i
se poate asocia un tabel de adevăr sau expresia logică corespunzătoare. Consideram cateva
exemple:
Reprezentarea sub formă de tabel de adevăr a funcţiilor : NU, SAU, ŞI, SAU-NU, ŞI-NU.

x y NU SAU SI SAU-NU SI-NU


f1(x)=x f2(x,y)=x∪y f3(x,y)=x∩y f4(x,y)=x∪y f5(x,y)=x∩y
0 0 1 0 0 1 1
0 1 1 1 0 0 1
1 0 0 1 0 0 1
1 1 0 1 1 0 0

Fie funcţia logică următoare: f (x, y) = xy∪xy. Tabelul de adevăr asociat este:

x y x·y x·y f(x,y) f(x,y)


0 0 1 0 1 0
0 1 0 0 0 1
1 0 0 0 0 1
1 1 0 1 1 0

Reciproc, dacă avem tabelul de adevăr al funcţiei, putem determina expresia funcţiei.
Considerăm valorile lui x şi y pentru care funcţia f este zero:
x=0, y=1 sau x=0, y=0
x=1,y=0 x=0, y=0
f2(x,y) = (x∪y)(x∪y)
Verificăm faptul că cele două funcţii sunt egale:
f2(x,y) = (x ∪ y)(x ∪ y) = x · x ∪ x · x ∪ y · x ∪ y · y = x · y ∪ x · y = f1(x,y)
x=y=0 sau x=1, y=1
x=y=1 x=y=1
f1(x,y)=x·y ∪ x·y

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 17. Forma normala/canonica disjunctiva/conjunctiva

Se numeşte produs elementar un produs de variabile booleene sau complemente ale


acestora, in care aceeasi variabila apare o singura data.
Un mintermen în raport cu variabilele logice x1, x2,...,xn este produsul elementar în care
apar, fie simple, fie complementare, toate variabilele x 1,x2, …,xn. Un mintermen se va scrie în
aşa fel încât pentru un set de valori ale variabilelor booleene să ia valoarea logică 1.
Se numeste produs elementar/sumă elementară un produs/sumă de variabile şi/sau
negaţiile lor.
Se numeste forma normală disjunctivă (FND) a unei relaţii logice funcţionale, o relaţie
echivalentă (are aceeaşi valoare de adevăr) care este o sumă de produse elementare construite cu
aceleaşi variabile ca şi relaţia dată iniţial, fiecare produs conţinând toate variabilele posibile (ele
sau complementarele lor).
f ( x)  ax  b x - FND
Se numeste formă normală conjunctivă (FNC) a unei relaţii logice funcţionale, o relaţie
echivalentă (are aceeaşi valoare de adevăr) care este un produs de sume elementare construite cu
aceleaşi variabile ca şi relaţia dată iniţial, fiecare sumă conţinând toate variabilele posibile (ele
sau complementarele lor).
f ( x)  (a  x)(b  x) - FNC
Forma canonică disjunctivă (FCD) pentru o functie de n variabile booleene se poate
scrie astfel:
f(x1,x2,…,xn) = ∪ f(i1k,i2k,…,ink) · x1i1k · x2i2k · … · xnink, k=1,2n
avand xjijk = xj, daca ijk = 1
xj, daca ijk = 0
În concluzie, forma canonică disjunctivă a unei funcţii logice este o sumă a min trmenilor
pentru care funcţia are valoarea logică 1.
Se numeşte sumă elementară o sumă de variabile booleene sau complemente ale acestora,
faca ca aceeasi variabila sa apara de mai multe ori.
Un maxtermen în raport cu variabilele logice x1, x2,..,xn este o sumă elementară, în care
apar, fie simple, fie complementare, toate variabilele x 1, x 2, ...,xn. Un maxtermen se va scrie în
aşa fel încât pentru un set de valori ale variabilelor logice să ia valoarea logică 0.
Forma canonică conjunctivă (FCC) pentru o funcţie de n variabile se poate scrie:
f(x1,x2,…,xn) = ∩ [f(i1k,i2k,…,ink) · x1i1k · x2i2k · … · xnink], k=1,2n
avand xjijk = xj, daca ijk = 0
xj, daca ijk = 1
Aşadar, forma canonică conjunctivă reprezintă produsul maxtermenilor pentru care
functia booleana are valoarea logica 0.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 18. Proprietatile mintermenilor/maxtermenilor

P1. Produsul logic între doi mintermeni mi şi mj (i # j) ai unei funcţii booleene de n


variabile este egal cu 0: mi*mj=0, ∀ i≠j
P2. Suma logică dintre doi termeni Mi şi Mj (i # j) ai unei funcţii booleene de n variabile
este egal cu 1: mi U mj =0, ∀ i≠j
P3. O funcţie booleană de n variabile poate fi reprezentată printr-o sumă logică de
mintermeni mi (respectiv un produs logic de maxtermeni Mi) sub forma:
f(x1,...,xn) = U (α1*mi)
f(x1,...,xn) = ∩ (αi*mi), αi ∈ {0,1} – numere caracteristice, i=0,2n-1
P4. Complementul unei funcţii booleene de n variabile scrise în FCC poate fi exprimat în
mod unic prin relaţia:
f(x1,...,xn) = U (α1*mi)
iar complementul unei funcţii booleene de n variabile scrise în FCD poate fi exprimat unic astfel:
f(x1,...,xn) = ∩ (αi*mi), αi ∈ {0,1}, i=0,2n-1
P5. Dacă o funcţie booleană de n variabile este scrisă în FCD şi conţine 2n termeni
distincţi de n variabile atunci ea este egală cu 1. În aceleaşi condiţii, dacă funcţia este scrisă în
FCC, atunci ea este egală cu 0.
f(x1,...,xn) = U mi = 1 (FCD)
f(x1,...,xn) = ∩ Mi = 0 (FCC), i=0,2n-1
P6. Orice mintermen mi al unei funcţii booleene de n variabile scrise în FCD este egal cu
produsul logic a 2n-1 termeni Mj, respectiv orice maxtermen Mi al unei funcţii booleene de n
variabile scrisă în FCC este egal cu suma logică a 2n-1 termeni mj:
m i = ∩ Mj ,
Mi = U mj, j=0,2n-1 si j≠i

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 19. Functiile booleene de doua variabile

1) Funcţia NU:
f10(x1, x2,..., xn)=xi, ∀i=1,n
2) Funcţia IDENTITATE :
f3(x1, x2,..., xn) = xi, ∀i =1,n
3) Funcţia ŞI: f1(x1, x2,..., xn) = x1 · x2 ·... ·xn, această funcţie are valoarea logica 1 daca
toate variabilele au valoarea logica 1.
4) Funcţia SAU: f7(x1, x2, ...,xn) = x1 + x2 +...+ xn , ce are valoarea logică 1 daca cel putin
o variabila are valorea logica 1.
5) Funcţia ŞI-NU, are valoarea logică 1 dacă cel puţin o variabilă are valoarea logică 0:
f14 (x1, x2 , .. , xn) = x1 · x2 · ... · xn = x1 + x2 + .. + xn
6) Funcţia SAU-NU, are valoarea logică 0 dacă cel puţin o variabilă are valoarea logică
1: f8(x1, x2, ..,xn) = x1 + x2 + .. + xn = x1 · x2 · ... ·xn
7) Funcţia INHIBARE:
f 4 (x1, x2 , ..., xn) = x1 · x2 · ... · xk-1 · xk · xk+1· ... · xn, k ∈ {1, 2, ..., n}.
8) Funcţia IMPLICARE:
f11 (x1, x2, .. , xn) = x1 + x2 + xk-1 + xk + xk+1 + .. + xn, k ∈ {1, 2, ..., n}.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 20. Diagrame Karnaugh – minimizare

Diagramele Karnaugh sunt reprezentări grafice ale funcţiilor booleene. O celulă din
diagramă corespunde unei linii din tabela de adevăr. De asemenea, o celulă din diagramă
corespunde unui mintermen sau maxtermen al expresiei booleene. Zone ce conţin mai multe
celule adiacente corespund termenilor standard.

Algoritmul de minimizare, utilizând diagramele Karnaugh este următorul:


- Scrierea valorilor funcţiei în diagramă, scrierea după 1 (sau după 0) dacă se foloseşte
FCD (sau FCC) a funcţiei.
- Gruparea a 2k (k = 0,1,2,...) suprafeţe elementare adiacente, care au valoarea logică 1
(sau 0 dacă s-a folosit FCC), astfel încât să formeze o suprafaţă dreptunghiulară. În suprafeţele
extinse se încearcă includerea tuturor suprafeţelor elementare care au valoarea logică 1 (sau 0 în
FCC).
- Corespunzător unei suprafeţe extinse se obţine un produs elementar al variabilelor ce
nu-şi schimbă valoarea pe această suprafaţă, dacă s-a folosit FCD, sau o sumă elementară a
variabilelor ce nu-şi schimbă valoarea în FCC. Dacă nu este posibil ca o suprafaţă elementară să
se alipească altei suprafeţe elementare, pentru aceasta se va scrie expresia ce corespunde
mintermenului / maxtermenului.
În unele cazuri, în practică, anumite combinaţii ale valorilor variabilelor de intrare nu
apar niciodată în timp, funcţia numindu-se incomplet definită. Se poate considera că aceste
combinaţii sunt nesemnificative pentru determinarea funcţiei logice de la ieşire. Se pot folosi
aceste situaţii atribuind suprafeţelor elementare respective valoarea logică 1 sau 0 (R), în funcţie
de modul în care se poate obţine o formă mai simplă pentru funcţia logică.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 21. Asambloare, compilatoare, interpretoare

Compilatoarele translatează instrucţiunile HLL în binar cod – maşină pentru a fi direct


executate de către computer. Ele au devenit componente de bază într-un sistem de calcul,
reflectând, de regulă, eficienţa cu care resursele hardware sunt exploatate de către programatori.
Înainte de apariţia limbajelor de nivel înalt şi a compilatoarelor, programatorii foloseau limbajul
de asamblare (ASM) şi asambloarele. Acest lucru avea, de asemenea, avantajul de a nu scrie
programe direct în binar. Limbajul de asamblare posedă instrucţiuni cod-maşină ce poartă
denumirea de Calculatorul şi sistemul de operare.
Noţiuni introductive mnemonice (provin de la cuvintele în engleză ce specifică acţiunea
lor) precum ADD, MOV, SUB sau JMP. Programul apare sub forma unei liste de astfel de
mnemonice ce pot fi convertite uşor în limbajul de cod binar. Programele ce fac această
translatare se numesc asambloare. Exemple de limbaje de asamblare sunt: MASM (Microsoft
Assembler) şi TASM (Turbo Assembler – dezvoltat de firma Borland).
Translatarea unui program HLL se poate face fie prin intermediul unui compilator, fie
prin intermediul unui interpretor. Limbajele BASIC şi Java au pornit la început folosind
interpretoare, dar acum există şi compilatoare pentru ele. Pentru a fi executat de către
microprocesor, un program trebuie să parcurgă următoarele etape:
- Editare (EDIT)
- Compilare (COMPILE)
- Editare de legături (LINK)
- Încărcare în memorie (LOAD)
Interpretoarele oferă o alternativă pentru a rula programe scrise într-un limbaj înalt de
programare. În loc de a translata instrucţiunile de nivel înalt în cod maşină şi de a crea un
program executabil, interpretorul citeşte instrucţiunile de nivel înalt una câte una şi le execută
folosind o bibliotecă proprie de rutine. În acest mod, codul executabil nu este generat din codul
sursă ci este conţinut în cadrul interpretorului.
Interpretorul "vede" codul sursă HLL ca date de intrare care trebuie analizate şi apoi
trebuie procesate conform semnificaţiei lor. Avantajele folosirii unui interpretor sunt: pornirea
rapidă şi aparenta lipsă a complexităţii legate de compilare şi editare de legături. Dezavantajul
este că operează foarte lent; programele compilate au fost întotdeauna superioare programelor
interpretate.
Este ceva obişnuit ca interpretoarele să convertească instrucţiunile de intrare într-o formă
intermediară alcătuită din anumite simboluri, înainte de a se lua o decizie asupra acţiunilor ce vor
fi executate. Simbolurile generate sunt apoi trecute unui decodificator care va selecta rutina
corespunzătoare ce va fi executată. Uneori interpretorul este văzut ca o "maşină virtuală"
deoarece se comportă într-un fel ca o componentă hardware: citeşte instrucţiuni pe rând şi se
supune lor. Interpretoarele apropie nivelul execuţiei instrucţiunilor de nivelul programului
conceput în limbajul de nivel înalt.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 22. Microprocesorul. Ciclul fetch-decode-execute

Microprocesorul reprezintă unitatea centrală de procesare (UCP) a unui calculator,


componentă ultracompactă şi de o importanţă majoră; alegerea acesteia determină limitele
performanţei şi preţul sistemului de calcul.
În zilele noastre, majoritatea microprocesoarelor care rulează software pentru
calculatoare personale sunt variante îmbunătăţite ale vechiului procesor 8086 şi au la bază
arhitectura x86.
Ciclul fetch-execute reprezintă procesul prin care microprocesorul preia din memoria în
care este stocată programul următoarea instrucţiune ce va fi executată, o decodifică şi execută
operaţia pe care această instrucţiune o reprezintă.
I. Etapa fetch este aproximativ identică pentru toate tipurile de instrucţiuni. Paşii urmaţi
de microprocesor în această etapă sunt:
a) adresa din registrul pointer de instrucţiune (IP) este copiată pe magistrala de adrese de
memorie de unde este transmisă în registrul RAM (Registrul de Acces la Memorie);
b) pointerul de instrucţiune este incrementat (IP++), indicând adresa de memorie a
următoarei instrucţiuni ce va fi executată;
c) se selectează locaţia de memorie şi se copiază conţinutul acesteia în magistrala de date;
d) procesorul copiază codul instrucţiunii din magistrala de date în registrul de
instrucţiune;
e) începe procesul de decodificare a instrucţiunii.
II. Etapa execute: Pasii urmati de microprocesor sunt:
a) conţinutul registrului pointer de instrucţiune (IP) este copiat pe magistrala de adrese de
memorie de unde este transmis în registrul RAM (Registrul de Acces la Memorie);
b) pointerul de instrucţiune este incrementat (IP++);
c) valoarea selectată din memorie (1234H) este copiată pe magistrala de date;
d) procesorul copiază valoarea de pe magistrala de date în registrul AX.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 23. Adrese efective. Adrese segmentate.

Proprietăţile regiştrilor de segment (figura 3.6) sunt în strânsă legătură cu noţiunea de


segmentare a memoriei. Premisa de la care se pleacă este următoarea: 8086 este capabil să
adreseze 1MB de memorie, astfel că sunt necesare adrese pe 20 de biţi pentru a cuprinde toate
locaţiile din spaţiul de 1 MB de memorie. Totuşi, registrele utilizate sunt registre pe 16 biţi, deci
a trebuit să se găsească o soluţie pentru această problemă. Soluţia găsită se numeşte segmentarea
memoriei; în acest caz memoria de 1MB este împărţită în 16 segmente de câte 64 KB (16*64 KB
= 1024 KB =1 MB).
Noţiunea de segmentare a memoriei presupune utilizarea unor adrese de memorie
formate din două părţi. Prima parte reprezintă adresa segmentului iar cea de-a doua porţiune
reprezintă adresa de deplasament sau offset-ul.

Fiecare pointer de memorie pe 16 biţi este combinat cu conţinutul unui registru de


segment pe 16 biţi pentru a forma o adresă completă pe 20 de biţi. Adresa de segment împreună
cu adresa de deplasament sunt combinate în felul următor: valoarea de segment este deplasată la
stânga cu 4 biţi (înmulţită cu 16 = 24) şi apoi adunată cu valoarea adresei de deplasament.Adresa
astfel construită se numeşte adresă efectivă; fiind o adresă pe 20 de biţi poate accesa 220 octeţi
de memorie, adică 1 MB de memorie. Construirea adresei efective este prezentată mai jos.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 24. Registrii microprocesorului

Regiştrii (sau registrele) microprocesorului reprezintă locaţii de memorie speciale aflate


direct pe cip; din această cauză reprezintă cel mai rapid tip de memorie. Alt lucru deosebit legat
de regiştri este faptul că fiecare dintre aceştia au un scop bine precizat, oferind anumite
funcţionalităţi speciale, unice. Există patru mari categorii de regiştri: regiştrii de uz general,
registrul indicatorilor de stare (flags), regiştrii de segment şi registrul pointer de instrucţiune.
Regiştrii de uz general sunt regiştrii pe 16 biţi pentru microprocesorul 8086, iar de la
procesorul 80386 încoace au devenit regiştrii pe 32 de biţi, denumiţi, respectiv: EAX, EBX, ECX,
EDX, ESP, EBP, EDI, ESI (litera E provine de la Extended – extins în engleză). Cei mai puţin
semnificativi 8 biţi formează respectiv regiştrii AL, BL, CL, DL, iar cei mai semnificativi 8 biţi ai
aceloraşi regiştrii formează regiştrii AH, BH, CH, DH.
- registrul AX: registrul accumulator, implicat in inmultiri/impartiri, utilizat pentru
input/output, accesibil partial (AH/AL).
- registrul BX: Stocheaza adrese pentru accesul la structuri de date.
- registrul CX: contor, rol special la LOOP.
- registrul DX: utilizat in operatii de intrare/iesire, utilizat pentru inmultiri/impartiri.
- registrul SI: utilizat ca BX pentru referirea unor adrese de memorie, utilizat pentru
instructiuni automate pe siruri de bytes (LODSB) ca index al sursei, segmentul va fi DS.
- registrul DI: utilizat ca BX pentru referirea unor adrese de memorie, utilizat pentru
instructiuni automate pe siruri de bytes (LODSB) ca index al destinatiei, segmentul va fi ES.
- registrul BP: stiva este o structura de memorie LIFO, BP un pointer de memorie in
interiorul SS(stack segment), util pentru utilizarea de subprograme.
- registul SP: contine adresa primului element disponibil din segmentul de stiva.
Registrul pointer de instructiuni: IP - Stocheaza adresa urmatoarei instructiuni care
trebuie executata, poate fi manipulat pentru a obtine flow control, si, in mod normal, instructiunea
este la adresa imediat urmatoare.
Registrul indicatorilor de stare (FLAGS):
- C (Carry) indică apariţia unei cifre binare de transport în cazul unei adunări sau
împrumut în cazul unei scăderi;
- O (Overflow) apare în urma unei operaţii aritmetice. Dacă este setat, înseamnă că
rezultatul nu încape în operandul destinaţie;
- Z (Zero) indică faptul că rezultatul unei operaţii aritmetice sau logice este zero;
- S (Sign) indică semnul rezultatului unei operaţii aritmetice;
- D (Direction) – când este zero, procesarea elementelor şirului se face de la adresa mai
mică la cea mai mare, în caz contrar este invers;
- I (Interrupt) controlează posibilitatea microprocesorului de a răspunde la evenimente
externe (apeluri de întrerupere);
- T (Trap) este folosit de programele de depanare (de tip debugger), activând sau nu
posibilitatea execuţiei programului pas cu pas. Dacă este setat, UCP întrerupe fiecare instrucţiune,
lăsând programul depanator să execute programul respectiv pas cu pas;
- A (Auxiliary carry) suportă operaţii în codul BCD. Majoritatea programelor nu oferă
suport pentru reprezentarea numerelor în acest format, de aceea se utilizează foarte rar;
- P (Parity) este setat în conformitate cu paritatea biţilor cei mai puţin semnificativi ai unei
operaţii cu date. Astfel, dacă rezultatul unei operaţii conţine un număr par de biţi 1, acest indicator
este setat.
Registrii de segment: CS – segmentul de cod, DS – segmentul de date, ES – un segment
oarecare, SS – segmentul de stiva, GS, FS.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 25. Reprezentarea datelor în memorie. Formatele Little Endian


si Big Endian

Modalitatea de aranjare a datelor (reprezentate pe mai mulţi octeţi) în memoria


calculatorului nu este aceeaşi pentru toate tipurile de microprocesoare.
Iniţial, Intel a stabilit o convenţie de reprezentare a datelor de dimensiune de 16 biţi (2 octeţi)
prin împărţirea în doi octeţi şi stocarea în memorie întâi a octetului cel mai puţin semnificativ şi
apoi a octetului CMSO. Această convenţie a luat numele de Little-Endian.
Mai târziu, Motorola a dorit să schimbe această modalitate de stocare a datelor pe 16 biţi,
raţionând în mod invers: se stochează mai întâi octetul cel mai semnificativ şi după aceea octetul
mai puţin semnificativ. Această nouă convenţie a fost denumită Big-Endian. Această convenţie
are avantajul că reprezentarea datelor în memorie este identică, de fapt, cu aceea a scrierii
obişnuite a numerelor, numită şi ordinea de tipărire („print order”).
Citirea unui fişier stocat prin folosirea convenţiei Little-Endian pe un calculator ce
utilizează Big-Endian va fi însă imposibilă. De asemenea, atunci când se transferă fişiere ce
conţin date numerice de pe un PC pe un calculator UNIX poate aparea problema interschimbarii
octetilor; in acest sens pe UNIX exista un program intitulat dd care face conversia intre cele 2
formate.
O altă diferenţă apare, de regulă, la transferul unui fişier text de pe un calculator UNIX
pe un PC sau invers. Acest lucru se întâmplă datorită caracterului utilizat pentru marcarea
sfârşitului de linie. Aplicaţiile de pe calculatoarele PC folosesc caracterul ^M (CR – Carriage
Return – Retur de car) în timp ce aplicaţiile de pe UNIX utilizează caracterul ^J (LF – Line Feed
– Linie nouă).

Reprezentarea in memorie la Motorola:


B1 B2 B3 B4 B5 B6 B7 B8

Reprezentarea in memorie la Intel:


B8 B7 B6 B5 B4 B3 B2 B1

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Subiectul 26. Memoria secundara

Datorită faptului că memoria RAM este foarte scumpă şi este o memorie volatilă, pentru
stocarea pentru mai mult timp (nu numai pe parcursul funcţionării calculatorului) a datelor s-a
căutat utilizarea unui alt tip de memorie. Acest tip de memorie este memoria externă (sau
memoria secundară), care este o memorie relativ rapidă, fiabilă, ieftină, de mare capacitate şi, pe
deasupra, ne-volatilă.
Un calculator nu poate executa un program decât dacă acesta este încărcat în memoria
principală, din acest punct de vedere, memoria principală reprezintă memoria utilizată pentru
stocarea programului ce se execută şi a datelor ce sunt prelucrate iar memoria secundară
reprezintă memoria folosită pentru stocarea pe termen lung a datelor.

Capacitatea maxima de stocare a unui HD se poate calcula astfel:


C = Npl * Np * Ns * Ds, unde:
Npl = numărul de platane ale hard/discului;
Np = numărul de piste de pe un platan;
Ns = numărul de sectoare de pe o pistă;
Ds = dimensiunea unui sector.
Compact Disk, Read Only Memory
Reprezinta un tip foarte popular de mediu de stocare movibil ce a fost conceput iniţial pentru
înmagazinare de date audio dar care s-a extins rapid în lumea calculatoarelor personale ca suport
pentru stocarea datelor.
Succesul CD-ROM-ului poate fi atribuit capacităţii de stocare, durităţii şi, nu în ultimul rând,
preţului redus. Datorită răspândirii acestui format de stocare, unităţile de CD-ROM reprezintă
echipamente standard prezente pe majoritatea calculatoarelor personale.
O unitate CD-ROM este alcătuită dintr-un motor, ansamblu laser, mecanism de rotaţie şi circuite
electronice.
Motorul unităţii învârte motorul CD-ROM-ului la viteza necesară astfel încât ansamblul laser să
poată citi informaţia.
Ansamblul laser constă dintr-un laser şi lentile optice; acest ansamblu citeşte CD-ROM-ul în timp
ce acesta se roteşte.
Mecanismul de rotaţie este un motor ce deplasează lentilele în poziţia corectă pentru a accesa o
zonă anume a CD-ROM-ului.
Circuitele electronice asigură transferul informaţiei citite de pe CD-ROM către calculator prin
intermediul unei magistrale.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Capitolul 02 Bazele tehnologiei informatiei ASE cursul


numarul 5.......
Bazele tehnologiei informației Information Technology Basics (Academia de Studii
Economice din București)

StuDocu is not sponsored or endorsed by any college or university


Downloaded by Popescu Diana (dianapopescu198@yahoo.com)
lOMoARcPSD|11547612

CAPITOLUL 2

2.1. Entropia informaţională


2.2. Sistem de transmisie a informaţiei
2.3. Codificarea informaţiei în sistemele de calcul
2.4. Coduri numerice şi alfanumerice
2.4.1. Coduri alfanumerice
2.4.2. Coduri numerice
2.4.3. Coduri de bare
2.4.4. Codul QR
2.5. Coduri detectoare şi corectoare de erori
2.5.1. Distanţa de cod
2.5.2. Codul Hamming
2.5.3. Coduri liniare cu control încrucişat
2.5.4. Coduri polinomiale ciclice
2.6. Probleme rezolvate
2.7. Probleme propuse

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

2
ELEMENTE DE TEORIA
TRANSMISIEI INFORMAŢIEI

2.1. Entropia informaţională


Informaţia este un mesaj ce aduce o precizare într-o problemă ce comportă un
anumit grad de incertitudine. Deşi există o mare diversitate de informaţie, atât din
punctul de vedere a formei de prezentare, a conţinutului, a sursei care o generează
cât şi a modului de recepţionare, oamenii de ştiinţă şi-au pus problema măsurării ei
cantitative. S-a constatat că informaţia şi nedeterminarea sunt mărimi direct
proporţionale.
Se consideră un experiment X în cadrul căruia se pot realiza un număr finit de n
evenimente elementare: x1, x2, x3, ..,xn. Probabilităţile de apariţie ale acestor
evenimente le vom nota cu p1, p2, p3, .., pn (pi = numărul cazurilor favorabile
evenimentului xi / numărul cazurilor egal posibile ale experimentului).
Se presupune că sistemul de evenimente este un sistem complet:
 pi  0  i = 1, n

 n şi
  pi = 1
 i=1
Experimentul pune în evidenţă un anumit câmp de probabilitate {X, x, p(x)} şi
o anumită repartiţie:
 x1 x2 ... x n
X= 
 p1 p2 ... p n

Deoarece nu se cunoaşte apriori rezultatul experimentului X, înseamnă că acesta


conţine un anumit grad de nedeterminare. Putem afirma că :
 în urma realizării unui experiment se obţine informaţie dacă şi numai dacă
rezultatul experimentului înlătură o anumită nedeterminare;
 informaţia şi nedeterminarea sunt mărimi direct proporţionale;

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

38 Bazele tehnologiei informaţiei

 informaţia înlocuieşte nedeterminare.

Aceste particularităţi au condus la utilizarea aceleiaşi unităţi de măsură atât


pentru cantitatea de informaţie cât şi pentru nedeterminare. Nedeterminarea unui
experiment depinde de probabilităţile de realizare a evenimentelor. Dacă se notează
cu H măsura gradului de nedeterminare, pentru experimentul X, aceasta va fi o
funcţie de probabilităţile evenimentelor:

H(X) = H(p1, p2, .…, pn)

În anul 1948, Claude E. Shannon a folosit pentru prima dată formula:

n
H(p1 , p2 ... pn ) =  pi log2 pi
i =1

Măsura nedeterminării, dată de această formulă, se numeşte, conform lui


Claude Shannon, entropia experimentului X sau entropia informaţională.
În acest sens, unitatea de măsură a informaţiei definită ca fiind cantitatea de
informaţie obţinută prin precizarea unei variante din două egal probabile se
numeşte bit (binary digit), cu multiplii:
 1 octet (byte) = 8 biţi
 1 kilo octet = 210 octeţi
 1 Mega octet = 210 ko = 220 octeţi
 1 Giga octet = 210 Mo = 230 octeţi
 1 Tera octet = 210 Go = 240 octeţi
 1 Peta octet = 210 To = 250 octeţi
 1 cuvânt (word) = 16 / 32 / 64 biţi; lungimea variază în funcţie de tipul
calculatorului.
Principalele propietăţi ale entropiei informaţionale sunt:

P1. Entropia informaţională, fiind măsura informaţiei, este o entitate nenegativă:

H(p1, p2, .…, pn)  0.


P2. Dacă pentru un indice i{1, 2, .., n} avem pi =1, atunci entropia
infirmaţională este nulă:

H(p1, p2, .…, pn) = 0.

P3. Entropia unui sistem de evenimente este maximă când evenimentele au


aceeaşi probabilitate de apariţie:

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 39

H(p1, p2, .…, pn)  H(1/n, 1/n, 1/n,…, 1/n).

P4. Evenimentele imposibile nu modifică valoarea entropiei informaţionale a


unui sistem:

H(p1, p2, .…, pn, 0) = H(p1, p2, .…, pn).

P5. Entropia produsului mai multor surse independente de informaţie este egală
cu suma entropiilor fiecărei surse luate separat:

H(X1 x X2 x…Xn) = H(X1) + H(X2) +.. H(Xn).

Produsul mai multor surse de informaţie reprezintă un experiment compus care


constă din realizarea simultană a câte unui eveniment corespunzător fiecărei surse.

P6. Entropia produsului a două surse oarecare X şi Y de informaţie este:

H(X x Y) = H(X) + H(Y/X).

H(Y/X) reprezintă cantitatea medie de informaţie ce se obţine în urma realizării


experimentului Y, condiţionat de experimentul X.

n
H(Y/ X) =  p( xk )H(Y/ xk )
k=1
unde:
 p(xk), probabilitatea realizării evenimentului xk  X ;
 H(Y/xk), entropia experimentului Y, condiţionată de evenimentul xk  X.
m
H(Y/ x k ) =  p( yi / xk ) log2 p( yi / xk )
i =1
iar p(yi/xk) este probabilitatea realizării evenimentului elementar yi  Y (
i = 1 , m ) când s-a realizat evenimentul xk  X ( k = 1, n ).
Dacă X şi Y sunt experimente oarecare sunt respectate proprietăţile:
P7. H(Y/X)  H(Y)
P8. H(X x Y)  H(X) + H(Y)
P9. H(X/Y) = H(Y/X) + H(X) - H(Y)

2.2. Sistem de transmisie a informaţiei


Schema generală a unui sistem de transmisie a informaţiei include:
sursa, canalul (ce poate fi supus perturbaţiilor) şi recepţia (figura 2.1).

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

40 Bazele tehnologiei informaţiei

Figura 2.1. Schema unui sistem de transmisie a informaţiei fără codificare

Fie:
 X mulţimea mesajelor emise de o sursă de informaţie (intrarea sistemului);
 Y mulţimea mesajelor care se recepţionează (ieşirea sistemului);
 p(y/x) probabilitatea de a recepţiona mesajul y  Y când s-a emis x  X.
Sistemul de transmisia informaţiei este format din două mulţimi finite X
şi Y şi o probabilitate condiţionată p(y/x), definită pe Y pentru orice x  X
şi se notează cu [X, p(y/x), Y].
Sursa sistemului de transmisie a informaţiei este reprezentată prin
câmpul de probabilitate {X, x, p(x)}, fiind dată probabilitatea de emisie p(x)
pentru  x  X, astfel încât  p( x )  1 .
x X
Recepţia sistemului de transmisie a informaţiei este reprezentată prin
câmpul de probabilitate {Y, y, p(y)}, fiind dată probabilitatea de emisie p(x)
pentru  x  X, iar probabilitatea de recepţie se calculează prin relaţia:
p( y)   p( x ) p ( y / x ) .
x X
Mediul prin care se propagă semnalele purtătoare de informaţie, de la
sursă la recepţie, se numeşte canalul sistemului de transmisia informaţiei. A
cunoaşte canalul de comunicaţie al unui sistem, revine la a cunoaşte
probabilităţile p(y/x) pentru toate mesajele x  X şi y  Y. Dacă p(y/x) ia
numai valorile 0 sau 1 pentru
orice x  X şi y  Y, asupra canalului nu acţionază perturbaţiile. În caz
contrar, canalul prezintă perturbaţii.
Într-un sistem de transmisia informaţiei [X, p(y/x), Y], având sursa {X, x,
p(x)} şi recepţia {Y, y, p(y)}, expresiile:

H( X )    p(x) log
x X
2 p( x )

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 41

H( Y )    p( y) log
y Y
2 p( y)

reprezintă entropiile câmpului de evenimente de la intrare şi câmpului de


evenimente de la ieşire.
Dacă se notează cu p(x/y) probabilitatea de a se emite mesajul x  X când se
recepţionează y  Y, expresia:

H( X / y)    p( x / y) log 2 p( x / y)
x X
reprezintă cantitatea de informaţie care trebuie emisă de către sursă pentru a
recepţiona mesajul y  Y. Cantitatea medie de informaţie emisă ce este necesară
pentru a recepţiona întreaga mulţime a mesajelor y  Y va fi:

H( X / Y )   p( y) H( X / y) .
y Y

Entropia H(X / Y) se numeşte echivocaţie, fiind măsura echivocului


care există în câmpul de la intrare când se cunoaşte câmpul de la ieşire
(figura 2.2).

Figura 2.2. Reprezentarea grafică a echivocului

În mod asemănător se determină entropia H(Y/X), care se numeşte eroare


medie şi este măsura incertitudinii câmpului de la ieşire când se cunoaşte
câmpul de la intrare (figura 2.3).
Expresia: I(X,Y) = H(X) - H(X/Y) reprezintă informaţia transmisă prin
canal şi se mai numeşte transinformaţie. În lipsa perturbaţiilor p(x/y) = p(y/x)
= 1 sau p(x/y) = p(y/x) = 0 şi H(X/Y) = H(Y/X) = 0.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

42 Bazele tehnologiei informaţiei

Figura 2.3. Reprezentarea grafică a incertitudinii

2.3. Codificarea informaţiei în sistemele de calcul


Conform principiilor de structură şi funcţionalitate, în calculator sunt
recunoscute numai cifrele binare (0 şi 1). Se ştie că informaţia cel mai frecvent este
codificată cu ajutorul cifrelor zecimale, literelor alfabetului (caracterele majuscule
şi minuscule) şi diverse semne speciale. Pentru a putea fi prelucrată şi eventual
transmisă cu ajutorul unui sistem de calcul informaţia va fi codificată binar.
Informaţia şi codificarea sunt entităţi inseparabile.
Fie X={x1, x2, x3,..., xM} mulţimea simbolurilor primare emise de o sursă de
informaţie şi A={a1, a2,..., aD} mulţimea simbolurilor codului folosit. Cu simbolurile:
a1, a2,..., aD se formează un număr M de cuvinte de cod: C = {c1, c2,..., cM}.
Cuvintele de cod sunt succesiuni finite de simboluri ale mulţimii A.
Codificarea este operaţia de stabilire a unei corespondenţe biunivoce între
simbolurile xi  X şi ci  C.

Fie: c1: a1 a2 a3 → x1
c2: a2 a1 a3 → x2
c3: …
Totalitatea cuvintelor ci (i = 1M) formează un cod.
Cu ajutorul simbolurile mulţimii A se pot forma cuvinte cărora să nu le
corespundă elemente din mulţimea X. Acestea sunt cuvinte fără sens. Cuvintele
cărora le corespund simboluri din alfabetul sursei se numesc cuvinte cu sens sau
cuvinte de cod.
Practic, codificarea reprezintă o schimbare în forma de prezentare a
informaţiei, necesară în procesul prelucrării sau transmisiei. În momentul realizării
codificării apare şi problema transformării inverse, ce permite revenirea la forma
iniţială. Aşadar, dacă există funcţia cod:

f:XC

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 43

trebuie să existe şi funcţia inversă:

f-1: C  X.

Operaţia de revenire din mulţimea secvenţelor de cod în mulţimea


simbolurilor primare prin intermediul funcţiei f-1 se numeşte decodificare.
Una din restricţiile necesare realizării codificării o reprezintă lungimea
secvenţei de cod. Numărul de simboluri elementare dintr-un cuvânt reprezintă
lungimea acestuia. Dacă toate cuvintele de cod au aceeaşi lungime, codificarea se
numeşte uniformă.
Stabilirea numărului (NR) de secvenţe distincte de lungime n, ce se pot crea
cu D simboluri elementare, se determină aplicând formula combinărilor cu
repetiţie:
NR = Dn
Pentru realizarea codificării este necesar ca NR  M (M fiind numărul de
simboluri primare ce aparţin lui X). Pentru codificarea informaţiei utilizate într-un
sistem de calcul mulţimea simbolurilor codului este A = {0,1} şi ţinând cont de
relaţia de mai sus avem:
M  2n
Prin logaritmarea relaţiei se va obţine:
log2 M  n
Într-o codificare uniformă lungimea n a secvenţelor de cod trebuie să fie cel
puţin egală cu entropia maximă a sursei.

Când se urmăreşte mărirea eficienţei transmisiunii, cuvintele de cod pot avea


lungimi diferite, astfel încât lungimea medie l a unui cuvânt să fie cât mai mică.
Fie sursa primară X = {x1, x2,..., xM} având probabilităţile de realizare P =
{p(x1), p(x2),..., p(xM)}, iar mulţimea cuvintelor de cod C = {c1, c2,..., cM} cu
probabilităţile PC = {p(c1), p(c2),...,p(cM)} = {p(x1),..., p(xM)}. Lungimile cuvintelor
de cod sunt: L = {l1, l2,...,lM}, li fiind numărul de simboluri din alfabetul codului, care
compun cuvântul ci. Lungimea medie a unui cuvânt de cod se va calcula după
formula:
M
l = p( x i ) li
i =1
Entropia sursei, care este aceeaşi cu entropia cuvintelor codului, va fi:
M
H(X) = H(C) = - p(x i) log 2 p(x i)
i =1
Dacă alfabetul codului este A = {a1, a2,..., aD}, având probabilităţile PA =
{p(a1), p(a2),..., p(aD)}, entropia va fi:
D
H(A) = - 
i =1
p( a i ) log 2 p( a i )  log 2 D

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

44 Bazele tehnologiei informaţiei

Informaţia medie pe cuvânt va fi: H(C) = H(X) = l  H(A) .


Înlocuind pe H(A) prin relaţia precedentă se va obţine:
H(X)
H(X)  l log2 D  l  = lmin
log2 D
Relaţia obţinută arată că lungimea medie l a unui cuvânt de cod are o
margine inferioară egală cu entropia sursei împărţită la valoarea maximă a
entropiei alfabetului codului sau informaţia medie pe un simbol din alfabetul
H(X)
codului nu poate fi mai mare decât valoarea maximă a alfabetului codului
l
H(X)
log2D, adică  log2 D .
l
Pentru realizarea unei codificări se mai ţine seama de:

 Capacitatea codului - reprezintă valoarea maximă a entropiei alfabetului


codului:
Ccod = max H(A) = log2D
 Eficienţa codului este raportul dintre lungimea medie minimă şi lungimea
lmin
medie a unui cuvânt de cod: cod = . Înlocuind l min şi l se va
l
H(X) / log 2 D H(A)
obţine:  cod = =
H(X) /H(A) log 2 D
 Redundanţa codului este mărimea complementară eficienţei:
H(A)
R cod = 1 -  cod = 1 -
H max (A)

2.4. Coduri numerice şi alfanumerice


Codurile în care sunt reprezentate numai numere se numesc coduri numerice,
iar cele în care sunt reprezentate numere, litere şi semne speciale se numesc coduri
alfanumerice.

2.4.1. Coduri alfanumerice

Dintre codurile alfanumerice amintim:


 Codul BCD (Binary Coded Decimal) reprezintă unul din primele coduri
utilizate în tehnica de calcul. O secvenţă de cod are lungimea de şase
biţi/caracter.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 45

 Codul EBCDIC (Extended Binary Coded Decimal Information Interchange


Code) - secvenţele de cod cu o lungime de opt biţi/caracter.
 Standardul ASCII (American Standard Code for Information Interchange) -
secvenţele de cod au o lungime de opt biţi/caracter.
 Standardul Unicode utilizează secvenţe de cod cu lungimea de 16
biţi/caracter. Acest cod a fost conceput să înlocuiască standardul ASCII,
prin intermediul căruia se pot reprezenta maximum 256 (28) caractere.
Codul ASCII este un subset al standardului Unicode. Caracterele de bază
din toate limbile scrise existente pot fi reprezentate prin standardul
Unicode.
Codurile normalizate au fost realizate în aşa fel încât să uşureze modul de
prelucrare a informaţiei. Astfel, partea stângă a codului permite identificarea
imediată a naturii informaţiei codificate (litere, cifre, funcţii), următoarele poziţii ale
codului sunt organizate într-un mod care să uşureze conversia în vederea calculelor
(în cazul cifrelor) sau ordonarea alfabetică (în cazul literelor).

Tabelul 2.1. Coduri alfanumerice

Caracterul Codul ASCII Codul EBCDIC Codul UNICODE

0 0011 0000 1111 0000 (0030)H

1 0011 0001 1111 0001 (0031)H


2 0011 0010 1111 0010 (0032)H
3 0011 0011 1111 0011 (0033)H
…….
9 0011 1001 1111 1011 (0039)H
a 0110 0001 1000 0001 (0061)H
b 0110 0010 1000 0010 (0062)H
…..
z 0111 1010 1010 1001 (007A)H
A 0100 0001 1100 0001 (0041)H
B 0100 0010 1100 0010 (0042)H
…..
Z 0101 1010 1110 1001 (005A)H
LF(line feed) 0000 1010 0010 0101 (000A)H

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

46 Bazele tehnologiei informaţiei

2.4.2. Coduri numerice

Codurile numerice au fost introduse pentru a se opera mai uşor cu informaţia


numerică. Codurile numerice pot fi:
 ponderate;
 neponderate.
Un cod numeric este ponderat dacă unei cifre zecimale îi corespunde o
succesiune de cifre binare, în care fiecare cifră de rang j are asociată o anumită
pondere Pj. Fie N un număr zecimal:
N = zk zk-1 zk-2 .... z0 zi {0, 1, ....9} i = 0, k
Oricare ar fi cifra zecimală zi, aceasta se va reprezenta printr-o secvenţă
binară ce satisface relaţia:
n
zi =  a jP j
j=1
unde: aj{0,1}; Pj constituie ponderea corespunzătoare rangului j -
P j {0,  1,  2, ....9} ; n reprezintă numărul de simboluri din secvenţa binară
asociată cifrei zecimale.
Dintre codurile ponderate amintim (tabelul 2.2):
 Codul 8421, codul binar-zecimal natural, având ca ponderi puterile lui 2
(23, 22, 22, 20).
Tabelul 2.2. Coduri ponderate

Cifra Codul bichinar


Codul 8421 Codul 2421 Codul 8421
zecimală 50 43210
0 0000 0000 0000 01 00001
1 0001 0001 0111 01 00010
2 0010 0010 0110 01 00100
3 0011 0011 0101 01 01000
4 0100 0100 0100 01 10000
5 0101 1011 1011 10 00001
6 0110 1100 1010 10 00010
7 0111 1101 1001 10 00100
8 1000 1110 1000 10 01000
9 1001 1111 1111 10 10000

 Codul 2421 (Aiken), la care codificarea primelor cinci cifre zecimale (04)
este identică secvenţelor din codul 8421. Codificarea cifrei zecimale 5 se
obţine din secvenţa corespunzătoare cifrei zecimale 4 prin schimbarea
simbolurilor binare 0 în 1 şi 1 în 0. Astfel, fiecare complement faţă de 9 al

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 47

unei cifre zecimale se reprezintă printr-o secvenţă ce rezultă


complementând faţă de 1 simbolurile binare din secvenţa cifrei zecimale
respective. Codurile ce au această proprietate se numesc autocomplemen-
tare, prezentând avantaje în efectuarea operaţiilor aritmetice.
 Pentru codul 8421 ponderile sunt puteri ale lui 2, însă două sunt negative.
Este un cod auto-complementar.
 Codul bichinar (50 43210) conţine secvenţe de câte 7 simboluri binare
împărţite în două grupe. Acest cod a fost folosit la primele calculatoare
electronice.
Alte coduri numerice ponderate sunt: 4221, 5421, 7421, 6421 (tabelul 2.3).

Tabelul 2.3. Coduri ponderate ( a doua parte)

Cifra Codul 4221 Codul 5421 Codul 7421 Codul 6421


zecimală
0 0000 0000 0000 0000
1 0001 0001 0001 0011
2 0010 0010 0010 0010
3 0011 0011 0011 0101
4 0110 0100 0100 0100
5 1001 1000 0101 0111
6 1100 1001 0110 1000
7 1101 1010 0111 1011
8 1110 1011 1001 1010
9 1111 1100 1010 1101

Din categoria codurilor neponderate, amintim (tabelul 2.4):


 Codul EXCES 3 a fost realizat de G.Stibitz şi se remarcă prin aceea că:
 este un cod autocomplementar;
 cifrei zecimale zero îi corespunde o secvenţă binară ce conţine cifre
binare de 1.
 Codul Gray se caracterizează prin aceea că două secvenţe de cod
consecutive diferă printr-o singură poziţie binară. Dacă notăm cu: a8, a4, a2,
a1 cifrele binare ale secvenţelor codului 8421, în ordinea ponderilor şi cu
b4, b3, b2 şi b1 cifrele binare ale secvenţelor Gray, în ordinea de la stînga la
dreapta, acestea din urmă pot fi calculate folosind relaţiile: b 8 = a8; b3 = a8
 a4; b2 = a4  a2; b1 = a2  a1.
 Codul "2 din 5" este un cod pseudo-ponderat. Secvenţele de cod pentru
cifrele zecimale 1  9 au asociate ponderile 74210, numai codificarea cifrei

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

48 Bazele tehnologiei informaţiei

zecimale 0 face excepţie de la această regulă. Caracteristica secvenţelor de


cod este aceea că din cele cinci cifre binare două sunt semnificative (au
valoarea 1).

Tabelul 2.4. Coduri neponderate


Cifra Codul Codul 2 din 5
Codul Gray
zecimală Exces 3 (74210)
0 0011 0000 11 000
1 0100 0001 00 011
2 0101 0011 00 101
3 0110 0010 00 110
4 0111 0110 01 001
5 1000 0111 01 010
6 1001 0101 01 100
7 1010 0100 10 001
8 1011 1100 10 010
9 1100 1101 10 100

2.4.3. Coduri de bare

Codurile de bare reprezintă sisteme de codificare prin care se permite


identificarea automată sau semiautomată a diverselor entităţi (legitimaţii, cărţi,
bilete de avion, produse din cele mai variate etc.). Codurile de bare au avantajul de
a fi relativ simple de produs şi recunoscut. Ele pot fi aplicate direct pe orice produs
(pe ambalajul acestuia) sau ulterior, ca etichetă.
Majoritatea codurilor de bare au la bază principiul binar, reprezentarea
făcându-se printr-un număr de linii sau linii şi spaţii cu o anumită lăţime. Secvenţa de
linii sau linii şi spaţii reprezintă un caracter numeric sau alfanumeric. Pentru
exemplificare vom considera codul 2/5 (tabelul 2.5), care este un cod numeric (sunt
reprezentate cifrele de la 0 la 9). Codificarea se face prin trasarea a două linii late şi
trei înguste. Raportul de imprimare linie îngustă/linie lată este de 1/2 sau 1/3.
Spaţiile nu conţin informaţie.
Tabelul 2.5. Codul de bare 2/5

Caracter Linia1 Linia2 Linia3 Linia4 Linia5


1 1 0 0 0 1
2 0 1 0 0 1
3 1 1 0 0 0
4 0 0 1 0 1

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 49

Caracter Linia1 Linia2 Linia3 Linia4 Linia5


5 1 0 1 0 0
6 0 1 1 0 0
7 0 1 0 1 1
8 1 0 0 1 0
9 0 1 0 1 0
0 0 0 1 1 0
start 1 1 0
stop 1 0 1
1: linie lată
0: linie îngustă

Figura 2.4. Reprezentarea numărului 19 prin codul de bare 2/5

Dacă în cazul codului 2 din 5 spaţiile nu conţin informaţie, există şi un cod


asemănător în care densitatea informaţiei reprezentate este mai mare; acest cod se
numeşte “codul 2 din 5 intercalat” iar în acest caz spaţiile conţin informaţii în acelaşi
mod ca şi liniile.
De-a lungul timpului codurile de bare au evoluat, datele putând fi reprezentate
prin dreptunghiuri, pătrate, hexagoane și alte modele geometrice pe două dimensiuni.
Aceste coduri sunt denumite coduri de bare bidimensionale sau coduri 2D. Un cod
bidimensional stochează informațiile atât pe înălțimea, cât și pe lățimea
simbolului. De fapt, toate alfabetele umane sunt codurile bidimensionale.
Modul în care se face asocierea între mesaje și codurile de bare se regăsește
sub denumirea simbologie. De-a lungul timpului, au fost dezvoltate diferite
simbologii pentru a răspunde anumitor cerințe, cum ar fi:
 codificarea datelor numerice sau alfanumerice;
 codificarea unor mesaje de lungime fixă sau variabilă;
 pentru a spori densitatea de stocare a datelor;
 pentru reducerea costurilor de tipărire;
 pentru securizarea datelor;
 pentru o citire rapidă.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

50 Bazele tehnologiei informaţiei

Figura 2.5 Reprezentarea numărului 19 prin codul de bare 2/5 intercalat (genarator cod de
bare: http://online-barcode-generator.com/)

În general, un cod de bare unidimensional permite codificarea a câtorva zeci de


caractere. În prezent sunt utilizate o serie de standarde și formate pentru codurile de
bare. Astfel, sistemul GS11 oferă standarde ale codurilor de bare pentru
identificarea automată a datelor și pentru interschimbarea datelor electronice. În
prima generație s-a remarcat codul de bare EAN/UPC (European Article Number/
Universal Product Code), ce reprezintă un standard international (ISO/IEC
15420:2000) definit pentru identificarea produselor de larg consum în punctele de
vanzare.
În ultimii ani au fost dezvoltate simbolurile GS1 DataBar care pot conține mai
multe informații (cum ar fi data fabricației, a expirării, numărul de lot etc.) și pot
identifica obiecte mici (produse cosmetice, bijuterii etc.) față de codurile de bare
EAN/UPC. În general, în punctele de vânzare, se utilizează următoarele tipuri de
coduri de bare EAN/UPC: EAN-8, EAN-13, UPC-A si UPC-E.
 EAN-13: cod de bare ce se utilizează în comerțul cu amănuntul din Europa; se
pot reprezinta maximum 12 cifre zecimale, la care se adaugă o cifra de control,
cifra din dreapta. (fig. )

Figura 2.6 Codul de bare EAN-13 pentru numărul “110022442345” (generator cod de
bare: http://www.barcode-generator.org/)

 EAN-8: este un cod de bare derivat din EAN-13, se pot reprezenta maximum 7
cifre zecimala, la care se adauga o cifra de control.

1
GS1 este o asociație internațională non-profit cu organizații în peste 100 de țări.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 51

Figura 2.7 Codul de bare EAN-8 pentru numărul “7755331” (generator cod de bare:
http://online-barcode-generator.com/)

 Codul de bare UPC-A: permite codificarea mesajelor numerice cu o lungime


maximă de 11 cifre, fiind generată cifra de control (a douăsprezecea).

Figura 2.8 Codul de bare UPC-A pentru mesajul “9876543210” (generator cod de bare:
http://www.barcode-generator.org/)

 Codul de bare UPC-E: permite utilizarea de coduri de bare UPC de


dimensiune mai mică.

 Code 128: utilizat pe scară larga pentru codificarea tuturor caracterelor ASCII.
Lungimea mesajului poate varia.

Figura 2.9 Codul de bare 128 pentru numărul “110022442345” (generator cod de bare:
http://www.barcode-generator.org/)

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

52 Bazele tehnologiei informaţiei

Figura 2.10 Codul de bare 128 pentru mesajul “Informatica si Cibernetica Economica”
( generator cod de bare: http://www.barcode-generator.org/)

 Codul 39: asigură codificarea unor mesaje de lungime variabilă care conțin:
cifre 0-9, caractere mari A-Z si simboluri speciale: spatiu, minus (-), plus (+),
punct (.), dolar ($), slash (/) și procent (%).

Figura 2.11 Codul de bare 39 pentru mesajul “INFORMATICA” ( generator cod de


bare: http://www.barcode-generator.org/)

Codurile de bare bidimensionale din utilizarea curentă sunt de două tipuri:


coduri de tip stivă (suprapuse) și codurile matriciale.
Codurile de tip stivă sunt constituite din coduri de bare unidimensionale organizate
pe niveluri sau suprapuse (cateva exemple PDF-417, Code 16K sau Code 49).
Formatul este utilizat atunci când lățimea codurilor de bare este o problemă.

 Codul 16K – derivă din codul de bare 128, care este divizat și organizat pe mai
multe niveluri.

Figura 2.12 Codul de bare 16k pentru mesajul “Informatica si Cibernetica Economica”
(generator cod de bare: http://www.barcode-generator.org/)

 Codul PDF-417 – asigură codificarea mesajelor de lungime variabilă, putând


include toate caracterele ASCII.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 53

Figura 2.13 Codul PDF-417 pentru mesajul “Informatica si Cibernetica Economica” (


generator cod de bare: http://www.barcode-generator.org/)

Codurile matriciale asigură codificarea datelor pe baza poziționării unor


elemente geometrice (cum ar fi pătrate negre), de aceeași dimensiune, într-o matrice.
Din categoria codurilor matriciale amintim:
 Maxicode: coduri utilizate pentru sortarea automată a coletelor;
 DataMatrix: coduri de bare folosite pentru codificarea unei cantității mari
de date;
 QR Code: coduri de bare folosite din ce în ce mai mult, în diverse domenii.

a) b) c)
Figura 2.14 a) Simbolul Maxicode, b) simbolul Data Matrix și c) simbolul QR pentru
mesajul “Bucharest University of Economic Studies, Piata Romana 6”

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

54 Bazele tehnologiei informaţiei

2.4.4. Codul QR

Inițial, codurile QR (Quick Response) au fost proiectate pentru a fi utilizate în


industria auto din Japonia. În prezent codurile QR sunt standardizate și folosite pe
larg în domeniul tehnologiei informației. Codurile QR sunt coduri de bare
bidimensionale, care pot fi citite de cititoare dedicate și de telefoane mobile /
smartphone-uri. Pentru a citi un cod QR, telefonul mobil trebuie să aibă în dotare o
cameră video (sau aparat foto) și o aplicație cu rol de cititor de cod QR.

Codurile QR se regăsesc în diverse locuri, cum ar fi reviste și pliante cu


reclame. Un cod QR poate fi utilizat pentru a codifica un URL (Uniform Resource
Locator)2 sau un text. Un cod QR stochează foarte ușor un URL, indiferent de
lungimea sa. Simbolul QR asociat unui URL permite să se elimine o operație
destul de greoaie în cazul dispozitivelor mobile, aceea de introducere a link-ului de
la tastatură. Practic, se lansează în execuție aplicația de citire a codului QR și se
scanează codul cu ajutorul camerei video.

Figura 2.15 Simbolul QR pentru URL-ul: “http://nastasef.ase.ro/bazele-tehnologiei-


informatiei/” (gerator QR: http://www.qrstuff.com/)

În timp ce codurile de bare convenționale (unidimensionale) stochează un


maximum de aproximativ 20 de caractere/cifre, codul QR este capabil să
manipulare de la câteva zeci la câteva sute de ori mai multe date. Simbolul QR

2
Un URL (Uniform Resource Locator) reprezintă o adresă a unei pagini web, fiind
un șir de caractere care constituie o referință la o resursă web; de exemplu:
http://www.ase.ro

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 55

codifică toate tipurile de date, cum ar fi caractere numerice și alfabetice,


pictograme sau ideograme folosite în diverse dialecte japoneze (Kanji, Kana,
Hiragana), simboluri și coduri de control. Un singur simbol poate codifica până la
7089 caractere.

În timp ce codurile de bare convenționale


(unidimensionale) sunt capabile să stocheze
un maxim de aproximativ 20 de caractere,
codul QR este capabil să manipulare de la
câteva zeci la câteva sute de ori mai multe
date.
Codul QR este capabil de manipulare
toate tipurile de date, cum ar fi caractere
numerice și alfabetice, pictograme sau
ideograme folosite în diverse dialecte
japoneze (Kanji, Kana, Hiragana), simboluri
și coduri de control. Până la 7089 caractere
pot fi codificate într-un singur simbol.

Figura 2.16 Simbolul QR asociat unui text (s-a folosit generatorul de la


http://www.qrstuff.com/)

Simbolurile QR se utilizează în aplicații pentru: gestiunea produselor și


confirmarea de comenzi, eliberarea biletelor de călătorie/teatru/cinema, stocarea
informațiilor despre organizațiile comerciale (adresă locație, telefon, fax, e-mail,
URL site) pentru fidelizarea clienților etc.

2.5. Coduri detectoare şi corectoare de erori

Codificarea informaţiei permite rezolvarea unor probleme ce pot apare în


transmisia, stocarea sau prelucrarea acesteia, cum ar fi:
 detectarea şi corectarea erorilor pentru a se asigura integritatea informaţiei;
 compresia pentru minimizarea cantităţii de informaţie;
 criptarea pentru a se garanta securitatea informaţiei.
Codificarea se efectuează având ca scop principal protejarea informaţiei de
perturbaţiile ce pot să apară într-un sistem de transmisie. De aceea, înainte de a
emite simbolurile de informaţie pe canalul de comunicaţie, ce poate fi supus

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

56 Bazele tehnologiei informaţiei

perturbaţiilor, se adaugă o anumită informaţie redundantă, de obicei prin


introducerea unor simboluri suplimentare, numite simboluri de control.
Rolul acestor simboluri de control este acela de a indica utilizatorului
prezenţa erorilor şi chiar să-i dea posibilitatea de a le corecta. Codurile obţinute
astfel, prin mărirea redundanţei, se numesc coduri detectoare şi corectoare de
erori.
În acest caz, schema unui sistem de transmiterea informaţiei este reprezentată
în figura 2.17.

Figura 2.17. Sistem de transmisia informaţiei

Se poate face o clasificare a codurilor detectoare şi corectoare de erori după


modul de prelucrare al simbolurilor. Dacă prelucrările necesare obţinerii proprietăţilor
de detecţie sau de corecţie se fac în blocuri de n simboluri, avem coduri bloc. Dacă
prelucrarea simbolurilor generate de sursă se realizează în mod continuu, avem de-a
face cu coduri convoluţionale (recurente).
Din categoria codurilor bloc se disting:
 codurile grup, secvenţele de cod sunt considerate ca fiind elemente dintr-
un spaţiu vectorial;
 codurile ciclice, secvenţele de cod sunt considerate ca fiind elemente într-o
algebră.

2.5.1. Distanţa de cod

Fie c = [a1,....,an], un cuvânt de cod, conform unei codificări binare ai 


{0,1} pentru  i = 1, n . Notăm cu W mulţimea tuturor cuvintelor (N=2n), care are
o structură de spaţiu vectorial, iar mulţimea cuvintelor cu sens o notăm cu V
(presupunem că NC=2k) ce are o structură de subspaţiu vectorial.
Dacă toate secvenţele care se pot realiza sunt cuvinte de cod (W=V), nu va
exista posibilitatea de a detecta sau corecta erorile ce apar în procesul de transmitere
pe canal. Dacă un cuvânt de cod se modifică prin canal, datorită perturbaţiilor, la
recepţie se va obţine tot un cuvânt de cod, respectiv un cuvânt cu sens.
Pentru a avea posibilitatea de a detecta prezenţa erorilor în secvenţele de cod
recepţionate, mulţimea W a cuvintelor se va divide în două submulţimi: a cuvintele
cu sens (V) şi submulţimea cuvintelor fără sens (F).

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 57

La un anumit grad de redundanţă atribuit unei codificări se pot stabili mai


multe coduri. Dintre acestea nu toate oferă posibilităţi în depistarea erorilor şi
eventual corectarea lor. Codurile care asigură o anumită capacitate de detecţie şi
eventual corecţie cu ajutorul unor redundanţe minime se numesc coduri optimale.
Pentru a realiza codificarea se va lua în calcul parametrul denumit distanţa
de cod (distanţa Hamming). În spaţiul n dimensional al cuvintelor de cod se
introduce funcţia distanţă D(vi,vj) care satisface proprietăţile unui spaţiu metric.
Prin definiţie, funcţia distanţă de cod este:
n
D( vi, vj )   ( aik  ajk ) ,
k 1
unde vi = [ai1, ai2, …, ain] şi vj = [aj1, aj2,…, ajn]
iar “” se referă la adunarea modulo 2 în timp ce “+”, la adunarea în corpul
numerelor reale. Se poate spune că distanţa dintre două cuvinte de cod este egală
cu numărul de simboluri prin care cele două cuvinte se deosebesc.

Exemplul 1.
Să se calculeze distanţa de cod între secvenţele de cod reprezentate în figura
2.6.

Rezolvarea. În figura 2.6-a) toate secvenţele de cod sunt cuvinte cu sens.


Calculând distanţele de cod, avem:

D(v0,v1)=(0  0) + (0  0) + (0  1) = 1
D(v0,v2)=(0  0) + (0  1) + (0  0) = 1
D(v0,v3)=(0  0) + (0  1) + (0  1) = 2
D(v0,v4)=(0  1) + (0  0) + (0  0) = 1
.
D(v0,v7)=(0  1) + (0  1) + (0  1) = 3
D(v1,v2)=(0  0) + (0  1) + (1  0) = 2
.
D(v1,v7)=(0  1) + (0  1) + (1  1) = 2
.
D(v6,v7)=(0  1) + (1  1) + (1  1) = 1

Se constată că: Dmin=1.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

58 Bazele tehnologiei informaţiei

Figura 2.6. Reprezentarea geometrică a secvenţelor de cod


În figura 2.6-b) numai două secvenţe sunt cuvinte cu sens, iar distanţa de
cod va fi:
D(v0,v7)=(0  1) + (0  1) + (0  1) = 3

Probabilitatea de detecţie şi corecţie a unui cod depinde de distanţa minimă


între două cuvinte de cod. Se poate demonstra că pentru un cod ce poate detecta un
număr de e erori existente în una din secvenţele sale, este necesar ca:
Dmin  e + 1
iar pentru a detecta e erori şi a corecta c erori, având c  e, este necesar ca:
Dmin  e + c + 1

Pentru realizarea unor structuri de cod optime se va ţine seama de :


 numărul secvenţelor ce aparţin codului (NC);
 lungimea cuvintelor de cod;
 distanţa minimă de cod (Dmin).
Operaţia de determinare a simbolurilor de control funcţie de simbolurile de
informaţie se numeşte codificare redundantă.

2.5.2. Codul Hamming

Se consideră un spaţiu m-dimensional, denumit spaţiu de corecţie, care are


2m elemente corectori (z). Rolul corectorilor este de a indica poziţiile din cuvintele
de cod în care au apărut erori. Se defineşte operatorul H, ce stabileşte o
corespondenţă univocă între mulţimea tuturor cuvintelor recepţionate şi mulţimea
corectorilor, astfel:
Hvi = z

Dacă vi= vi, atunci Hvi = 0. Structura cea mai simplă pentru operatorul H
se obţine dacă se va considera o transformare liniară, definită prin ecuaţiile:

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 59

h11 a1 + h12 a2 + …. h1n an = em


h21 a1 + h22 a2 + …. h2n an = em-1
.
.
hm1 a1 + hm2 a2 + …. hmn an = e1

unde:
 hij - parametrii care determină transformarea H;
 ai - simbolurile cuvântului recepţionat;
 ei - elementele corectorului z.

Ecuaţiile se pot scrie sub formă matricială utilizând notaţiile:

 h11 h12 h1n 


 h 21 h 22 h 2n 
H   - este matricea de control;
 
 
 hm1 hm 2 hmn 
 em 
 
v =  a1 a2 … an  - cuvânt recepţionat şi z    - cuvânt corector.
 e2 
 
 e1 

Folosind aceste notaţii putem scrie: H vT = z, iar în cazul când v = v vom
avea:

H vT = 0

Aceasta este relaţia care se va folosi pentru determinarea celor m simboluri


de control, în funcţie de simbolurile generate de sursa de informaţie (în număr de
k). Operaţia prin care se determină valorile simbolurilor de control în funcţie de
simbolurile generate de sursa de informaţie se numeşte codificare redundantă.
Codul Hamming asigură detecţia şi corecţia unei singure erori. Pentru a
indica poziţia erorii într-unul din cele n simboluri ale cuvântului de cod sau pentru
a indica absenţa erorilor este necesar ca numărul corectorilor 2m  n + 1. Cum n = k
+ m, o să avem:
2m  m + k + 1.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

60 Bazele tehnologiei informaţiei

Aceasta este relaţia prin care se determină numărul m al simbolurilor de


control când se cunoaşte numărul k al simbolurilor de informaţie, în cazul corecţiei
unei singure erori.
Codul Hamming este caracterizat de o matrice de control Hm,n, în care
coloana hi este reprezentarea binară a numărului i.
H = [h1h2....hn]
Se consideră cuvântul eroare, cu o singură poziţie eronată:
e=[0,...,j,...0] (j=1)
Dacă se transmite mesajul vi se va recepţiona :
v`i=vi  e (perturbaţie aditivă)
Corectorul corespunzător va fi:
T T
z = H v  = H ( vi  e ) T = H v  H eT
i i
T
Deoarece H v = 0 - este relaţia ce se foloseşte pentru determinarea celor n
i
simboluri de control, vom avea:
0
 
.
.
 
z = H e T = [h1 h 2 ..... h j .... h n ]  j = h j
.
 
.
0
 

Aşadar, corectorul este reprezentarea binară a numărului j, indicând poziţia


în care există eroarea.
Pentru a simplifica operaţia de calcul a celor m simboluri de control, acestea
se vor alege astfel încât să corespundă vectorilor coloană hi cu o singură
componentă diferită de 0.
Notând cu ci simbolurile de control şi cu aj pe cele de informaţie, vectorul
cuvânt de cod va fi: v=[c1c2a3c4....an].
T
Ţinând seama de relaţia H v  0 obţinem:
i

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 61

 c1   0 0 . . . . 1  c1 
c   0 . . . . . 1 c 
 2    2
 a3 ........ .
[h1 h 2 .... h n ]   = 0 sau     = 0
. ........ .
. 0 1 . . . . .  .
     
a n  1 0 . . . . 1 a n 

relaţie echivalentă cu m ecuaţii în care simbolurile c1, c2, … intervin o singură


dată:

 c1  a3  a5 ..... a n = 0

c2  a3  a6 ..... a n = 0
 .
 .

 cm  a m+1 ....... a n = 0

Ştiind că 0  0 = 0 şi 1  1= 0 se vor determina simbolurile de control c1,


c2,...,cm.
La recepţionarea fiecărui cuvânt de cod v' se calculează corectorul prin
utilizarea relaţiei:

 c1' 
e m   '
.   c2 
z = H v =   = [h1...... h n ]  . 
,T
 e2   
  .
 e1  a ' 
 n

În mod analog calculului anterior şi ţinând seama de structura matricii de


control H se va obţine:
 e1 = c1'  a 3' ..... a 'n

 .................
e
 m = c m  a m 1 ...+ a n
' ' '

Numărul binar (em.....e2,e1) se decodifică şi se obţine poziţia erorii, conform


relaţiei de mai sus (z = hj).

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

62 Bazele tehnologiei informaţiei

Vom particulariza pentru k=4, numărul simbolurilor de informaţie.


Din relaţia: 2m  m + k + 1, avem că 2m  5 + m, de unde se va obţine m 
3. Considerând m=3 vom avea n = m + k = 7.
Matricea de control este: H3,7=[h1h2.....h7], iar vectorul cuvânt de cod va fi:
v=[c1c2a3c4a5a6a7].

Aplicând relaţia HvT=0 vom avea:


 c1 
 
c2 
0 0 0 1111 a 3 
0 11 0 0 11  
  c4  = 0
1 0 1 0 1 0 1 a 5 
 
a 6 
a 7 
 
Prin efectuarea calculelor se obţine:

c4  a5  a 6  a 7 = 0 c4 = a5  a 6  a 7
 
c2  a3  a 6  a 7 = 0  c2 = a3  a 6  a 7
c  a  a  a = 0 c = a  a  a
 1 3 5 7  1 3 5 7

Calcularea corectorului la recepţie se face prin relaţia:


 c1' 
 
c '2 
 
e 4  0 0 0 1 1 1 1  a '3 
     ' 
e 2  = 0 1 1 0 0 1 1 c 4 
 e1  1 0 1 0 1 0 1  ' 
a 5 
 ' 
a 6 
 ' 
a 7 
Efectuând calculele se va obţine:

e4 = c '4  a 5'  a '6  a '7



e2 = c '2  a 3'  a '6  a '7
 e = c'  a '  a '  a '
 1 1 3 5 7

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 63

Combinaţia binară (e4,e2,e1)2 decodificată indică poziţia eronată. Codul


Hamming poate corecta erorile simple însă nu poate corecta nici o eroare dublă.

Exemplul 2. Să se determine secvenţele codului Hamming corespunzătoare


cifrelor zecimale 7, 8 şi 9 ştiind că în codificarea primară s-a folosit codul 8421.
Este respectată condiţia distanţei minime?

Rezolvarea. Pentru calcularea cifrelor de control c1,c2,c4 din secvenţele


codului Hamming (tabelul 2.6) se utilizează relaţiile obţinute anterior.

Tabelul 2.6. Secvenţele de cod

Cifra Secvenţele codului


zecimală
8421 Hamming (calculate)

a3 a5 a6 a7 c1 c2 a3 c4 a5 a6 a7

7 0 1 1 1 0 0 0 1 1 1 1

8 1 0 0 0 1 1 1 0 0 0 0

9 1 0 0 1 0 0 1 1 0 0 1

Deoarece codul Hamming detectează şi corectează o singură eroare va fi


necesar ca Dmin  3. Vom calcula distanţa minimă în raport cu secvenţele codului
Hamming obţinute:
D(v7,v8)=(0  1) + (0  1) + (0  1) + (1  0) + (1  0) + (1  0) + (1  0) =
7
D(v7,v9)=3
D(v8,v9)=4
Condiţia distanţei minime de cod este respectată, Dmin =3.

Exemplul 3. Fie mesajul recepţionat (1111000)2.


a) Ştiind că reprezintă o secvenţă a codului Hamming, să se verifice
corectitudinea lui. În caz de eroare, presupunând că o singură poziţie este eronată, să
se asigure corecţia.
b) Cărei cifre zecimale îi corespunde mesajul corectat, dacă într-o primă
codificare a fost folosit codul 8421.

Rezolvarea.
Apelând la relaţiile:

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

64 Bazele tehnologiei informaţiei

e4 = c '4  a '5  a '6  a '7



e2 = c '2  a '3  a '6  a '7
 e = c'  a '  a '  a '
 1 1 3 5 7

vom calcula (e4, e2, e1) având:


c'1 c'2 a'3 c'4 a'5 a'6 a'7
1 1 1 1 0 0 0

 e4 = 1  0  0  0 = 1

e2 = 1  1  0  0 = 0
e = 1  1  0  0 = 0
 1
Deoarece (e4,e2,e1)  (0,0,0) - mesajul recepţionat este eronat. Se poate face
corecţia dacă se presupune că o singură cifră binară a mesajului a fost modificată.
Poziţia cifrei eronate se obţine prin decodificarea secvenţei (e4,e2,e1)=(100)2 
(4)10  cifra c'4 devine 0.
Mesajul corect este 1110000  acesta corespunde cifrei zecimale 8.
Valoarea cifrei transmise s-a obţinut prin decodificarea cifrelor binare: a'3 a'5 a'6 a'7.

2.5.3. Coduri liniare cu control încrucişat

Un alt model de cod binar utilizat frecvent constă din structurarea


informaţiei pe blocuri de secvenţe de cod şi ataşarea unui bit de control, o dată
fiecărei secvenţe şi altă dată la fiecare coloană ce conţine biţii de acelaşi rang din
toate secvenţele.
Un astfel de control se numeşte prin paritate încrucişată. Blocul de
informaţie codificată ce se va emite este:

Simboluri Controlul liniei


informaţionale

a11 a12 ....a1n l1


............ .
............ .
am1 am2 ....amn lm

Control coloană c1 c2.......cn


unde:

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 65

 n
  a ik realizează paritatea pară
k =1
li =  n
 a ik  1 realizează paritatea impară

(i =1, m )

k =1

şi se numeşte paritate laterală sau transversală, iar


m
 a kj realizează paritatea pară
k =1
cj =  m
 a kj  1 realizează paritatea impară
 
(j=1,n )

k =1

şi se numeşte simbol de paritate longitudinală.


Controlul erorilor pe principiul parităţii încrucişate poate conduce la:
 depistarea erorilor atât prin paritate transversală cât şi prin paritate
longitudinală;
 depistarea numai prin paritate transversală sau longitudinală;
 erorile să nu fie depistate.
Blocul de informaţie ce se recepţionează va fi:

Simboluri Controlul liniei


informaţionale
a'11 a'12 …………..a'1n l'1
a'21 a'22 …………..a'2n l'2
……………………… .
………………………. .
a'm1 a'm2 …………..a'mn l'm
Control coloană c'1 c'2 ………………c'n c'n+1

La recepţie se vor calcula:


n
lic =  a ik [  1] , i = 1, m
k =1
şi
m
c jc =  a kj [1] , j = 1, n
k=1
folosind acelaşi tip de paritate ca la emisie.
Comparând parităţile recepţionate cu cele calculate, se poate afirma că blocul
de informaţie a fost transmis:
 fără erori dacă l'i = l ic pentru  i  1, m şi c'j = cjc pentru  j  1, n ;

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

66 Bazele tehnologiei informaţiei

 cu erori dacă  i{1, 2,…, m} astfel încât l'i  lic sau  j{1, 2,…, n}
astfel încât c'j  cjc.

Exemplul 4. Ştiind că într-o transmisie de date se utilizează detectarea


erorilor prin paritate încrucişată, care este blocul de informaţie ataşat emisiei
cifrelor zecimale de la 4 la 9, codificate primar cu ajutorul codului EXCES 3. O
secvenţă este reprezentată prin codificarea unei singure cifre zecimale.

Rezolvarea
Informaţia transmisă

Cifra zecimală Secvenţa Simbolurile informaţionale Control


EXCES 3 linie
x1 x2 x3 x4

4 S1 0 1 1 1 1

5 S2 1 0 0 0 1

6 S3 1 0 0 1 0

7 S4 1 0 1 0 0

8 S5 1 0 1 1 1

9 S6 1 1 0 0 0

Control coloană 1 0 1 1 1

Exemplul 5. Cunoscând că a fost transmis un bloc de date în condiţiile


exemplului 4 şi s-a recepţionat:
0 1 1 0 1
1 0 0 0 1
1 0 0 1 1
1 0 1 0 0
1 0 1 1 1
1 1 0 0 0
1 0 1 1 1
Să se verifice corectitudinea recepţiei.

Rezolvarea.
Informaţia recepţionată li calculat
x'1 x'2 x'3 x'4 l'i 0
S1 1

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 67

S2 0 1 1 0 1 0
S3 1 0 0 0 1 0
S4 1 0 0 1 1 1
S5 1 0 1 0 0 0
S6 1 0 1 1 1
1 1 0 0 0
C'j 1 0 1 1 1 1
Cj calculat 1 0 1 0 0

Avem: l'1  l1 calculat şi l'3  l3 calculat;


c'4  c4 calculat şi c'5  c5 calculat.

Erorile sunt în secvenţele: S1 şi S3 pe poziţiile x'4 şi l'1.

2.5.4. Coduri polinomiale ciclice

Codurile ciclice sunt coduri bloc în care cele n+1 simboluri ce formează o
secvenţă de cod sunt considerate ca fiind coeficienţii unui polinom de grad n şi
anume:
M(x) = anxn +an-1xn-1 +……+a0
unde ai {0, 1} , i  1, n .
Codurile polinomiale ciclice au proprietatea: dacă M = (an,an-1,....a0) este un
cuvânt cu sens, atunci orice permutare ciclică a simbolurilor sale este un cuvânt cu
sens M1 = (ai,ai-1,....,a0anan-1,....,ai+1). Mulţimea tuturor cuvintelor formează o
algebră, iar mulţimea cuvintelor cu sens formează un ideal.
În cazul utilizării codurilor polinomiale ciclice, mesajului M ce se va
transmite i se asociază polinomul M(x) şi apoi printr-un algoritm de codificare se
transformă într-un polinom T(x), astfel încât T(x) să fie multiplul al polinomului
G(x), numit polinomul de generare.
Pentru realizarea codificării se pot utiliza algoritmul de înmulţire sau
algoritmul de împărţire.
Folosind algoritmul de înmulţire: T(x) = M(x)G(x) (operaţiile de înmulţire
şi adunare ale coeficienţilor polinoamelor se fac în modulo 2) nu se obţine o
separare a simbolurilor redundante de cele informaţionale, acesta fiind principalul
motiv pentru care se preferă algoritmul de împărţire, deşi este ceva mai complicat.
Algoritmul de codificare prin împărţire este:
 Fie mesajul M: (an,an-1,.....,a0), care cuprinde n+1 cifre binare
informaţionale. Acestuia i se asociază un polinom în nedeterminata x:

M(x) = anxn +an-1xn-1 +……+a0 ( ai {0, 1} , i  1, n );


 Se alege polinomul G(x) de grad r, acesta fiind polinomul de genarare al
codului:

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

68 Bazele tehnologiei informaţiei

G(x) = brxr + br-1xr-1 +…..+ b0, bj {0, 1}, j  1, r ;


 Înmulţind M(x) cu xr se va obţine M'(x)=M(x)xr
 Se împarte M'(x) la G(x):
M (x) R(x)
= C(x) 
G(x) G(x)
Gradul polinomului R(x) va fi mai mic, cel mult egal cu r-1. Coeficienţii
polinomului R(x), de grad r-1, constituie simbolurile de control asociate mesajului
informaţional.
 Se adună R(x) cu M'(x) obţinâdu-se polinomul T(x) = M'(x)  R(x).
Coeficienţii polinomului T(x) constituie mesajul ce se va transmite:
T: (anan-1....a0cr-1.....c0)
care conţine în poziţiile semnificative cele n+1 simboluri informaţionale iar
în poziţiile mai puţin semnificative cele r simboluri de control.

Polinomul ataşat mesajului transmis este un multiplu al polinomului de


generare. Avem:

T(x) M (x)  R(x) M (x) R(x)


= = 
G(x) G(x) G(x) G(x)

M (x) M (x) R(x)


Înlocuind prin relaţia = C(x)  se va obţine:
G(x) G(x) G(x)

T(x) R(x) R(x)


= C(x)   = C(x)
G(x) G(x)
 G(x)

0

Cu alte cuvinte, polinomul T(x) este divizibil prin G(x). Această proprietate
este folosită drept criteriu pentru detecţia erorilor.
La recepţie se verifică divizibilitatea polinomului ataşat mesajului
recepţionat prin polinomul de generare. Dacă T' este mesajul recepţionat,
polinomul asociat acestuia va fi T'(x). Putem scrie că T'(x)=T(x)  E(x), unde
E(x) este polinomul erorilor. Aplicând criteriul de detecţie a erorilor, obţinem:
T (x) T(x)  E(x) T(x) E(x) E(x)
= =  = C(x) 
G(x) G(X) G(x) G(x) G(x)
Se observă că dacă E(x) este multiplu al lui G(x) mesajul recepţionat este
validat, deşi conţine erori. Dacă E(x) nu este multiplu al lui G(x), atunci eroarea
este sesizată.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 69

Prin această metodă sunt determinate toate pachetele de erori de lungime mai
mică decît gradul lui G(x)+1. Se numeşte pachet de erori o succesiune de
simboluri, corecte sau eronate, în care primul şi ultimul simbol sunt eronate.

Exemplul 6. Mesajul binar M: 1110101 se transmite după codificarea prin


polinomul de generare G(x) = x3 + x + 1. Care este reprezentarea binară a
mesajului transmis?
Rezolvarea.
Mesajului binar M : 1110101 se asociază polinomul M(x):
 M(x) = x6 + x5 + x4 + x2 + 1;
 Se calculează M'(x) = M(x)x3 ; deoarece gradul lui G(x) este 3;
 M'(x) = x9 + x8 + x7 + x5 + x3
 Se împarte M'(x) la G(x):

M (x) R(x)
= C(x) 
G(x) G(x)

x9 + x8 + x7 + x5 + x3 |x3 + x + 1
|---------
x9 + x7 + x6 |x6 + x5 + 1
-----------------------
/ x8 + x 6 + x 5 + x 3
x8 + x6 + x5
------------------------
/ / / x3
x3 + x + 1
-----------
/ x+1
(Adunarea şi scăderea în modulo 2 sunt echivalente)

R(x) = x + 1

Se obţine polinomul T(x) = M'(x)  R(x)

T(x) = x9 + x8 + x7 + x5 + x3 + x + 1
Coeficienţii acestui polinom reprezintă mesajul ce se va transmite:

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

70 Bazele tehnologiei informaţiei

Exemplul 7. Ştiind că mesajul recepţionat T' : 1010101011 a fost transmis


după codificarea prin polinomul de generare G(x) = x3 + x + 1, să se verifice
corectitudinea lui.

Rezolvarea. Mesajului recepţionat T' se asociază polinomul:


T'(x) = x9 + x7 + x5 + x3 + x + 1.
Prin aplicarea criteriului de detecţie a erorilor se obţine:

T (x) T(x)  E(x) E(x)


= = C(x) 
G(x) G(x) G(x)

x9 + x7 + x5 + x3 + x + 1 | x3 + x + 1
|--------------------
x9 + x7 + x6 | x6 + x3 + x2 + x + 1
----------------------------------------
/ / x 6 + x5 + x3 + x + 1
x6 + x 4 + x 3
------------------------------
/ x5 + x 4 + x + 1
x5 + x 3 + x 2
--------------------------
/ x 4 + x3 + x 2 + x + 1
x4 + x2 + x
---------------------
/ x3 + 1
x3 + x + 1
-----------------
/ / x /
Aşadar, mesajul recepţionat este eronat deoarece E(x)  0.

2.6. Probleme rezolvate


Problema 1.
O sursă de informaţie emite cifrele sistemului de numeraţie octal. Să se calculeze
cantitatea medie de informaţie obţinută în urma emiterii unei cifre ştiind că:

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 71

a) toate cifrele au aceeaşi probabilitate de a fi emise;


b) probabilităţile de emitere a cifrelor sunt:
p(0) = p(1) =1/4, p(2) = p(3) = p(4) =1/8, p(5) =1/16, p(6) = p(7) =1/8
Rezolvarea.
Notăm cu X şi Y cele două experimente, având repartiţiile probabilităţilor:
 x 0 x1 x 2 x 3 x 4 x 5 x 6 x 7 
a) X   
1 / 8 1 / 8 1 / 8 1 / 8 1 / 8 1 / 8 1 / 8 1 / 8 

 y y1 y2 y3 y 4 y5 y6 y7 
b) Y   0 
1 / 4 1 / 4 1 / 8 1 / 8 1 / 8 1 / 16 1 / 32 1 / 32 

Prin xi, respectiv yi , (i = 0,7 ) s-au notat evenimentele emiterii unei cifre
octale.
 pi  0  i = 1, n

În contextul unui sistem complet de evenimente  n




i =1
pi = 1

se poate aplica formula entropiei informaţionale.


7
1
a) H( X ) = H(p0 , p1 , p 2 ,.., p7) = -  p log
i=0
i 2 pi = - log 2 = 3 bi ţ i
8
b)
7
H(Y) = H(p 0 , p1 ,.., p 7 ) = -  pi log 2 pi =
i=0

1 1 1 1 1 1 1 1
= 2  log 2  3  log 2   log 2  2  log 2 =
4 4 8 8 16 16 32 32
9 4 10 43
= 1+ + + = bi ţ i = 2,625 biţi
8 16 32 16
Comparând rezultatele obţinute în situaţiile a) şi b) se constată că proprietatea
P3 este verificată.

Problema 2.
Să se determine valorile parametrilor x, y şi z astfel încât entropia
experimentului A, având repartiţia probabilităţilor:

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

72 Bazele tehnologiei informaţiei

 a1 a2 a3 
A =  
 x+ y y+ z z+ x 
să fie: a) maximă; b) minimă.

Rezolvarea.
a) Entropia informaţională este maximă când evenimentele sunt echiprobabile
(P3). Prin urmare se poate scrie:

x+ y = y+ z


 y+ z = z+ x
 3
2 x+ 2 y+ 2 z = 1 sa considerat  pi = 1

 i =1

Rezolvând sistemul se va obţine: x = y = z = 1/6


b) Din proprietatea P1 avem că H(A) > 0, aşadar valoarea minimă a entropiei este
zero. H(A) = 0 dacă există un eveniment sigur (pi=1) – proprietatea P2. Din
relaţia asociată unui sistem complet de evenimente:
 pi  0  i = 1, n

 n




i =1
pi = 1

rezultă că dacă un eveniment este sigur (pi=1), celelalte evenimente vor fi


imposibile (pk=0; ki). Aşadar vor exista trei situaţii distincte ce corespund unei
entropii minime:
 x+ y = 1

b1.  y+ z = 0  x =
1 1 1
y= z=-
 z+ x = 0 2 2 2

 x+ y = 0
b2.  1 1
 y+ z = 1  x = - y = z =
1
 z+ x = 0 2 2 2

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 73

 x+ y = 0
 1 1 1
b3.  y+ z = 0  x = y=- z=
 z+ x = 1 2 2 2

Problema 3.
Fie numărul 2007 codificat primar la sursă prin BCD împachetat. Să se
determine blocul de date ce va fi transmis, ştiind că fiecare cifră a numărului
reprezintă o secvenţă implicată în codificarea prin coduri liniare cu control
încrucişat, paritate impară.

Rezolvarea.
Reprezentarea numărului 2007 în BCD este:
Cifrele numărului 2 0 0 7
Reprezentarea cifrelor în BCD 0010 0000 0000 0111

Aranjăm biţii pentru codificare prin paritate impară şi calculăm cifrele de


control pe linie (paritatea transversală) şi coloană (paritatea longitutinală) ca în
tabelul de mai jos. BI reprezintă biţii de informaţie, BCL biţii de control pe linie iar
BCC biţii de control pe coloană.

BI BCL Ca atare, blocul de date transmis este:


0010 0 00100
0000 1 00001
BI

0000 1 00001
0111 0 01110
BCC 1010 1
10101

Problema 4.
A fost recepţionată secvenţa de biţi (010111101011111101000101)2. Ştiind că
la emisie s-a utilizat codificarea prin paritate încrucişată pară, iar fiecare al 6-lea bit
este bit de control, să se determine corectitudinea mesajului recepţionat şi biţii de
informaţie.

Rezolvarea.
Vom scrie mesajul binar sub forma unei matrice de biţi cu 6 elemente pe linie,
al şaselea element fiind obligatoriu bit de control:

BIrecepţionat BCLrecepţionat
01011 1
10101 1
11110 1

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

74 Bazele tehnologiei informaţiei

00010 1

Prin urmare, avem ca biţi de control b6, b12, b18, b24 şi implicit b19, b20, b21,
b22, b23. Vom recalcula biţii de control la recepţie, aşa cum reiese din tabelul
următor:

BIrecepţie BCLrecepţie BCLcalculat 01


la recepţie 011
01011 1 1 10
10101 1 1 101
11110 1 0 11
BCCrecepţie 00010 1 1 100
BCCcalculat la recepţie 00000 00
010
Verificarea la recepţie Mesajul
corectat

Observăm că paritatea transversală calculată la recepţie, pentru a treia secvenţă,


este diferită de paritatea transversală recepţionată. De asemenea paritatea
longitudinală calculată la recepţie, pentru coloana a patra, este diferită de paritatea
longitudinală recepţionată. Prin urmare ajungem la concluzia că bitul aflat pe linia
3, coloana 4 este greşit şi îi vom schimba valoarea din 1 în 0.

Problema 5.
Fie numărul 128 codificat primar la sursă prin BCD împachetat. Să se determine
secvenţa codului Hamming asociată acestui număr.

Rezolvarea.
În primă instanţă vom reprezenta numărul 128 în BCD împachetat:
128 = (0001 0010 1000)2
Avem un număr k=12 de biţi de informaţie. Fie m numărul de biţi de control şi
n numărul total de biţi ai unei secvenţe a codului Hamming. Din relaţia:
2mn+1  2mm+k+1  2mm+13  m=5
Prin aplicarea relaţiei de codificare HvT=0 vom avea:

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 75

 c1 
 
 c2 
 a3 
 
 c4 
 a5 
 
 a6 
00000000000000011   a7 
00000001111111100   
   c8 
00011110000111100   =0
   a9 
 01100110011001100  a10 
 10101010101010101   
 a11
a12 
 
a13 
a14 
 
a15 
 
 c16 
a17 
c1 c2 a3 c4 a5 a6 a7 c8 a9 a10 a11 a12 a13 a14 a15 c16 a17 este secvenţa codului
Hamming, unde:
a3 a5 a6 a7 a9 a10 a11 a12 a13 a14 a15 a17
0 0 0 1 0 0 1 0 1 0 0 0

Cifrele de control se vor determina prin rezolvarea sistemului:

c1  a3  a5  a7  a9  a11  a13  a15  a17  0


c  a  a  a  a  a  a  a  0
 2 3 6 7 10 11 14 15

 4
c  a 5  a6  a7  a12  a13  a14  a15  0 De unde rezultă că:
c  a  a  a  a  a  a  a  0
8 9 10 11 12 13 14 15

c16  a17  0
c1  1
c  0
 2
c4  0
c  0
 8
c16  0

Ca atare secvenţa codului Hamming va fi:


c1 c2 a3 c4 a5 a6 a7 c8 a9 a10 a11 a12 a13 a14 a15 c16 a17
1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0

Problema 6.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

76 Bazele tehnologiei informaţiei

Să se verifice dacă secvenţa codului Hamming recepţionată: (B2C)H este corectă.


Presupunând că s-a produs cel mult o eroare să se determine mesajul iniţial
transmis ştiind că este reprezentat la sursă în binar.

Rezolvarea.
Mesajul recepţionat (B2C)H are următoarea formă în binar: 1011 0010 1100.
Vom descrie acest şir de biţi conform notaţiilor dintr-o secvenţă a codului
Hamming (cifrele de control corespund ca poziţie coloanelor din matricea de
control cu o singură componentă diferită de zero):

c1' c '2 a 3' c '4 a 5' a '6 a '7 c 8' a 9' '
a10 '
a11 '
a12
1 0 1 1 0 0 1 0 1 1 0 0

Pentru a verifica dacă secvenţa recepţionată este corectă se aplica relaţia:


Hv’T = z.
 c1' 
 ' 
 c2 
 a' 
 3
 c'4 
 ' 
 000000011111  a5  e 4 
 000111100001  '   
   a 6   e3 
011001100110  a'  e 2 
   7  
101010101010   c8'   e1 
 ' 
 a9 
 ' 
 a10 
a ' 
 11 
a12
'


Elementele corectorului se obţin din sistemul:


c'1 a'3 a'5 a'7 a'9 a'11  e1 e1  0
c' a' a' a' a' a'  e e  1
 2 3 6 7 10 11 2  2
 Înlocuind valorile obţinem: 
c'4 a'5 a'6 a'7 a'12  e3 e3  0
c'8 a'9 a'10 a'11 a'12  e 4 e 4  0

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 77

În situaţia în care s-a înregistrat cel mult o eroare, prin decodificarea


corectorului (0010)2 se găseşte poziţia eronată. Prin urmare eroarea este pe bitul
c '2 , iar secvenţa corectă va fi:
c1' c '2 a 3' c '4 a 5' a '6 a '7 c 8' a 9' '
a10 '
a11 '
a12
1 1 1 1 0 0 1 0 1 1 0 0
Cifrele de informaţie sunt:
a 3' a 5' a '6 a '7 a 9' '
a10 '
a11 '
a12
1 0 0 1 1 1 0 0

Prin urmare mesajul iniţial în binar este: N= (10011100)2, iar în sistemul


zecimal va fi: N= 27 + 24 + 23 + 22 = 128 + 16 + 8 +4 = 156

Problema 7.
Un receptor primeşte mesajul (AABB)H. Să se verifice corectitudinea mesajului,
ştiind că pentru codificarea datelor s-a folosit polinomul de generare G(X) =
X4X2X1.
Rezolvarea.
Mesajul (AABB)H are ca reprezentare binară secvenţa: (1010101010111011) 2
Polinomul asociat mesajului recepţionat este:
T’(x)= x15x13x11x9x7x5x4x3x1
Vom verifica corectitudinea mesajului recepţionat împărţind polinomul T’(x) la
polinomul de generare; dacă T’(x) este divizibil prin G(x) se poate afirma că
mesajul recepţionat este corect.

x15x13x11x9x7x5x4x3x1 x4 x2x1


x15x13 x12 x11
x11x8x6x2x
x x  x  x
12 9 7 5

x12x10 x9 x8

x10x8 x7 x5
x10x8 x7 x6

x6x5 x4 x3 x 1


x6 x4 x3 x2

x5 x2 x 1
x5 x3 x2 x

x31

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

78 Bazele tehnologiei informaţiei

Prin urmare R(x) = x31  0, ceea ce înseamnă că mesajul recepţionat este cu


erori şi se solicită retransmisia acestuia.

Problema 8.
Să se determine mesajul binar transmis după codificarea numărului (A02F)H
prin polinomul de generare G(x) = x4x1

Rezolvarea.
Mesajul iniţial reprezentat în binar este: (1010 0000 0010 1111) 2.
Polinomul asociat mesajului va fi:
M(x)=x15x13x5x3x2x1, iar gradul polinomului de generare G(x) este
4.
M(x)= M(x) x4  M(x)= x19x17x9x7x6x5x4
Efectuăm împărţirea lui M(x) la G(x) şi vom determina polinomul cât C(x) şi
polinomul rest R(x).
x19x17x9x7x6x5x4 x4x1
x19x16 x15
x15x13x12x11x10x6x5x21
x x  x
17 16 15

x17x14 x13

x16x15 x14 x13


x16x13 x12

x15x14 x12
x15x12 x11

x14x11
x14x11 x10

x10x9 x7 x6
x10x7 x6

x9x5 x4
X9x6 x5

x6x4
X6x3 x2

x4x3 x2
x4x 1

x3x2 x 1

Construim T(x)= M(x)R(x)= x19x17x9x7x6x5x4 x3x2 x 1 


T:(10100000001011111111)2 reprezintă mesajul binar transmis.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Elemente de teoria transmisiei informaţiei 79

2.7. Probleme propuse

1. Să se determine valorile parametrilor x, y şi z astfel încât entropia


experimentului E, având repartiţia probabilităţilor:

 e1 e2 e3 
E =  
x y  z y  z z 
să fie: a) maximă; b) minimă.
2. Care este cantitatea medie de informaţie obţinută prin emisia unei cifre a
sistemului octal dacă cifrele impare au probabilitatea de apariţie de două ori mai
mare decât cele pare?
3. O sursă primară de informaţie emite 157 de simboluri. Ştiind că se realizează
o codificare binară uniformă, să se determine lungimea minimă a unei secvenţe de
cod (în biţi).
4. a) Determinaţi secvenţele codului Hamming corespunzătoare cifrelor
zecimale 0, 1, 2, 3 şi 4 ştiind că în codificarea primară s-a utilizat:
a1) codul 8421;
a2) codul EXCES 3;
a3) codul 2421;
a4) codul Gray;
a5) codul 4221.
b) Cunoscând că prin codul Hamming se asigură detecţia şi corecţia unei
singure erori, să se verifice dacă secvenţele de cod obţinute la punctul a) respectă
condiţia distanţei minime.
5. Ştiind că mesajele recepţionate:
a) (1001111)2
b) (1101111)2
c) (0011111)2
d) (0011011)2
e) (1110000 )2
reprezintă secvenţe ale codului Hamming, să se verifice corectitudinea lor. Dacă
este posibil să se asigure corecţia. Căror cifre zecimale corespund mesajele
corectate, dacă într-o primă codificare s-a folosit codul 8421?

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

80 Bazele tehnologiei informaţiei

6. Mesajul M: (101101101)2 se emite după codificarea cu polinomul de


generare G(x) = x4 + x2 + x + 1. Care este reprezentarea binară a mesajului
transmis?
7. Reprezentarea în sistemul binar a numărului zecimal 67 se va transmite
după codificarea polinominal ciclică prin polinomul de generare G(x) = x2 + x + 1.
Care este mesajul binar transmis ?
8. Verificaţi corectitudinea mesajului (10100110101001)2 recepţionat, ştiind
că la emisie a fost codificat cu polinomul de generare G(x) = x4 + x2 +1.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Bazele tehnologiei informației Information Technology Basics (Academia de Studii


Economice din București)

StuDocu is not sponsored or endorsed by any college or university


Downloaded by Popescu Diana (dianapopescu198@yahoo.com)
lOMoARcPSD|11547612

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

BTI final

Bazele tehnologiei informației Information Technology Basics (Academia de Studii


Economice din București)

StuDocu is not sponsored or endorsed by any college or university


Downloaded by Popescu Diana (dianapopescu198@yahoo.com)
lOMoARcPSD|11547612

BTI - întrebări posibile


An universitar 2019/2020
1. Care este modelul de bază al unui sistem de calcul de tip secvenţial?

2. Care sunt componentele hardware ale unui sistem de calcul?


Modelul topologic de bază al unui calculator de tip secvenţial include:
• componentele fizice (hardware):
• resurse de calcul (C)
• resurse de memorare (M)
• ansamblul echipamentelor de intrare/ieşire (I/E)
• circuitele care asigură transmisia informaţiei între componentele
precedente (T);

3. Ce reprezintă software-ul unui sistem de calcul?


Software reprezintă un sistem de programe pentru calculatoare, sistem furnizat odată cu
calculatorul sau achiziționat ulterior de către cumpărător/utilizator.
4. Care sunt componentele logice ale unui sistem de calcul?
componentele logice (software):
• sistem de operare
• programe utilitare.
5. Dați exemple de software de sistem/software de aplicaţie.
Software de sistem (programele de sistem):
• sistemul de operare
• compilatoare
• interpretoarele de comenzi și instrucțiuni
• editoare de texte şi legături
• programele de comunicaţie etc.

Software de aplicaţie(programele de aplicaţie):


• procesoare de texte
• programe pentru bazele de date
• navigatoare web
• instrumente pentru dezvoltare de aplicaţii
• produsele pentru editarea de imagini –sisteme bancare şi financiar-contabile
• aplicaţii pentru evidenţa bibliotecilor etc.

6. Care sunt componentele de bază ale unui sistem de operare (rolul fiecărei componente)?
Componentele de bază ale unui sistem de operare:
• kernel: include funcţiile de nivel jos care vor fi încărcate după procesul de boot (de exemplu,
modulul care realizează controlul fluxului de date între memorieşiunităţile de I (input)/E
(output)).

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

• shell: interfaţa utilizator


• sistemul de fişiere: standard pentru formatarea discurilor

7. Care sunt unitățile hardware de bază ale unui sistem de calcul (rolul fiecărei unități)?
Din punct de vedere fizic (hardware), orice calculator
deţineceletreiunităţi de bază:
• procesorul sau unitatea centrală de prelucrare (UCP): controlează activităţile
calculatorului şi execută operaţiile de prelucrare a datelor;
• memoria principală: stochează instrucţiunileşi datele programelor;
• unitatea de intrare /ieşire: asigură comunicarea între utilizator şi sistemul de calcul.

8. Care este rolul componentei firmwareintr-un sistem de calcul?


Rolul componentei firmwareintr-un sistem de calcul este de a face legatura intre componentele
hardware şi cele software.
9.Care este rolul magistralei intr-un sistem de calcul?
Magistrala conectează UCP la memoria principală, la modulele de I/E sau la adaptoarele care
fac posibilă ataşarea altor dispozitive.
10.Care sunt tipurile de magistrale dintr-un sistem de calcul?
Tipurile de magistralele sunt:
– magistrala de sistem sau magistrala locală sau FSB (Front Side Bus) -
conectează UCP cu memoria RAM (Random Access Memory);
– magistralele de I/E - conectează UCP cu celelalte componente
11.Care sunt criteriile pentru clasificarea sistemelor de calcul?
Sistemele de calcul pot fi clasificate după:
– tipul și numărul unităţilor centrale de prelucrare (UCP);
– cantitatea de memorie principală pe care UCP o poate utiliza;
– capacitatea de stocare a memoriei auxiliare;
– viteza perifericelor de ieşire;
– viteza de prelucrare exprimată în milioane de instrucţiuni pe secundă (mips) ;
– numărul utilizatorilor care pot avea acces la calculator în acelaşi timp;
– costul.

12. Care sunt categoriile de baza pentru sistemele de calcul? Prin ce se caracterizeaza
fiecare categorie?
Categoriile de bază pentru sistemele de calcul:
– microcalculatoare sau PC (Personal Computers), staţii de lucru (workstations)
– minicalculatoare;
– mainframe;
– supercalculatoare;
– calculatoare încorporate (embedded).

1.Microcalculatorul poate fi folosit de o singură persoană la un moment dat(ex: tableta, laptop


notebook etc.)

2. Minicalculatoare deţin multiple terminale; pot fi utilizate ca servere de reţeaşi ca servere în


Internet.
3. Calculatoarele mainframe suportă sute sau mii de utilizatori; Calculatoarele mainframe sunt
folosite în organizaţiile de mari dimensiuni, unde datele şi programele partajate sunt accesate
de un mare număr de utilizatori; Mainframe-urile sunt folosite ca servere pentru afaceri
electronice/tranzacţii.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

4.Supercalculatoarele sunt cele mai puternice calculatoare; sunt utilizate în rezolvarea unor
probleme care necesită calcule complexe
5.Calculatorul încorporat reprezintă un sistem informatic realizat dintr-o combinaţie
hardware şi software, având capabilitatea să realizeze funcţii specifice (dedicate unor aplicaţii)
13.Ce intelegeti prin date/informatii/cunostinte?
Datele se referă la evenimente, procese, obiecte ale realității înconjuratoare, având diferite
forme de reprezentare - simboluri, numere, cuvinte, imagini, sunete.
Informațiile reprezintă mesajele obținute prin prelucrarea datelor şi identificarea de relaţii între
acestea, fiind integrate într-un context.
Cunoștințele reprezintă abilitățile de înțelegere a informaţiilor despre un anumit subiect și care
pot fi folosite în luarea de decizii, formarea de judecăţişi opinii.
14.Ce reprezinta o sursa de informatie discreta fara memorie?
Sursă de informație discretă fără memorie este sursa care furnizează un număr finit de
evenimente/mesaje, iar probabilitatea de apariție a unui eveniment/mesaj la un moment dat nu
depinde de evenimentele/ mesajele generate anterior.
15. Când o sursă de informaţie este completă?
O sursă de informaţie se numeşte completă, dacă sunt îndeplinite relaţiile:

16. Când se obține informație în urma realizării unui experiment?


În urma realizării unui experiment se obţine informaţie dacă şi numai dacă rezultatul
experimentului înlătură o anumită incertitudine;
17. Care este formula entropiei informaționale?

18. Care este unitatea de bază pentru a măsura cantitatea de informaţie? Dar multiplii ?
Unitatea de măsură a informaţiei se numeşte bit.
Multipli:
1 octet (byte) = 8 biţi
1 Kilo octet = 2^10 B
1 Mega octet = 2^10 KB = 2^20 B

19. Dacă probabilitatea de realizare a unui eveniment (xi) al unui experiment X este pi =1,
care va fi entropia informațională a experimentului?
H(p1 , p2 , .…, pn ) = 0 - dacă pentru un indice i {1, 2, .., n} avem pi =1

20. Când este maximă entropia unui sistem complet de evenimente?


Entropia este maxima atunci cand toate evenimentele au aceeasi probabilitate.

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

21. Care este schema generală a unui sistem de transmisie a informației în varianta cea
mai simplă/dacă include codificarea primară/ dacă include codificarea redundantă?

22. In ce scop se utilizeaza codificarea in sistemele de calcul?


Codificarea in calcul se utilizeaza pentru:
• transmisia în sistemele de calcul - pentru procesarea datelor;
• detectarea şi corectarea erorilor - se asigură integritatea datelor;
• criptarea - pentru a se garanta confidenţialitatea datelor.
• compresia - pentru minimizarea cantităţii de date;

(Fie: • X={x1 , x2 , x3 ,..., xM} - mulţimea simbolurilor primare emise de o sursă de informaţie
• A={a1 , a2 ,..., aD } - mulţimea simbolurilor codului folosit.
4

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Cu simbolurile: a1 , a2 ,..., aD se formează un număr M de cuvinte de cod: C = {c1 , c2


,..., cM})
23. Cum definiti codificarea? Dar decodificarea?
a)Codificarea=este operaţia de stabilire a unei biunivoce între simbolurile xi apartine X si ci
apartine de C (pentru oricare ar fi i=1 / M) .
BIUNIVÓC, -Ă, biunivoci, -ce, adj. Care are corespondență unică în ambele sensuri.
◊ Corespondență biunivocă = corespondență între elementele a două mulțimi, dată de o funcție
bijectivă. [Pr.: bi-u-]
De exemplu:
c1 : a1 a2 a3 → x1
c2 : a2 a1 a3 → x2
c3 : …
Totalitatea cuvintelor ci (i= 1/M)formeaza un COD.
b)Decodificarea=Operaţia de revenire, din mulţimeasecvenţelor de cod în mulţimea
simbolurilor primare
Daca exista functia de cod : f : XC
Trebuie sa exista si functia inversa!!! f la -1 : X : C
24. Ce reprezinta lungimea unei secvente de cod?
Numărul de simboluri elementare dintr-un cuvânt de cod reprezintă lungimea acestuia.
25. Cand se poate declara ca s-a realizat o codificare uniforma?
Codificarea este uniformă dacă toate cuvintele de cod au aceeaşi lungime.
26. Cum se determina numarulsecventelor distincte (M) de lungime i, care se pot crea cu
j simboluri elementare folosite pentru o codificare uniforma?
Numărul de secvenţe distincte (M) lungime i, care se pot crea cu j simboluri elementare, se
determină prin formula:
M=j la i
(numarul de secvente= numarul de simboluri elementare la numarul lungimii)
27. O sursa primara de informatie emite N simboluri (de ex.: N=4 sau N=225). Stiind ca
se realizeaza o codificare binara uniforma, care va fi lungimea minima a unei secvente de
cod? (scrieti formula prin care s-a calculat lungimea minima) ?
• În sistemele de calcul mulţimea simbolurilor codului este:
A = {0,1}
• Ţinând cont de relaţia anterioară avem:
M 2
n (M numărul simbolurilor primare)
• Prin logaritmarea relaţiei se va obţine:
log2 M n
• Într-o codificare uniformă, lungimea n a secvenţelor de cod
trebuie să fie cel puţin egală cu entropia maximă a sursei.
28.In ce consta un cod alfanumeric? Dati exemple de coduri alfanumerice.
Codurile în care sunt reprezentate numai numere se numesc coduri numerice, iar cele care
cuprind numerele, literele şi semnele speciale se numesc coduri alfanumerice.
Printre codurilealfanumerice se numără:
• Codul BCD (BinaryCoded Decimal)
-unul din primele coduri utilizate în tehnica de calcul (anii ’50).
-o secvenţă de cod are lungimea de 6 biţi/caracterşi se puteaureprezenta cifre, litere (majuscule)
şicaracterespeciale.
• Codul EBCDIC (Extended BinaryCoded Decimal InterchangeCode)
-secvenţele de codau o lungime de 8 biţi/caracter.
• Standardul ASCII (American Standard Code for Information Interchange)

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

-secvenţele de codau o lungime de 8 biţi/caracter, însăcelmaisemnificativ bit are valoarea 0 (se


permitastfel 27 = 128 coduri).
Codul ASCII conţine:
- setulcaracterelor ASCII neimprimabile de control: codurile 0-31
- setul de caractereimprimabile: numerele 32 – 126; 127 – comanda DEL (Delete)

• Unicode
29. Câte caractere se pot codifica prin codul alfanumeric EBCDIC (ASCII sau UNICODE
în format implicit)? Care este semnificaţia acronimului EBCDIC /ASCII?
Prin codul alphanumeric EBCDIC se pot codifica maximum 256 de caractere.
EBCDIC semnifica Extended Binary Coded Decimal Information Interchange Code iar ASCII
semnifica American Standard Code for Information Interchange.

30. Ce reprezintă un cod numeric? Ce înțelegeți prin cod numeric ponderat? Dați
exemple de coduri numerice ponderate/neponderate.
Codurile numerice au fost introduce pentru a se opera mai usor informatia
numerica. Un cod numeric este ponderat daca unei cifre zecimale ii corespunde o succesiune
de cifre binare in care fiecare cifra de rang j are asociata o anumita pondere Pj. Coduri ponderate
sunt codurile 2421, 8421 iar neponderate sunt codurile EXCES 3 si Gray.

31. Ce reprezintă distanţa Hamming (distanță de cod)?


Distanta Hamming reprezinta numarul minim de erori dintre informatia transmisa si
informatia receptionata.

32. Care este importanța parametrului distanţă Hamming? Ce valoare ar trebui sa aibă
distanţa Hamming minimă ca un cod să poată detecta un numar k de erori existente în
una din secvenţele sale? (Ce valoare ar trebui sa aibă distanţa Hamming minimă ca un
cod sa poată detecta un numar k de erori și să corecteze r erori?)
Importanta parametrului distanta Hamming este aceea ca prin intermediul sau se realizeaza
codificarea. Valoarea pe care ar trebui sa o aiba distanta Hamming minima pentru ca un cod sa
poata detecta un numar k de erori existente este k+1 iar pentru a corecta r erori, distanta
Hamming minima trebuie sa aiba valoarea k+r+1.
33. Care sunt elementele de care se va ține cont la realizarea unei structuri de cod?
Elementele de care se va tine cont la realizarea unui structure de cod sunt:
-numarul secventelor ce apartin codului
-lungimea secventelor de cod
-distanta minima de cod
34. Ce operație se realizează prin codificare redundantă?
Prin codificarea redundanta se realizeaza operatia de determinare a simbolurilor
de control in functie de simbolurile de informatie.
35. Ce este specific codului Hamming (câte erori se pot detecta și corecta)?
Specific codului Hamming este faptul ca poate detecta e erori existente daca
Dmin >= e+1 si poate corecta c erori daca Dmin>= e+c+1.

36. Care este relația prin care se determină numărul corectorilor în cazul codificării
Hamming? (Exemplu: știind că în codificarea primară s-au utilizat 8 cifre binare, care
este valoarea minimă a numărului cifrelor de control pentru o secvenţă codului
Hamming? Câte cifre binare va avea o secvenţă a codului Hamming?)
Se consideră un spaţiu m-dimensional - spaţiu de corecţie: 2m corectori

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

Pentru a indica poziţia erorii - unul din cele n simboluri ale cuvântului de cod, sau pentru
a indica absenţa erorilor este necesar ca numărul corectorilor 2 m ≥ n + 1.
Cum n = k + m, o să avem că: 2m≥ m + k + 1
– m numărul simbolurilor de control;
– k numărul simbolurilor folosite pentru codificarea primară a informaţiei.
In exemplu, pt k=8 => 2m ≥m+8+1 => 2m ≥m+9 => m=4 (16>13)
=> 4 cifre de control, 4+8=12 cifre binare pentru secventa codului Hamming
37. Care este relația utilizată pentru calcularea cifrelor de control în codificarea
Hamming?
H vT = 0 , unde H este matricea de control si v este cuvantul receptionat in binar
38. Care este relația pentru determinarea corectorului la receptionarea unei secvențe
Hamming?

39. În ce constă un cod liniar cu control încrucișat? Cum se realizează controlul în cazul
codurilor liniare cu control încrucişat? Exemplificaţi.
Codul liniar cu control incrucisat consta in structurarea informatiei pe blocuri de
secvente de cod si atasarea unui bit de control, o data fiecarei secvente (control linie) si alta
data la fiecare coloana ce contine bitii de acelasi rang din toate secventele (control coloana).
??? Controlul se realizeaza fie prin paritate para, fie prin paritate impara. ???

40. Cum se calculează paritatea transversală/longitudinală?

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

41. Cum se verifică dacă un bloc de informație a fost recepționat cu erori sau fără erori
(în cazul codurilor liniare cu control încrucișat)?

42. Care este criteriul pentru detecţia erorilor în cazul codurilor polinomiale ciclice?
Criteriul pentru detectia erorilor este divizibilitatea polinomului T(x) (asociat mesajului
transmis) prin G(x) (polinomul de generare).

43. Ce este un cod de bare?


Codul de bare: reprezentare a datelor încât acestea să poată fi ușor citite cu ajutorul unor
dispozitive optice (scannere, camere video sau aparate de fotografiat).
44. Cum pot fi clasificate codurile de bare?
Codurile de bare unidimensionale (1D): datele sunt codificate printr-o serie de linii (bare) și
spații paralele.
Codurile de bare bidimensionale (2D): datele sunt reprezentate prin dreptunghiuri, pătrate,
hexagoane și alte modele geometrice pe două dimensiuni. Informațiile sunt stocate atât pe
înălțimea, cât și pe lățimea simbolului.
45. Căror cerințe răspund codurile de bare?
Diferite simbologii au fost dezvoltate pentru a răspunde anumitor cerințe, cum ar fi:
− codificarea datelor numerice sau alfanumerice;
− codificarea unor mesaje de lungime fixă sau variabilă;
− pentru a spori densitatea de stocare a datelor;
− pentru reducerea costurilor de tipărire;
− pentru securizarea datelor;
− pentru o citite rapidă.

46. Care sunt tipurile de date codificate printr-un simbol QR?


Simbolul QR codifică toate tipurile de date, cum ar fi:
− caractere numerice
− caractere alfabetice
− pictograme sau ideograme folosite în diverse dialecte japoneze (Kanji, Kana, Hiragana)
− simboluri și coduri de control

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

47. Pentru ce se utilizează simbolurile QR?


Simbolurile QR sunt utilizate pentru:
− gestiunea produselor și confirmarea de comenzi;
− eliberarea biletelor de călătorie/teatru/cinema;
− stocarea informațiilor despre organizațiile comerciale: adresă locație, telefon, fax, e-mail,
URL (Uniform Resource Locator) site, în scopul fidelizării clienților
− educație
− publicitate

48. Care sunt sistemele de numerație folosite în arhitectura sistemelor de calcul?


Sistemele de numeraţie pot fi:
poziţionale (sistemele: zecimal, binar, octal);
nepoziţional (sistemul roman).
49. Ce înțelegeți prin conversiua unui număr din baza de numerație b în baza de
numerație q?
Conversia din baza de numeraţie b în baza de numeraţie q: operaţia de calculare a cifrelor
reprezentării în baza q (q>1) a unui număr dat (reprezentat în sistemul de numeraţie în baza b).
Fie:
(N)b=(NI)b + (NF)b
unde:
(NI)b - reprezintă partea întreagă a numărului (N)b
(NF)b - reprezintă partea fracţionară a numărului (N)b

50. Care este algoritmul pentru conversia numerelor întregi? Dați un exemplu.
(NI)b - reprezintă partea întreagă a numărului (N)b;

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

51. Care este algoritmul pentru conversia numerelor fracționare? Dați un exemplu.

52. Care sunt formele de reprezentare a numerelor în sistemele de calcul?


Informația numerică se regăsește în calculatoare reprezentată:
- în virgulă fixă (VF);
- în virgulă mobilă (VM);
- prin coduri numerice (cel mai utilizat codul 8421);

10

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

53. Care sunt formele de reprezentare a numerelor în virgulă fixă?


Formele de reprezentare a numerelor în virgulă fixă sunt:
- cod direct (CD)
- cod invers (CI)
- cod complementar (CC)
54. Care sunt relațiile pentru reprezentarea numerelor în VF CD/CI/CC? Dați câte un
exemplu de reprezentare a numerelor pozitive și negative pentru fiecare format.

11

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

55. Care este formatul de reprezentare în virgulă fixă a numerelor negative în


calculatoarele compatibile PC-IBM?

56. Care este forma de scriere a unui număr pentru reprezentarea în virgulă mobilă? Dați
un exemplu.

12

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

57. Care sunt zonele pentru reprezentare a unui număr în virgulă mobilă? Exemplu
Reprezentarea în calculator, implică existenţaa trei câmpuri, acestea fiind:
• bitul de semn:
S = 0, daca N >=0
S= 1, daca N<0
• zona exponentuluisaucaracteristica; valoarea este determinatăprinrelaţia:
EXP=exponent real + constantăexces

3. zona fracţiei sau mantisei


– numărul de cifre binare variază în funcţie de format şi de tipul calculatorului

58. Cum trebuie să fie valoarea fracției (din reprezentarea unui număr în virgulă mobilă)?
valoarea fracţiei trebuie să fie normalizată, de obicei respectă relaţia:
1/b <= (f)b <1
59. Care sunt formatele utilizate pentru reprezentarea unui număr în virgulă mobilă?

13

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

60. Ce este algebra booleană?

61. În ce constă o expresie booleană? Dați un exemplu

Exemplu : a¯ ∙c + a∙b∙ (a + b)¯ ∙ c+ 0


62. Cum se obține o valoare a unei expresii booleene pentru un set de valori?

14

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

63. Când două expresii booleene sunt echivalente?

64. Ce înțelegeți prin funcție logică incomplet definită?


O funcţie logică este incomplet definită dacă: f (i1j, i2j,..., inj) {0,1} pentru cel puţin un j, j1,2 n
65. Cum se pot reprezenta fucțiile logice? Exemple.

66. Cum se definește un produs elementar de variabile booleene?


Produs elementar:produsul de variabile booleene sau complemente ale acestora.
67. Cum se definește un mintermen în raport cu un set de variabile logice? Exemplu.
Mintermen (în raport cu variabilele logice x1,x2,...,xn) -produsul elementar în care apar simple
sau complementate toate variabilele x1,x2,...,xn.
Exemplu: m2(x1,x2,x3)=x10x21x30=x1 x2x3
68. Care este relația pentru reprezentarea unei funcții logice în forma canonică
disjunctivă?

15

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

69. Cum se definește o sumă elementară de variabile booleene?


Sumă elementară: suma de variabile booleene sau complemente ale acestora.
70. Cum se definește un maxtermen în raport cu un set de variabile logice? Exemplu.
Maxtermen(în raport cu variabilele logice x1,x2,...,xn)-suma elementară în care apar simple sau
complementate toate variabilele x1,x2,...,xn. Un maxtermen se notează: Mk(x1,x2,...,xn); se are
în vedere că funcţia identitate se notează prin x0(=x), iar funcţia complement prin x1(=x)
•Exemplu: M2(x1,x2,x3)=x10+x21+x30=X1+X2+X3
71. Care este relația pentru reprezentarea unei funcții logice în forma canonică conjunctivă?

Forma canonică conjunctivă (FCC) pentru funcţiile booleene de n variabile se poate scrie:

72.Care sunt principalele funcții logice?


Principalele functii logice sunt:

16

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

73.Care sunt metodele de simplificare a funcţiilor logice? Exemplu.

Metodele de simplificare sunt :


-Procedee algebrice
-Diagramele de minimizare Veitch

-Diagramele de minimizare Karnaugh

74. Ce sunt circuitele logice?


Circuitele logice sunt componente electronice interconectate , capabile sa realizeze operatii
logice

75.Care sunt criteriile dupa care se pot clasifica circuitele logice ?

17

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

76.Prin ce se caracterizează circuitele logice combinaţionale? Dați exemple de circuite


logice combunaționale.
Circuitele logice combinationale sunt acelea la care starea interna nu influentează ieșire , deci
setul mărimilor de ieșire este complet determinat la orice moment de timp numai de setul
mărimilor de intrare curente .

77. Prin ce se caracterizează circuitele logice secvențiale? Dați exemplu de circuit logice
secvențial.
Circuitele logice secvențiale se caracterizează prin aceea ca valoarea funcției de la ieșire , la un
moment dat t, depinde atât de valorile variabilelor de intrare la momentul t , cât si de valoarea
pe care a avut-o anterior funcția .
Exemple de circuite logice secvențiale : circuite ce conțin o structura logica combinationala ,
poarta (SI,SAU,etc ) si o structura de memorare .

78. Care este rolul unui circuit basculant bistabil?


Circuitul basculant bistabil este folosit ca element de bază pentru memorare (se stochează un
bit).
79. Ce este un registru și pentru ce se utilizează?
Registrele sunt dispozitivele digitale realizate cu elemente de memorare şi au rolul de a stoca
temporar datele reprezentate în formă binară.
80. Care sunt operațiile ce se pot realiza asupra unui registru?
Operatiile care se pot realiza asupra unui registru sunt operatia de citire si operatia de scriere.
Operaţia de înregistrare a datelor binare într-un registru se numeşte scriere, iar operaţia de
transfer a conţinutului citire. Trecerea tuturor celulelor de memorare din structura unui registru
în starea “0” se numeşteştergere.
81. Cum se poate efectua operația de scriere, respectiv citire, într-un registru?
Operaţia de citire , respectiv scriere, se poate efectua:
a)In serie - cifrele binare fiind preluate secvenţial;
b)In paralel - cifrele binare se înscriu/citesc simultan.

18

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

82. Pentru ce sunt utilizate numărătoarele într-un sistem de calcul?


Numărătoarele sunt utilizate pentru controlul execuţiei unor operaţii. Ieşirile circuitelor
(circuite basculante bistabile) care formează numărătorul sunt interpretate împreună - reprezintă
o stare a numărătorului
83. Care este rolul unui sumator?
În electronică un sumator este un circuit digital (circuit integrat logic) care
realizează adunarea a două sau mai multe numere.
Sumatorul digital poate să execute nu numai adunări ci și operația aritmetică de scădere, caz în
care se folosește reprezentarea numelor în cod invers sau în cod complement. Este vorba de
utilizarea aceleiași funcții de adunare, de această dată cu un exponent număr negativ. Cu toate
că sumatoarele pot fi construite pentru diferite reprezentări numerice, cele mai multe dintre ele
operează cu numere binare.
84. Cum se poate realiza însumarea celor n cifre binare a două numere?
Insumarea celor n cifre binare ale numerelor A si B se poate realiza serial sau paralel. Daca
pentru insumarea seriala se utilizeaza un sumator elementar si doua registre de deplasare, pentru
insumarea paralela se vor utiliza n sumatoare elementare.

85. Ce reprezintă o matrice de comutație?

Matricea de comutaţie este un circuit logic cu ieşiri multiple - ieşirile sunt dependente
de intrări print-o relaţie matricială.

86. Având în vedere modul de utilizare, care sunt tipurile de matrice de comutație?

După rolul în utilizare există :

 Matricea pentru codificare - codifică datele care se prelucrează prin sistemul de calcul;

 Matricea pentru decodificare se utilizează pentru scrierea selectivă a datelor în memoria


adresabilă RAM (RandomAccessMemory);

19

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

 Matricea pentru selecție se utilizează pentru:


o citirea selectivă a unei locaţii dintr-o zonă de memorie;
o generararea de funcţii logice;
o partajarea unei linii de transmisie prin multiplexarea în timp.

 Matricea pentru distribuţie are rolul de a selecta o ieşire,din cele 2n,spre care se transferă
informaţia de pe intrare.

20

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

87. Ce reprezintă un bloc de memorie?

Memoria reprezintă un ansamblu de registre de aceeași dimensiune, accesibile printr-o


magistrală unică.

88. Care este unitatea funcțională cea mai importantă a unui sistem de calcul?

posibil : unitatea centrală de prelucrare (UCP)

Nu găsesc răspuns în prezentări. AJUTOR!

89. Care sunt componentele de bază ale unui microprocesor UCP? Care este rolul UCP-
ului? NU ȘTIU DACĂ E CORECT RĂSPUNSUL, ASTA E TOT CE AM GĂSIT ÎN
PREZENTĂRILE EI ÎN LEGĂTURĂ CU ÎNTREBAREA

a) Unitate centrală de prelucrare(UCP):


procesor : prelucrează datele;
central : este centrul de prelucrare a datelor din sistem;

21

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

unitate : este un circuit integrat care conţine milioane de tranzistoare–un


microprocesor.
UCP conţine:

Unitatea aritmetico-logică(UAL);
Unitatea de control
Un ansamblu de registre.
b) UCP coordoneaza activitatea din calculator in vederea procesării datelor. Pentru
aceasta, ea primeste si transmite date in mod continuu. Unitatea centrala procesare
opereaza cu doua tipuri de date.

90. Care este rolul unității aritmetico-logice? NU GĂSESC UN RĂSPUNS ÎN


PREZENTĂRILE EI, ASTA ESTE CE AM GĂSIT PE INTERNET.

Operațiile aritmetice şi logice sunt efectuate de unitatea aritmetico-logică (UAL).


Acest bloc funcțional execută prelucrarea datelor.

91. Cum pot fi clasificate sistemele de calcul în funcţie de numărul unităţilor de procesare?

Sistemele de calcul, în funcţie de numărul unităţilor de procesare, pot fi de tip : monoprocesor


sau multiprocesor.

92. Care sunt tipurile de date cu care opereazaUCP?

UCPopereaza cu intructiunisi date.


93. Care esteroluluneiinstructiuni?
Prin intermediul instrucţiunilor se comunică unui calculator, în mod detaliat, care anume
operații și în ce ordine trebuie să efectueze.
94. Unde se stocheazainstructiunilesidateleunui program care se vaexecuta?
În calculatoarele actuale, programele care se execută sunt încărcate în memoria principală
(arhitectura von Neumann). Adresa instrucţiunii, conţinută în registrul IP (Instruction Pointer)
al UCP, este transmisă prin magistrala de adrese la unitatea de memorie.

22

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

95. Care sunt fazelenecesareexecutieiuneiinstructiuni? Prezentatipescurtfiecarefaza.


Execuţia unei instrucţiuni include următoarele operaţii de bază:
•extragerea instrucţiunii – transferul din memoria alocată programului înregistrul de
instrucţiuni;
•decodificarea – decodificarea instrucţiunii şi transferul rezultatului la unitatea de control;
•transferuloperanzilor–depistarea modului de adresarea operanzilor şi transferul lor în scopul
execuţiei instrucţiunii;
•execuţia – execuţia propriu-zisa operaţiei aritmetice, logice sau de transfer identificată de codul
operaţiei din cadrul instrucţiunii;
•transferul rezultatului – dacă este cazul.
96.Care sunt operatiile de baza in executia unei instructiuni?
Exemple de operaţii de bază: extragere instrucţiune, decodificare instrucţiune, transfer
operanzi, execuţiaoperaţiei.
97. Ce este ceasul unui sistem (system clock)? Prince se caracterizeaza semnalele de ceas?
Care este importanta vitezei ceasu lui intr-un sistem de calcul?
Ceasul sistemului (systemclock) - unul din semnalele de control prin care se asigură
sincronizarea pe magistrală (diferit de circuitul de contorizare a timpului, cel prin care se
afişează data şi ora calendaristică).
Ceasul unui sistem de calcul se caracterizează prin:
– perioada ceasului(durata unui ciclu de ceas) - de exemplu:5 ns(NanoSecunde) sau
– frecvența ceasului(numărul de cicluri înunitatea de timp) -de exemplu: 200 MHz (MegaHertz)
98. Ce reprezinta un ciclu de masina?
Ciclu maşină: – timpul necesar efectuării unei operaţiidebază.
– o operaţie de bază se efectueazăîn mai multe perioade ale semnalului de ceas.
– exemple de operaţii de bază: extragere instrucţiune, decodificare instrucţiune,
transfer operanzi, execuţia operaţiei.
99. Ce reprezintă un ciclu instrucțiune?
Ciclu de instrucţiune– ciclurilemaşinăcorespunzătoareexecuţieiuneiinstrucţiuni, cum ar fi: ciclu
de extragereinstrucţiune, ciclu de decodificare şi, înfuncţie de tipulinstrucţiunii, cicluri de
citire/scriereoperanzi, cicluri de execuţiepropriu-zis.

100. Care sunt unităţilefuncţionale de bază ale microprocesorului Intel 80386? Menționați
rolul fiecărei unități funcționale.

Unitatea de interfaţă cu magistrala externă asigură legătura între processor şi celelalte blocuri
funcţionale ale sistemului (memorie şi unităţile periferice).
Unitatea de pregătire anticipată a instrucţiunii gestionează fluxul instrucţiunilor pentru a
menţine plină coada instrucţiunilor.
Unitatea de decodificare a instrucţiuniipreiaocteţii din coada instrucţiunilor şi asigură
translatarea lor în microcod. Rezultatul este transferat într-un nou şir de aşteptare.
Unitatea de execuţie este componentunităţii central unde se realizează calculi aritmetice şi
logice: adunare, scădere, înmulţire, împărţire, deplasări. Unitatea conţine un set de registre
pentru operare.
Unitatea de adresare a memoriei prin:

• unitatea de segmentare asigură translatarea adresei logice într-o adresă liniară pe 32 de


biţi; dacă unitatea de paginare nu este operaţională adresa liniară coincide cu adresa
fizică.

23

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

• unitatea de paginare, dacă este activată, translateazăadresaliniarăîntr-o adresăfizicăcare


va fi transmisă pe magistrala de adrese.

101. Care sunt categoriile de registre ale arhitecturii de bază pentru un microprocesor
Intel 80386 [Pentium]?

Registre Intel 8086 -> Intel 80286 (->Pentium)


102. Care sunt registrele generale/registrele segment? Rol registre generale/registre
segment.
Registre generale au unele utilizări speciale:

•AX/EAX: operandimplicitîninstrucţiunile de înmulţire/împărţireşi de I/O


•BX/EBX: indicatorpentrudatele din segmental de date
•CX/ECX: numărătorpentruinstrucţiunilerepetitivesau de deplasare
•DX/EDX: operandimplicitîninstrucţiunile de înmulţire/împărţireşi de I/O

103. Care este rolul registrului indicator de instrucţiune?


Registrul indicator de instrucţiune păstrează offsetul următoarei instrucţiuni care se va executa.
Offsetul este raportat labaza segmentului cod (CS).
104. Care este rolul registrului indicatorilor de stare şi control?
Registrului indicatorilor de stare şi control este un registru pe 32 de bitiavand rolul de a
specifica modul in care s-a executat o instructiune sau in ce conditii se va derula
conditiaurmatoare
105. Care sunt nivelurile ierarhice ale memoriei sistemelor de calcul? Comentaţi.

[în cazul in care nu înțelegeți scrisul din poze -> Capitolul 6: Memoria sistemelor de calcul,
slide-urile 4 si 5]
• Ce este memoria principală (capacitatea de stocare primară)?
RAM (Random Access Memory) este principala zonă de stocare la care UCP are acces.
24

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

• Din ce este compusă memoria auxiliară?


Memoria auxiliară este organizată pe discuri, floppy-discuri, CD-ROM, DVD
(capacitatea de stocare secundară) sau benzi magnetice (capacitatea de stocare de siguranță).

• Ce reprezintă memoria virtuală?


Capacitatea memoriei virtuale este capacitatea de stocare primară și capacitatea de
stocare secundară,

• Ce reprezintă unitatea de memorie principală?


Unitatea de memorie principală reprezintă ansamblul format din mediul de memorare și
circuitele electronice care îi asigură buna funcționare.

• Care este funcția memoriei principale?


Memoria principală are funcția de a stoca instrucțiunile programelor și datele asupra
cărora acționează aceste acțiuni.

• Care sunt parametrii de bază ai memoriei principale?


Parametrii de bază ai memoriei principale sunt: locația de memorie sau cuvântul de
memorie, capacitatea memoriei sau spațiul de adresare fizică, timpul de acces.

112. Ce reprezintă locația de memorie/capacitatea memoriei/timpul de acces? Care este


rolul adresei? Comentarii
Locația de memorie este succesiunea de poziții binare recunoscută și adresată
individual.
Capacitatea memoriei este numărul total al locațiilor adresabile de procesor. Capacitatea
de memorie depinde de mărimea magistralei de adresă.
Timpul de acces este intervalul de timp ce separă cererea unei informații de obținerea
sa la locul prelucrării.
Adresa are rolul de a identifica o locație de memorie.

113. .Care sunt tipurile de memorie, dupămodul de păstrare a informaţiei?


Dupamodul de pastrare a informatiei, memoria poate fi de 2 tipuri:
-ROM (Read Only Memory)
-RAM (Random Access Memory)

114. Prince se caracterizeazămemoria ROM (Read Only Memory)?


In memoria ROM continutul nu se modifica si nu se distruge prin intreruperea
alimentarii cu tensiune electrica

115. Prin ce se caracterizează memoria RAM (RandomAccesMemory)?


In memoria RAM continutul se pierde la intreruperea alimentarii cu tensiune electrica

116. Care sunt tipurile de memorie RAM? Comentarii


Memoria RAM (Random Access Memory) poate fi de tip:
– SRAM (RAM statică) – păstreazăconţinutulmulttimp (dacă nu esteîntreruptătensiunea
de alimentare)
– DRAM (RAM dinamică) - creştedensitatea de integrare, dar este necesarăoperaţia de
refresh.

25

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

117. Care sunt funcțiile specialerealizate de memoriile ROM?


Functiilespecialerealizate de memoriile ROM:
- tesetaza sistemul la punerea sub tensiune: rutina POST (PowerOnSelfTest)verifica
buna funcitonare a calculatorului
(de ex, se testeaza memoria si adaptoarele pentru perifericele de I/E)
- realizeaza conexiunea cu instructiunile din CMOS (Complimentary Metal Oxide
Semiconductor) - intrustiuni de Setup
- realizeaza conexiunea cu diferitele periferice - BIOS (Basic Input Output System)
- apeleaza sistemul de operare – instructiunile BOOTING

118. Tipuri de memorii ROM:


– PROM (Programmable Read Only Memory) este un ROM programabil;
– EPROM (Erasable Programmable Read Only Memory) este o memoriecepoate fi
reprogramată de maimulteori;
– EAPROM (Electrically Alterable PROM) sunt memoriile la care ştergerea se
realizeazăprinmijloaceelectrice;

119. Prince se caracterizează flash memory?


Flash memory se comportă ca memoria de tip RAM, dar păstreazăconţinutulchiardacă
este întreruptătensiunea de alimentare;
120. Care este rolul memoriei cache? Tipuri de memorie cache.
memoria cache – memorie specială în care sunt păstrate datele solicitate frecvent.
Timpul de execuţie al unei instrucţiuni este mult mai mic decât timpul de acces la memorie.
Pentru a se recupera din timpul necesar accesului la memorie se apelează la:
– memorie cache L2: instalată între microprocesor şi memoria principală RAM;
– memorie cache L1: instalată în microprocesor.
121. În ce constă funcția de scriere a datelor de la procesor către memorie?
Derularea funcţiei de scriere a datelor (de la procesor către memorie):
– procesorul afişează adresa, datele şi codul funcţiei (scriere);
– procesorul activează semnalul pentru cererea de acces;
– memoria recepţionează cererea de acces, decodifică adresa şi înregistrează datele prezentate
de procesor
122. În ce constă funcția de citire a datelor de către procesor din memorie?
• Derularea funcţiei de citire a datelor (de către procesor din memorie):
– procesorul afişează adresa şi codul funcţiei (citire);
– procesorul activează semnalul pentru cerere de acces;
– memoria recepţionează cererea de acces, decodifică adresa şi afişează datele;
– procesorul înregistrează datele prezente pe magistrală.
123. Cum se clasifică echipamentele periferice după funcţia de bază?
După funcţia de bază, perifericele se pot clasifica în:
– echipamente de intrare: au rolul de a capta şi colecta informaţiile, în forma lor uzuală, pentru
a fi prelucrate în calculator; exemple: tastatura, mouse, creionul optic, tablă digitală, scanner,
cititor al codului de bare (un scanner foarte simplu), cititor de
cartele magnetice / perforate, captor de sunete (microfonul), senzor
de mișcare, dispozitive pentru control jocuri, terminal inteligent
(terminal pentru tranzacţii financiare) etc.
– echipamentele de ieşire:
permit accesul la informaţia prelucrată în calculator;
exemple: monitorul, imprimanta, difuzor;
– echipamente de memorare (echipamente de intrare/ieşire):

26

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

au rolul de a stoca o mare cantitate de informaţie, pentru un timp


nedeterminat, în vederea utilizării ulterioare;
exemple: discuri / benzi magnetice şi discuri optice;
– echipamente pentru transportul la distanţă (echipamente de
intrare/ieşire):
oferă o formă adecvată informaţiei ce se emite/receptează de către
un calculator;
exemplu: modemul
01001010
01101010
01101111
10001111
10000000
124. Cum se clasifică echipamentele periferice după protocolul de transfer a informaţiei?
După protocolul de transfer a informaţiei, perifericele se impart
în două mari grupe:
– periferice de tip bloc:
stochează informaţia în blocuri de mărime fixă (128 – 1024 octeţi);
fiecare bloc poate avea o adresă proprie
operaţia de scriere/citire a unui bloc de infornaţie se face în mod
independent de celelalte blocuri
exemple: discurile şi unele benzi
– periferice de tip caracter: acceptă un flux de caractere (tastatura,
imprimanta, mouse-ul etc .)
125. Care este rolul echipamentelor de intrare/ieșire/stocare/intrare-ieșire?
Tastatura
– asigură dialogul cu sistemul de
operare;
– redactarea de programe, în
diferite limbaje de programare;
– introducerea de date alfanumerice
pentru aplicaţii de gestiune sau
calcul;
– prelucrarea de texte, în acest scop
există o mare varietate de
simboluri şi comenzi care se
obţin prin combinarea tastelor.
126. Care este rolul interfeței unui echipament periferic?
Interfaţa (fizică şi logică) unui echipament periferic realizează
adaptarea faţă de unitatea centrală de prelucrare.

127. Ce reprezintă o unitate periferică?


Ansamblul constituit din echipamentul periferic şi interfaţă (cunoscută sub numele de controller
sau adaptor) reprezintă unitatea periferică.
128. Care sunt tipurile de canale pentru transmisia datelor?
Circuite pentru transmisia datelor:
– canal simplex(un singur sens de transmisie)
– canal semi-duplex (doua sensuri de transmisie, dar nu in acelasi timp)
– canal duplex (doua sensuri de transmisie simultane)

27

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

129. Cum se pot transmite datele în sistemele de calcul? (Ce înțelegeți prin transmisie
serială/paralelă?)
– transmisia serială
Transmisia de date serială în tehnologia informației, este o tehnologie de comunicație între
calculator și dispozitivele periferice, în care biții de date sunt transferați succesiv de-a lungul
unui canal de comunicare sau magistrală.
De exemplu, PC-urile deţin porturi seriale de tip RS-232. Dispozitivele care se conectează
printr-o interfaţă RS-232 sunt denumite:
– DTE (Data Terminal Equipment) - în mod obişnuit este un calculator;
– DCE (Data Communication Equipment) - în mod obişnuit este un modem.
Porturile seriale (COM) se utilizează pentru a conecta: mouse, modem, adaptoare ISDN
(Integrated Services Digital Network), imprimantă cu interfaţă serială, camera digitală.
– transmisia paralelă
Transmisia de date paralelă constă în transmiterea simultană a doi sau mai mulți biți pe mai
multe canale paralele. Comparativ cu transmisia serială, transmisia paralelă are performanțe
mai ridicate în ceea ce privește viteza de transfer la aceeași frecvență.
Porturile paralele (LPT – Line Print Terminal) sunt utilizate pentru a conecta: imprimanta, disc
Zip, disc portabil de CD-ROM, adaptoare SCSI (Small Computer System Interface), camera
digitală, scanner.
130. Ce reprezintă întreruperea intr-un sistem de calcul?
În sistemele de calcul, o întrerupere determină oprirea temporară a executării normale a unui
program pentru a se executa un alt program specializat (denumit rutină de întrerupere), ulterior
se poate relua execuţiei programului suspendat (depinde de tipul întreruperii).
131. Care sunt tipurile de întreruperi hardware? În ce condiții apar?
Întreruperi hardware (sunt tratate în mod asincron în raport cu programul în execuție):
− interne - apar ca urmare a unor condiții speciale de funcționare a microprocesorului, cum ar
fi execuția pas cu pas a unui program;
− externe – când cererile de întrerupere provin de la echipament periferice care solicită transfer
de date sau de la circuite specializate care urmăresc funcționarea normală a componentelor
fizice.

132. Care sunt tipurile de întreruperi software? În ce condiții apar?


Întreruperile software sunt generate de instrucțiuni ale programului în execuție, fiind tratate în
mod sincron în raport cu programul în execuție. Acestea pot fi de tip:
− excepții: apar la încercarea de accesare a unei zone de memorie protejată, împărțirea la zero
etc.;
− traps: utilizarea instrucţiunii INT, transferul controlului execuției către o rutină special
133. Cum acționează funcția 4CH a intreruperii 21H?
Funcția 4CH a întreruperii 21H încheie procesul curent (programul) și redă controlul sistemului
de operare DOS.

134. Care este rolul IRQ-urilor?

IQR este metoda pe caredispozitivele o folosescpentru a intrerupeUCP-ul si a solicita timp de


procesare.
IQRs sunt linii hardware pe care dispozitivele periferice pot sa trimita semnale de intrerupere
la microprocessor, se utilizeaza pentru controlul transferului datelor pe magistralele de I/E.
Semnalul IQR este folosit de un dispozitiv periferic pentru a semnaliza procesorul ca are de
efectuat un transfer de date.

28

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

135. Ce este caracteristicechipamentelorperiferice de intrare/ieșire/stocare? Dațiexemple de


echipamenteperiferice de intrare/ieșire/stocare.

• Echipamentele de intrareaurolul de a capta si colecta informatiile, in forma loruzuala,


pentru a fi prelucrate in calculator. Exemple: tastatura, mouse, creion optic, scanner etc.
• Echipamentele de iesirepermitaccesul la informatiaprelucrata in calculator. Exemple:
monitor, imprimanta, difuzor etc.
• Echipamentele de stocareaurolul de a stoca o mare cantitate de informatie, pentru un
timpnedeterminat, in vedereautilizariiulterioare. Exemple: discuri,
benzimagneticesidiscurioptice.

136. Care sunt principalelecaracteristici ale unui monitor/imprimantă?

Monitorul este dispozitivul standard de iesire, permite reconstituirea imaginilor( alfanumerice


-elementul de baza este caracterul, generat conform unui cod standard, grafice), este o parte din
sistemul video al unui calculator.
Caracteristicile unei imprimante:
• Viteza de imprimare data in pagini/minut (ppm), caractere/secunda (cps)
• Setul de caracteredefinitprinnumarul de caractere, codulfolosit (ASCII SAU EBCDIC),
stilulcaracterelor si limba
• Dimensiuneamaxima a suportului pe care se poatetipari (A3,A4 etc.)
• Calitateaimprimarii (nr de puncte pe inch – dpi (dots per inch), majoritatea au 300-600
dpi
• Costulinitial si costul de operare

137. Care sunt avantajememoriei auxiliare faţă de memoria principală?

• Capacitatea de stocare este multmai mare


• Pretul de cost pe octet estemai mic
• Riscul de pierdere a informatiei este redus

138. Care sunt tehnologiileutilizatepentruobţinereasistemelor de memorieauxiliară?


• Magnetica: disculflexibil, hard discul, discurile Zip sibandamagnetica
• Optica: CD-ROM (Compact Disk- Read Only Memory), DVD(Digital Versatile sau
Video Disk), BD(Blu-Ray Disk, HD-DVD(High Density Versatile Disk) , discurile
magneto-optice (MO), discurileoptice de tip WORM (write once, read many times

139. Care sunt elementelecomunepentrudispozitivele de memorare tip disc?

• Se asociaza un sistem de fisiereuneiunitatilogice de stocare


• Se aloca o litera uneiunitatilogice de stocare, recunoscutaprinsistemul de operare

140. Dațiexemple de dispozitiveperiferice de stocare (hard disc: construcție, formatare; CD-


ROM; DVD)
Pentru a stocainformatia pe un hard disk este necesaraformatarea si, eventual, partitionarea.

29

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

148. Tipuri de servere care pot exista intr-o rețea? Ce este un server?
Serverele din reţea pot fi specializate, fiind adaptate necesităţilor utilizatorilor:
– File Servers - serverele de fişiere sunt folosite în general pentru stocarea datelor şi fişierelor.
Fişierele se păstrează pe un calculator gazdă (file server), iar aplicaţia (programul) se execută
pe calculator client. În timpul execuţiei programelor, datele sau fişierele sunt descărcate pe
calculatorul client
– Web servers - servere pentru partajarea de conținut prin Internet;
– Database servers - pentru stocarea bazelor de date și accesarea lor;
– Print server - pentru partajarea imprimantei în rețea;
– Alte tipuri de servere de: fax, mail, aplicaţii, de comunicaţii etc.
149. Care este modelul după care funcționează majoritatea sistemelor de
operare/aplicațiilor în rețea?
Majoritatea sistemelor de operare funcționează după modelul client/server
150. Ce este Internet-ul?
Internetul a devenit un fenomen global care a schimbat profund natura comunicării dintre
oameni şi afaceri.
Infrastructura Internet este o reţea de rețele care conectează calculatoare şi alte dispozitive
electronice prin intermediul reţelelor de telecomunicaţii.
INTERNET = ansamblu de infrastructuri + servicii + utilizatori + resurse
151. Care sunt serviciile accesibile prin Internet?
Internet reprezintă un mediu de comunicare interactiv care oferă accesul la o serie de servicii,
cum ar fi : − poşta electronică;
− transferul de fişiere;
− chat;
− web;
− telefonie prin Internet (VoIP- Voice over Internet Protocol);
− distribuirea ştirilor prin RSS (Really Simple Syndication)/Atom;
− video la comandă;
− radio şi televiziune prin Internet ;
152. Ce înțelegeți prin arhitectura TCP/IP?
TCP (Transmission Control Protocol) asigură un serviciu orientat pe conexiune pentru
transmisia fiabilă a datelor. Protocolul TCP realizează: transferul fluxului de date, asigură
fiabilitatea, controlul fluxului, multiplexarea şi conexiunea logică.
Funcţiile de bază ale protocoluluiIP (Internet Protocol) sunt:
• Definirea unităţilor de bază pentru transmisiile pe Internet (datagrama);
• Definirea planului de adresare Internet;
• Circulaţia datelor între nivelul acces reţea şi nivelul transport pentru fiecare staţie ;
• Direcţionarea unităţilor de date către calculatoarele de la distanţă;
• Fragmentarea şi reasamblarea unităţilor de date.
153. Care este sintaxa pentru numele simbolic al unui host (conform DNS - Domain Name
Service) ?
Numele simbolic al unui host, conform DNS, are următoarea sintaxă:
nume_host.nume_subdomeniu.nume_domeniu
154. Care este structura unei adrese IPv4? Care este formatul pentru reprezentarea unei
adrese IPv4? Care sunt clasele adreselor IPv4?
Adresa IPv4 =<numar_retea> < număr_host>
• număr_reţea este componenta adresei IP unică în Internet.
• număr_host în cadrul reţelei este stabilit de administratorul de reţea, fiind unic la nivel local.
Adresa IPv4 se reprezintă printr-un format zecimal cu punct: n1 .n2 .n3 .n4

30

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

141. Ce este o rețea de calculatoare (definiții)?

Reprezintă o colecție de calculatoare autonome interconectate printr-o rețea de comunicație.

142. Prin ce se caracterizează un echipament informatic?

-capacitatea de stocare
-capacitatea de prelucrare
-capacitatea de comutare

143. Ce reprezinta un canal de comunicație? Exemple de canale de comunicație.

Reprezintă mediul de transmisie a informației:


-cablu coaxial
-cablu torsadat
-fibra optica
-unde radio
-sateliți de comunicație

144. Care sunt principalele avantaje/dezavantaje ale rețelelor?

Avantaje:
- partajarea resurselor logice și fizice
-mediu de comunicare rapida
-mediu de lucru colaborativ
-acces la internet
-îmbunătățirea performanțelor
-posibilitatea de petrecere a timpului liber
-securitatea și managementul datelor

Dezavantaje:
-costurile pt hardware și software
-costurile de administrare
-partajări nedorite
-preocuparea pentru securitatea rețelelor și datelor

31

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)


lOMoARcPSD|11547612

145. Cum se clasifica rețelele după distanta între calculatoare?

-rețele locale (LAN- local area network): clasice, de domiciliu, necablate(WLAN-wireless


LAN)
-rețele metropolitane (MAN- metropolitan area network)
-rețele pe zone întinse (WAN- wide area network)

146. Cum se clasifica rețelele după topologia fizica?

-magistrală
-stea
-inel
-arbore
-plasa total conectată

147. Care sunt componentele hardware ale unei rețele?

-calculatoare
-echipamente periferice
-plăcile cu interfață de rețea
-alte echipamente necesare procesării datelor și comunicației în rețea: transceiver, receptor, hub,
bridge, comutator etc.

32

Downloaded by Popescu Diana (dianapopescu198@yahoo.com)

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