Sunteți pe pagina 1din 26

I.

SISTEME DE NUMERAIE I CODURI

1.1. Sisteme de numeraie


Sistemele numerice prelucreaz informaie Informaia este codificat un anumit tip de reprezentare Sistemul de numeraie = totalitatea regulilor de reprezentare a numerelor cu ajutorul unor simboluri numite cifre Sistemele de numeraie:
poziionale - valoarea unei cifre - determinat de poziia sa n cadrul numrului nepoziionale Curs 1 ASDN 12.10.2011 2

1.1. Sisteme de numeraie


Numrul N, n sistem poziional, n baza de numeraie b se reprezint:
N = aq 1b q 1 + ... + a0b 0 + ... + a p b p =
q 1 i = p

ai b i

12.10.2011

baza b este numr ntreg, > 1 ai sunt ntregi n gama: 0aib-1 notaia (N)b = numrul N n baza b dac baza b nu se specific - este implicit 10 complementul unei cifre a, notat a n baza b este definit: a = (b 1) a
Curs 1 ASDN

1.1. Sisteme de numeraie


Sistem de numeraie binar - baza b=2
n sistemul numeric binar avem 2 cifre binare (bii), 0 i 1 complementele cifrelor binare: 0 = 1; 1 = 0

Sistemele numerice folosesc pentru reprezentarea informaiei i alte sisteme de numeraie mai uzuale:
octal hexazecimal
12.10.2011 Curs 1 ASDN 4

1.1. Sisteme de numeraie


Sistem de numeraie octal - baza b = 8
8 cifre: 0 - 7 reprezentarea pentru echivalentul n binar - pe 3 bii
0 = 000; 1 = 001; 2 = 010; 3 = 011; 4 = 100; 5 = 101; 6 = 110; 7 = 111

Sistem de numeraie hexazecimal - baza b = 16


16 semne: 0 - 9 i A - F reprezentarea pentru echivalentul n binar - pe 4 bii
0 = 0000; 1 = 0001; 2 = 0010; 3 = 0011; 4 = 0100; 5 = 0101; 6 = 0110; 7 = 0111; 8 = 1000; 9 = 1001; A = 1010; B = 1011; C = 1100; D = 1101; E = 1110; F = 1111

12.10.2011

1 byte (octet) = 8 bii - reprezentare cu 2 semne utilizat pentru reprezentare restrns


Curs 1 ASDN

1.2. Conversia bazei de numeraie


Conversia se face din baza b1 n baza b2 n sistemele poziionale conversia se face prin nmuliri sau mpriri repetate Se disting 2 cazuri de conversie:
a) b1 < b2 b) b1 > b2

12.10.2011

Curs 1 ASDN

1.2. Conversia bazei de numeraie


a) b1 < b2
(N)b1 se exprim ca un polinom n puterile lui b1 i se evalueaz polinomul folosind aritmetica n baza b2 Exemplu:
b1 = 3 b2 = 10 (N)3 = 2120,1 (N)10 = 233 + 132 + 231 + 030 + 13-1 = = 54+9+6+0+0,3 = 69,3
12.10.2011 Curs 1 ASDN 7

1.2. Conversia bazei de numeraie


b) b1 > b2
se utilizeaz aritmetica n baza b1 se face conversia separat a prii ntregi i a prii fracionare conversia prii ntregi:
numrul se mparte la baza b2, se obine un ct i un rest se reine restul i se continu cu mprirea ctului la baza b2 algoritmul se oprete cnd ctul = 0 partea ntreag se obine prin scrierea resturilor obinute, n ordine invers generrii lor
12.10.2011 Curs 1 ASDN 8

1.2. Conversia bazei de numeraie


b) b1 > b2
conversia prii fracionare:
numrul de nmulete cu baza b2, se obine un numr format dintr-o parte ntreag i una fracionar se reine partea ntreag i se continu cu nmulirea cu baza b2 a prii fracionare obinute algoritmul se continu pn la obinerea preciziei dorite partea fracionar se obine prin scrierea prilor ntregi obinute, n ordinea generrii lor

12.10.2011

Curs 1 ASDN

1.2. Conversia bazei de numeraie


