You are on page 1of 38

Tema 1

Codis binaris i Sistemes de


numeració

1/45 Gabriel Capellá, Montserrat Corbalán


Sistemes de numeració i codis Contingut

• Objectius.
• Sistemes de numeració binari, octal i hexadecimal.
(Repassa l’alumne)
• Representació de nombres reals.
• Codis binaris.
• Codis numèrics
• Codis per la detecció d’errors
• Codi alfanumèric ASCII.

2/45 Gabriel Capellá, Montserrat Corbalán


Sistemes de numeració i codis Contingut

• Objectius.
• Representació de nombres reals.
• Codis binaris.
• Codis numèrics
• Codis per la detecció d’errors
• Codi alfanumèric ASCII.

3/45 Gabriel Capellá, Montserrat Corbalán


Sistemes de numeració i codis Objectius

En acabar aquest tema l’alumne ha de saber:


• Conèixer els diferents sistemes de numeració i realitzar
canvis de base
• Conèixer la representació de nombres reals
• Conèixer els codis binaris, els diferents tipus i les seves
propietats
• Conèixer els codis detectors de errors, els tipus i
característiques

4/45 Gabriel Capellá, Montserrat Corbalán


Sistemes de numeració i codis Contingut

• Objectius.
• Representació de nombres reals.
• Codis binaris.
• Codis numèrics
• Codis per la detecció d’errors
• Codi alfanumèric ASCII.

5/45 Gabriel Capellá, Montserrat Corbalán


Representació en coma flotant.

• Motivació:
Sistemes de numeració i codis

Evitar el dilema entre precisió i rang de


nombres representables en coma fixa.

• Si la coma està molt a la dreta es poden representar


nombres grans però amb pocs “decimals”. Poca precisió.
1010101010101010101010,1010

• Si la coma està molt a l’esquerra es poden representar


nombres amb molta precisió però no molt grans. Poc rang
dinàmic.
1010,1010101010101010101010

6/45 Gabriel Capellá, Montserrat Corbalán


Sistemes de numeració i codis Dilema rang- precisió.

•Exemple per un nombre de 24 bits.


Nombre Rang. Precisió.
de bits Major nombre Menor diferència entre dos
(S) (F) representable nombres.
24 0 224-20 16.777.215 20 1
16 8 216-2-8 65535,99609 2-8 0,00390625
12 12 212-2-12 4095,999756 2-12 0,000244140625
8 16 28-2-16 255,9999847 2-16 0,00001525878906
0 24 20-2-24 0,99999994 2-24 0,00000005960464478

(S) = Nombre de bits de la part sencera


(F) = Nombre de bits de bits part fraccionaria

7/45 Gabriel Capellá, Montserrat Corbalán


Representació en coma flotant.

• Filosofia semblant a la notació científica decimal:


Sistemes de numeració i codis

Signe(S), Mantissa (M) i Exponent (E).


N = (-1)S · M · baseE
• Permet múltiples representacions d’una mateixa quantitat.
Exemple decimal:
3,25 = 32,5·10-1 = 325·10-2=…= 0,325·101= 0,0325·102=…

• L'estàndard ANSI/IEEE 754-1985 normalitza:


•La posició de la coma a la mantissa
•El nombre de bits de la mantissa i de l’exponent
•La forma de codificar els nombres negatius.

8/45 Gabriel Capellá, Montserrat Corbalán


Format normalitzat IEEE 754 (simple, 32 bits)
1 8 23
Sistemes de numeració i codis

S Exp+127 M

MSB LSB MSB LSB

• Mantissa:
En format signe i magnitud:
• Signe (1 bit) (+) → S=0 (-) → S=1
• Magnitud (23 bits)
Mantissa normalitzada:
• 1,xxxx…x → M= xxxxx….x (23 bits fraccionaris)
• L’u sencer no es representa.
• Exponent
• Exponent (8 bits)
• El nombre s’expressa codificat en excés 127
• Negatius {0~126}, Positius {128~255}
9/45 Gabriel Capellá, Montserrat Corbalán
Format normalitzat IEEE 754 (doble, 64bits)
1 11 52
Sistemes de numeració i codis

S E+1023 M

MSB LSB MSB LSB

• Mantissa:
En format signe-magnitud:
• Signe (1 bit) (+) → S=0 (-) → S=1
• Magnitud (52 bits)
Mantissa normalitzada:
• 1,xxxx…x → M= xxxxx….x (52 bits fraccionaris)
• L’u sencer no es representa.
•Exponent:
• Exponent (11 bits)
• El nombre s’expressa codificat en excés 1023
• Negatius {0~1022}, Positius {1024~2047}
10/45 Gabriel Capellá, Montserrat Corbalán
Exemples IEEE 754