b) b1 > b2
Exemplu:
b1 = 10 b2 = 4 (N)10 = 347,4 conversia prii ntregi:
347:4 = 86 rest 3 86:4 = 21 rest 2 21:4 = 5 rest 1 5:4 = 1 rest 1 1:4 = 0 rest 1 Partea ntreag = (11123)4

conversia prii fracionare: 0,4 4 = 1,6 1 0,6 4 = 2,4 2


Partea fracionar = (1212...)4

Numrul (N)4 = (11123,1212)4

12.10.2011

Curs 1 ASDN

10

1.2. Conversia bazei de numeraie


Conversia numerelor din octal i hexazecimal n binar i invers - se bazeaz pe exprimarea prin 3, respectiv 4 bii a cifrelor din octal i hexazecimal Exemple:
din octal i hexazecimal n binar
(123,4)8 = (001 010 011, 100)2 = (1010011,1)2 (2C5F,8)16 = (0010 1100 0101 1111, 1000)2 = (10110001011111,1)2

din binar n octal i hexazecimal


(1010110,0101)2 = (001 010 110, 010 100)8 = (126,24)8 (10111001101010,10011)2 = (0010 1110 0110 1010, 1001 1000)16 = (2E6A,98)16
12.10.2011 Curs 1 ASDN 11

1.3. Coduri binare


Sistemul zecimal este preferat n interfaa om sistem de calcul Cifrele zecimale se reprezint prin succesiuni de cifre binare coduri binare (binar-zecimale) 10 cifre zecimale, 0 - 9, se pot reprezenta pe 4 bii Codurile binare:
ponderate neponderate
12.10.2011 Curs 1 ASDN 12

1.3.1. Coduri ponderate


La fiecare cifr binar - se asociaz o pondere Pentru fiecare grup de 4 cifre binare din cod - suma ponderilor acelor cifre binare care au valoarea 1 = cifra zecimal pe care o reprezint O cifr dintr-un cod ponderat, unde ai poate lua valoarea 0 sau 1, se scrie:
N = ai bi
i =0
12.10.2011 Curs 1 ASDN 13

1.3.1. Coduri ponderate


Exemple de coduri binare ponderate
Cifr zecimal b3 8 0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7 1 8 1 9
12.10.2011

b2 4 0 0 0 0 1 1 1 1 0 0

b1 2 0 0 1 1 0 0 1 1 0 0

b0 1 0 1 0 1 0 1 0 1 0 1

b3 2 0 0 0 0 0 1 1 1 1 1

b2 4 0 0 0 0 1 0 1 1 1 1

b1 2 0 0 1 1 0 1 0 0 1 1

b0 Pondere negativ 1 6 4 2 -3 0 0 0 0 0 1 0 1 0 1 0 0 0 1 0 1 1 0 0 1 0 0 1 0 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 0 1 0 1 0 1 1 1 1 1
14

Curs 1 ASDN

1.3.1. Coduri ponderate


Codul BCD (Binary Coded Decimal) = codul binar natural - ponderea 8421 (puterile lui 2!) - fiecare cifr zecimal este convertit n binar Codurile 2421 i cel cu pondere negativ 642-3, sunt coduri ponderate din categoria codurilor autocomplementare complementul lui N este 9-N Condiia de cod autocomplementar la codurile ponderate - suma ponderilor s fie egal cu 9
12.10.2011 Curs 1 ASDN 15

1.3.2. Coduri neponderate


Au alte reguli de formare Codul EXCES 3:
format prin adugarea lui 0011 (reprezentarea n binar a cifrei 3) la fiecare cuvnt de cod din codul ponderat BCD este un cod autocomplementar nu conine combinaia 0000, care ar putea fi confundat cu lipsa de informaie

12.10.2011

Curs 1 ASDN

16

1.3.2. Coduri neponderate


Coduri ciclice - cuvintele de cod succesive difer doar printr-o cifr binar Coduri reflectate - cuvntul de cod de n bii se genereaz prin reflectarea cuvntului de cod de n1 bii Codul GRAY:
ciclic reflectat
12.10.2011 Curs 1 ASDN 17

1.3.2. Coduri neponderate


Codul Grey pe 3 bii se obine prin reflectarea celui pe 2 bii Codul Grey pe 4 bii se obine prin reflectarea celui pe 3 bii
Gray 2 bii 0 0 0 1 1 1 1 0 Gray 3 bii 0 0 1 1 1 1 0 0

0 0 0 0 1 1 1 1

0 1 1 0 0 1 1 0

12.10.2011

Curs 1 ASDN

18

1.3.2. Coduri neponderate


Codurile binar-zecimale EXCES 3 i Gray
Cifr zecimal 0 1 2 3 4 5 6 7 8 9 Exces 3 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 1 Gray 0 0 0 0 0 1 0 1 1 1 1 1 1 0 1 0 1 0 1 0 0 1 1 0 0 1 1 0 0 1

12.10.2011

Curs 1 ASDN

19

1.4. Detectarea i corecia erorilor

n sistemele numerice informaia se poate altera n procesul de transmitere Corectitudinea informaiei recepionate se utilizeaz coduri detectoare i corectoare de erori

12.10.2011

Curs 1 ASDN

20

1.4.1. Coduri detectoare de erori


Apariia unei singure erori transform un cuvnt de cod valid n cuvnt de cod invalid Metode de detecie a erorilor
Metoda bitului de paritate
se adaug o cifr binar n plus la fiecare cuvnt de cod al unui cod dat, pentru a face ca numrul de bii de 1 din fiecare cuvnt s fie impar sau par Exemplu - se transmite cuvntul de cod 1011
pentru paritate impar - se adaug nainte de cuvnt cifra 0 0 1011 pentru paritate par - se adaug nainte de cuvnt cifra 1 1 1011
12.10.2011 Curs 1 ASDN 21

1.4.1. Coduri detectoare de erori


Metode de detecie a erorilor
Codul detector de erori 2 din 5
are ponderile 01247, cu excepia cuvntului de cod 0 zecimal
Codul detector de erori 2 din 5 Cifra zecimal 0 1 2 4 0 0 0 0 1 1 1 1 0 0 2 1 0 1 0 3 0 1 1 0 4 1 0 0 1 5 0 1 0 1 6 0 0 1 1 7 1 0 0 0 8 0 1 0 0 9 0 0 1 0
12.10.2011 Curs 1 ASDN

7 1 0 0 0 0 0 0 1 1 1
22

1.4.1. Coduri detectoare de erori


Pentru un cod de detecie a erorii de n bii nu se pot folosi mai mult de jumtate din cele 2n combinaii posibile ale cifrelor binare
Pentru 10 cifre sunt necesare cel puin 5 cifre binare!

Distana minim a unui cod = cel mai mic numr de bii prin care difer 2 coduri Un cod este detector de erori dac distana sa minim este 2
12.10.2011 Curs 1 ASDN 23

1.4.2. Coduri corectoare de erori


Cod corector de eroare - dac ntotdeauna cuvntul de cod corect poate fi dedus din cuvntul eronat Cele mai cunoscute coduri de corecie - codurile Hamming Codurile Hamming corectoare de erori singulare (o sigur eroare!) au distana minim = 3 Relaia lui Hamming - numr minim de bii de control necesari pentru corectarea erorilor singulare:
2 m + k +1
k

m = numr de bii de informaie util k = numr de bii de control


12.10.2011 Curs 1 ASDN 24

1.4.2. Coduri corectoare de erori


Exemplu de cod Hamming pentru m=4; mesaj original n cod BCD (4 bii de informaie util)
Din relaia lui Hamming k = 3 Numr total de bii: 4 (utili) + 3 (control) = 7 Biii de control apar pe poziiile corespunztoare puterilor lui 2
1 c1 2 3 4 5 6 7 c2 b1 c3 b2 b3 b4

Biii de control se calculeaz cu relaiile:


c1 = b1 b2 b4 c2 = b1 b3 b4

12.10.2011

c3 = b2 b3 b4

Curs 1 ASDN

25

1.4.2. Coduri corectoare de erori

Exemplu:
b1b2b3b4 = 0100 (cifra 4 din zecimal exprimat n cod BCD) biii de control calculai: c1 = 1, c2 = 0, c3 = 1 secvena de cod de corecie va fi: 1001100

12.10.2011

Curs 1 ASDN

26