40000000IEEE 754 = N = (-1)S · 1,M · 2E


Sistemes de numeració i codis

0100 0000 0000 0000 0000 0000 0000 00002


Signe Exponent Mantissa
0 10000000 00000000000000000000000
(-1)0 x 2(128-127) x 1,0 =
+1 x 21 x 1 = 210

C0D00000IEEE 754 =
1100 0000 1101 0000 0000 0000 0000 00002
Signe Exponent Mantissa
1 10000001 10100000000000000000000
(-1)1 x 2(129-127) x 1,1012 =
-1 x 22 x 1,62510= -1 x 4 x 1,625
= - 6,510
11/45 Gabriel Capellá, Montserrat Corbalán
Sistemes de numeració i codis Conversió al format IEEE754 (de 32 bit)

Procediment Exemple
1 Prendre nota del signe. - 154010
0 = Positiu 1= Negatiu Negatiu: → S=1
2 Passar a binari. 154010 → 60416 →
(Consell: Si passem primer a 110000001002
hexadecimal, ens estalviarem
divisions)
3 Normalitzar la mantissa i 11000000100,2 · 20=
anotar els 23 bits de la part 10 posicions
fraccionaria. 1,10000001002 · 210
M=1000000100 0000…..0
23 bits

12/45 Gabriel Capellá, Montserrat Corbalán


Sistemes de numeració i codis Conversió al format IEEE754 (de 32 bit)

Procediment Exemple
4 Codificar l’exponent en Exp+127 =
excés 127. 10 +127 = 13710
5 Passar a binari l’ exponent 13710 → 8916 →100010012
codificat. Exp+127 = 100010012
6 Ajuntar totes les dades: Signe_Exponent_Mantissa.
1_10001001_10000001000000000000000
7 Opcionalment, expresar en hexadecimal
11000100110000001000000000000000
C 4 C 0 8 0 0 0

-154010 »» C4C08000IEEE 754


13/45 Gabriel Capellá, Montserrat Corbalán
Sistemes de numeració i codis Contingut

• Objectius.
• Representació de nombres reals.
• Codis binaris.
• Codis numèrics
• Codis per la detecció d’errors
• Codi alfanumèric ASCII.

14/45 Gabriel Capellá, Montserrat Corbalán


Codis binaris.

Concepte
Sistemes de numeració i codis

Un codi és una representació biunivoca que assigna a


cada simbol d’un alfabet font una combinació determinada
de simbols de l’alfabet codi. Si els símbols de l’alfabet codi
són el 0 i l’1 parlem de codis binaris.
Tipus de codis binaris
Numèrics Alfanumèrics
• Binari natural • ASCII
• Decimal codificat en binari (BCD) • Unicode
• BCD natural o BCD8421
• BCD Excés 3 (XS3)
• Gray
• Johnson

15/45 Gabriel Capellá, Montserrat Corbalán


Sistemes de numeració i codis Propietats dels codis binaris.

Codi ponderat
A cada digit binari se li assigna un pes i a cada paraula
codi la suma dels digits binaris amb valor 1

Codi autocomplementari (respecte d’un nombre K)


Si la suma dels nombres representats per dues
combinacions complementaries (M i M) es sempre K

Codi continu
Si les paraules codi consecutives son adjacents:
difereixen en un bit

Codi cíclic
Si és continu i addicionalment també son adjacents la
primera i la darrera paraules codi
16/45 Gabriel Capellá, Montserrat Corbalán
Sistemes de numeració i codis Propietats dels codis binaris.

Codi dens
Si tenint paraules de n bits el codi està format per 2n
paraules

Distancia entre dos paraules d’un codi


Nombre de digits que s’han de modificar en una per
obtenir l’altra

Distancia mínima d’un codi (dm)


És la menor de les distancies entre 2 paraules que
pertanyin al codi.
Concepte molt important en detecció d’errors

17/45 Gabriel Capellá, Montserrat Corbalán


Codis numèrics :binari natural
Binari natural (4 bits)
Sistemes de numeració i codis

Valor 8421
0 0000
1 0001
2 0010 Ponderat Si
3 0011
4 0100
Autocomplementari Si
5 0101 Respecte de 2n-1
6 0110 Continu No
7 0111
8 1000 Cíclic No
9 1001
10 1010 Dens Si
11 1011
12 1100 Distancia mínima 1
13 1101
14 1110 BCD
15 1111
18/45 Gabriel Capellá, Montserrat Corbalán
Es el código binario autocomplementario?

• Si, por ejemplo, empezamos por el 0, 0000


y lo complementamos, ¿qué obtenemos?.
• 1111, ¿forma parte del código?.

• Qué sucede con el 1, 0001, su


complementario es 1110 que corresponde
al 14 y forma parte del código.
• Por tanto, es autocomplementario
respecto de 15.

19/45 Gabriel Capellá, Montserrat Corbalán


Codis numèrics BCD natural
BCD natural (BCD 8421)
Sistemes de numeració i codis

Cada xifra decimal es codifica en 4 bits


Valor 8421
0 0000
Ponderat Si
1 0001
2 0010 Autocomplementari No
3 0011 Respecte de 9
4 0100 Continu No
5 0101
Cíclic No
6 0110
7 0111 Dens No
8 1000
9 1001
Distancia mínima 1

20/45 Gabriel Capellá, Montserrat Corbalán


Codis numèrics: BCD XS3
BCD excés a 3 (BCD XS3)
Sistemes de numeració i codis

Cada xifra decimal es codifica en 4 bits


Valor Codi
0 0011
Ponderat No
1 0100
2 0101 Autocomplementari Si
3 0110 Respecte de 9
4 0111 Continu No
5 1000
Cíclic No
6 1001
7 1010 Dens No
8 1011
9 1100
Distancia mínima 1

21/45 Gabriel Capellá, Montserrat Corbalán


Codis numèrics: Gray
Gray ( 4 bits)
Sistemes de numeració i codis

Valor Codi
0 0000
1 0001
2 0011
3 0010 Ponderat No
4 0110
5 0111 Autocomplementari No
6 0101
7 0100
Continu Si
8 1100
9 1101
Cíclic Si
10 1111
Dens Si
11 1110
12 1010 Distancia mínima 1
13 1011
14 1001
15 1000
22/45 Gabriel Capellá, Montserrat Corbalán
Codis numèrics: Gray (2)
Gray
Sistemes de numeració i codis

El codi Gray també es diu codi reflexat, per la forma en


que es genera. El codi de n bits es genera prenent com a
base el de n-1 bits
Codi de 2 bit Codi de 3 bit

0 00 0 00
1 01 0 01
11 0 11
10 0 10
1 10
1 11
1 01
1 00

23/45 Gabriel Capellá, Montserrat Corbalán


Codis numèrics: Gray (3)
Gray ( 4 bits)
Sistemes de numeració i codis

Generació (1)
Codi de 1 bit Codi de 2 bits Codi de 3 bits Codi de 4 bits
0 00 0 00 0 000 0
1 01 0 01 0 001 1
11 0 11 0 011 2
10 0 10 0 010 3
1 10 0 110 4
1 11 0 111 5
1 01 0 101 6
1 00 0 100 7
1 100 8
1 101 9
1 111 10
1 110 11
1 010 12
1 011 13
1 001 14
1 000 15
24/45 Gabriel Capellá, Montserrat Corbalán
Codis numèrics: Gray (4)
Conversió de binari a Gray
Sistemes de numeració i codis

Partint de la paraula en codi binari natural:


• El bit més significatiu es conserva a b xor
• Anant d’esquerra a dreta, cada nou bit en 0 0 0
Gray es la Or-exclusiva dels dos bits 0 1 1
corresponents del codi binari.
1 0 1
1210 = 11002 = 1010 (Gray) 1 1 0
binari natural: 1 1 0 0

x-or x-or x-or

Gray: 1 0 1 0

25/45 Gabriel Capellá, Montserrat Corbalán


Codis numèrics: Gray (5)
Conversió de Gray a binari natural
Sistemes de numeració i codis

Partint de la paraula en codi Gray:


• El bit més significatiu es conserva a b xor
• Anant d’esquerra a dreta, cada nou bit en 0 0 0
binari es la Or-exclusiva del bit anterior (Gray) 0 1 1
i el següent bit (binari natural)
1 0 1
1010 (gray) = 1100 (Binari natural) 1 1 0

Gray : 1 0 1 0

x-or x-or x-or

binari natural : 1 1 0 0

26/45 Gabriel Capellá, Montserrat Corbalán


Codis numèrics (9)
Gray ( 4 bits)
Sistemes de numeració i codis

Aplicació:
Control de posició amb disc codificat amb el codi Gray

0 (LSB)

Codi binari Codi Gray

27/45 Gabriel Capellá, Montserrat Corbalán


Codi binari Codi Gray
0 00
0 01
0 11
0 10
1 10
1 11
1 01
1 00

Si hay n contactos, habrá 2 n ,en este ejemplo, 8


posiciones.

PROBLEMA: los contactos no están perfectamente


alineados.
Supongamos cuando el ángulo del eje cambia de
179,9 ° a 180,1 ° (del sector 3 al sector 4)
El patrón de contacto cambia:
apagado-encendido-encendido a encendido-
apagado-apagado.
En la realidad lo que puede pasar es que el contacto 1 cambie primero, seguido del contacto 3
y luego el contacto 2, por ejemplo, la secuencia real de códigos es:
off-on-on (posición inicial)
on-on-on (primero, el contacto 1 se enciende)
on-on-off (siguiente, el contacto 3 se apaga)
on-off-off (finalmente, el contacto 2 se apaga)
28/45 Gabriel Capellá, Montserrat Corbalán
Codis numèrics (10)
Johnson ( 5 bits)
Sistemes de numeració i codis

El codi Johnson també es diu codi progresiu, per la forma


en que es genera. El codi de n bits genera 2n combinacions
Valor Codi Ponderat No
0 00000
1 00001 Autocomplementari No
2 00011
Continu Si
3 00111
4 01111 Cíclic Si
5 11111
Dens No
6 11110
7 11100 Distancia mínima 1
8 11000
9 10000
29/45 Gabriel Capellá, Montserrat Corbalán
Sistemes de numeració i codis Contingut

• Objectius.
• Representació de nombres reals.
• Codis binaris.
• Codis numèrics
• Codis per la detecció d’errors
• Codi alfanumèric ASCII.

30/45 Gabriel Capellá, Montserrat Corbalán


Sistemes de numeració i codis Codis detectors de error

Sempre que es puguin produir errors en la transmissió


d’informació binaria és convenient d’introduir un sistema
capaç de detectar-ho.
Això dona lloc als codis per la detecció d’errors.
En general els codis detectors de errors tenen una
distància mínima dm igual a 2 i això permet detectar un bit
amb error ( canvi de 0 per 1 o 1 per 0).
Els codis detectors de error més usuals son els codis de
paritat constant i els codis de pes constant

31/45 Gabriel Capellá, Montserrat Corbalán


Sistemes de numeració i codis Codis de paritat constant.

Un codi de paritat s’obté afegint al codi original un bit


addicional denominat bit de paritat
El bit de paritat es genera a l’origen de la transmissió de
tal manera que el conjunt dels bits d’informació (codi
original) més la del propi bit de paritat tinguin sempre la
mateixa paritat, senar o parell, formant el codi de paritat.
La paritat es defineix com el caràcter senar o parell del
nombre de 1s de la paraula codi.

Exemple: Bit de paritat parell Exemple: Bit de paritat senar


1100 → 11000 (2 uns) 1100 → 11001 (3 uns)

32/45 Gabriel Capellá, Montserrat Corbalán


Codis de paritat constant: Esquema.

Sistema detector d’error basat en el codi de paritat


Sistemes de numeració i codis

Codi origen Codi de paritat constant

Sistema Sistema
digital digital
transmisor receptor

Generador Detector bit


bit paritat paritat

Bit de paritat
Ok/Error

33/45 Gabriel Capellá, Montserrat Corbalán


Codis de pes constant
Es diu dels codis que tenen sempre constant el nombre
Sistemes de numeració i codis

de 1s de les seves paraules


Exemple: Codi 2 de 5 (biquinari)

0 0 0 0 1 1
1 0 0 1 0 1 dm = ?2
2 0 0 1 1 0
3 0 1 0 0 1
4 0 1 0 1 0
5 0 1 1 0 0
6 1 0 0 0 1
7 1 0 0 1 0
8 1 0 1 0 0
9 1 1 0 0 0
34/45 Gabriel Capellá, Montserrat Corbalán
Sistemes de numeració i codis Contingut

• Objectius.
• Representació de nombres reals.
• Codis binaris.
• Codis numèrics
• Codis per la detecció d’errors
• Codi alfanumèric ASCII.

35/45 Gabriel Capellá, Montserrat Corbalán


Codis alfanumèrics (1)
ASCII ( 7 bits)
Sistemes de numeració i codis

El codi ASCII pren el nom del acrònim de


American Standard Code for Information Interchange

Codifica tots els caràcters del alfabet més els nombres, els
signes de puntuació i diverses funcions. Per un teclat
standard de 196 caràcters cal un codi ASCII de 8 bits.

36/45 Gabriel Capellá, Montserrat Corbalán


Codis alfanumèrics (2)
Taula Codi ASCII ( 7 bits)
Sistemes de numeració i codis

0 1 2 3 4 5 6 7 8 9 a b c d e f
0 NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI

1 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US

2 SPC ! " # $ % & ' ( ) * + , - . /


3 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
4 @ A B C D E F G H I J K L M N O
5 P Q R S T U V W X Y Z [ \ ] ^ _
6 ` a b c d e f g h i j k l m n o
7 p q r s t u v w x y z { | } ~ DEL

Exemple: Codi ASCII del caracter “a”: 61H= 110 00012=9710


Saber más sobre el código ascii
37/45 Gabriel Capellá, Montserrat Corbalán
Código Unicode
• Para saber sobre Unicode

38/45 Gabriel Capellá, Montserrat Corbalán

You might also like