Vous êtes sur la page 1sur 63

Chapitre 1:

Système de numération
& codes.

Proposé par R. Skouri et A. El Abbassi


1
Representation de l’ information

Dans les systèmes numériques, toute


information est codée en binaire (0,1)

On Off

ON OFF True False

Un mot est l’unité d’information de base. Un mot est Yes No

un ensemble de N bits qui représente une parmi 2N 1 0


valeurs.

Définitions et conventions
Niveau Logique positive Logique
négative
H ( Hight ) haut 1 0

L ( Low ) bas 0 1
Représentation de l’ information
 Exemple: 2 interrupteurs en
série peuvent représenter 4
valeurs.

0 (00)
1 (01)
2 (10)
3 (11)

Unité Définition

Bit (B) Chiffre binaire, 1 ou 0

Octet (O) Habituellement 8 bits

Kilo-octet (KO) 1 kilo-octet =210 = 1 024 octets


Système de numération

Binaire Octale Décimale Hexadécimale

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

Décimale, 4 4 4
5 5 5
Binaire, 6 6 6
7 7 7
Octale 8 8
9 9
Hexadécimale A
B
C
D
E
F
I. Représentation des nombres

Base Digits Exemple

Décimale B=10 {0,1,2,3,4,5,6,7,8,9} 25510

Binaire B=2 {0,1} 111111112

Octal B= 8 {0,1,2,3,4,5,6,7} 3778

Hexadécimal B=16 {0,1,2,3,4,5,6,7,8,9,A, B, C, D, E, F} FF16

Décimale 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Hex 0 1 2 3 4 5 6 7 8 9 A B C D E F
Binaire 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
n1
Notation polynomiale
N  ai r i

im
Base R N  ( a 4 a3 a 2 a1a 0 .a 1a  2 a  3 ) R
 a 4  R 4  a3  R 3  a 2  R 2  a1  R 1  a 0  R 0
 a 1  R 1  a  2  R  2  a  3  R  3

Binaire: 1011 .11 2  1  2 3  0  2 2  1  21  1  2 0  1  2 1  1  2 2


1 1 3
 8  0  2 1   11  11 .75 10
2 4 4

3
Octal: 147 .38  1  8 2  4  81  7  8 0  3  8 1  64  32  7 
8
 103 .375 10

Hexadécimale: A 2 F16  10  16 2  2  16 1  15  16 0  2560  32  15  2607 10


II Arithmétique

Addition
Soustraction
Multiplication
Division
II 2 Arithmétique Binaire
 II 2 1 Addition

s=a+b
a b
Décimale Binaire
0 0 0 00
0 1 1 01
x0
1 0 1 01
1 1 2 10 +y0
c0 s0
Carry Somme
retenue
1 + 1 =>
= 10 je pose 0 et je retiens 1
Exemple:Base 2 sur 4 bits

binaire
décimal: 1 1 1 Retenue
1310 1 1 0 12 8 + 4 + 1 = 1310
+ 710 +0 1 1 12 4 + 2 + 1 = 710
-----------
2010 1 0 1 0 02 0+ 4 = 410

dépassement de capacité sur entiers naturels


20 > 24-1 ne peut pas être présenté sur 4 bits mais peut
être présenté sur 5 bits
Lorsque la somme de 2 entiers naturels codés sur n bits n’est
pas représentable sur n bits, on dit qu’il y a dépassement de
capacité sur entiers naturels
 II 2 2 Soustraction x0
- y0
C0 S0
Borrow c0 s0
retenue
1
0 0
-0 -1
00 11
1 1
-0 -1
01 00
10
Exemple 1 0
1
1 1 0 12 13

− 1 1 12 7

Exemple 2 1 1 02 6 
• En binaire sur 4 bits
1 1 1
0 0 0 0 1
0 1 1
0 1 1 0 1 1 00 1 010
-0 0 1 1 - 1 1 10 - 0 100
0 01 1 11 1 10 0 11 0

dépassement de capacité sur entiers naturels


Lorsque le nombre à soustraire est plus grand que le nombre dont
on le soustrait, on obtient un dépassement de capacité sur
entiers naturels
II 2 3 Multiplication X = 1101
Y = 101
0 x 0 = 0 1 x 1 = 1
1101 = 9
101 = 11
0 x 1 = 0 1 x 0 = 0
00000000 = P0
+ 1101
00001101 = P1
1101 13 + 0000
× 101 5 00001101 = P2
+ 1101
1101
Produits 01000001 = P3
0000
+1101 Partiels

1000001 65 

Nous obtenons des produits partiels P0, P1;…..Pn ou : P0 = 0 Pi+1 = Pi + 2i(xiY)


n 1 n 1
Pn  i 0
2 ( x iY )  Y
i

i 0
2 ix i  YX
Exemple : Base 5  Digit = {0,1,2,3,4}

(2)5 + (3)5 = (5)10


= (?)5
Addition
= (10)5
+ 0 1 2 3 4
0 0 (5)10 = 0*50 + 1*51
1 1 2 (6)10 = 1*50 + 1*51
2 2 3 4
3 3 4 10 11 (8)10 = 3*50 + 1*51
4 4 10 11 12 13
Multiplication
* 0 1 2 3 4
(6)10 = 1*50 + 1*51
0 0
1 0 1 (9)10 = 4*50 + 1*51
2 0 2 4
3 0 3 11 14 (16)10 = 1*50 + 3*51
13
4 0 14 13 22 31
 II 2 4 Division
0 / 0 = impossible
0 / 1 = 0
1 / 0 = impossible
Diviseur
1 / 1 = 1
11 0 Quotient
10 1101 Dividende
−10
10
−10 Résultat:
01 13/2 = 6 reste 1 
− 0 Reste
1
II 3 Arithmétique hexadécimale
F
Exemple 1 +

1 A34 1
-----------
- 26
3E42 -------
(16)10

+ D86 A0 E Conversion Hex

4B C 8 3–2–1=0 (10)16 = 0*160 + 1*161

4 est plus petit que , je prêt 1.161:


4 + 1.161 -6 = 20 -6 =1410 = E16
On écrit E et on tient compte du prêt 1

On écrit 0, pas de borrow


A–0=A
Exemple 3
• A3416
• * 2616
• -----------
• 3D 3 8
• + 1468
616*416=610*410 = 2410 = 1*161+8*160=1816
• -----------
• 183B816 On écrit 8 et on retient 1

616*316 + 1=1 + 610*310 = 1910 = 1*161+3*160=1316

On écrit 3 et on retient 1

616*A16 + 1=1 + 610*1010 = 6110 = 3*161+13*160=3D16

On écrit 3D
III Conversion d’un système

de

numération à un autre
Conversion : 10 2
Divisions successives reste

43 ÷ 2 = 21 1
Écriture du nombre
4310 en base 2 21 ÷ 2 = 10 1

10 ÷ 2 = 5 0

5÷2 =2 1

2÷2 =1 0

1÷2 =0 1

1 0 1 0 1 1
Le quotient = 0, stopper la division

Le nombre binaire correspond au reste en partant du dernier vers le premier


Conversion : 10 2
 69.6= (?)2 Multiplication successive par 2 de
la partie fractionnaire.

0.6 x 2 = 1.2 0.1


0.2 x 2 = 0.4 0.10
0.4 x 2 = 0.8 0.100
0.8 x 2 = 1.6 0.1001
0.6 x 2 = 1.2 0.10011
0.2 x 2 = 0.4 0.100110

On arrête lorsque on obtient une partie fractionnaire nulle ou lorsque le


nombre de bits obtenus est suffisant. Le nombre binaire s’obtient en lisant
les parties entières de la première division vers la dernière
• Exemple : 0.312510 = (?)2

0.3125 x 2 = 0.625 0 MSB a-1

0.625 x 2 = 1.25 1 a-2

0.25 x 2 = 0.50 0 a-3


0.50 x 2 = 1.00 1 LSB a-4

Stop

0.312510 = 0.01012
Conversion Décimale  Octale

Octale  décimale
Exemple : 372.6 8 = (?) 10

372.6 8 = (3*82 + 7*81 + 2*80 + 6*8-1 ) 10 = 250.75


Décimale Octale
Exemple 1: 266 10 = (?) 8 266 8
2 33 8
1 4 8
266 10 = (214) 8
4 0
Exemple 2: 0.37 10 = (?) 8

0.37 * 8 = 2.96
0.96 * 8 = 7.68
0.68 * 8 = 5.44 0.37 10 = (0.2753) 8
0.44 * 8 = 3.52
Conversion : OctaleBinaire
Octale  Binaire
Octale 0 1 2 3 4 5 6 7
Binaire 000 001 010 011 100 101 110 111

Exemple: 472 8 = (?) 2 4 8 = 100 2


472 8 = (100 111 010) 2
7 8 = 111 2
2 8 = 010 2

Binaire Octale

Exemple: 1011000012 = (?)8


1012 = 5 8
1002 = 4 8
0012 = 1 8

Exemple: 101 100 0012 = (541)8


Conversion Hexadécimale  Binaire
Hexadécimale  Binaire
Hex 0 1 2 3 4 5 6 7 8 9 A B C D E F
Bin 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111

Exemple: 9F2 16 = (?) 2 9 16 = 1001 2


9F2 16 = (1001 1111 0010) 2
F 16 = 1111 2
2 16 = 0010 2

Binaire Hexadécimale
Exemple: 1011 0011 1101 2 = (?) 16

1011 2 = B 16
0011 2 = 3 16
0010 2 = D 16
1011 0011 1101 2 = (B3D) 16
• (1010 0110)2 = ( 1010)2. 161 + (0110)2.160

• = (8 + 2).161 + (4+2).160

• = (A6)16

FE16 = F16.161 + E16.160 758 = (7x81 + 5x80)


= 11112.24 + 11102.20 = 1112.23 + 1012.20
= 1111 11102 = 111 1012
(a) 10A4h (b) CF8Eh (c) 9742h
IV Nombre signé

• Un entier relatif est un entier qui peut être


soit positif soit négatif.
• 3 façons de représenter +/- N avec n bits:

Module et signe (M&S)

Complément à 1 (noté Cà1)


Complément à 2 (noté Cà2)
Module et signe
N bits

-2N-1 2N-2    23 22 21 20

Bit de signe Valeur absolue


MSB LSB

• On utilise le bit le plus à gauche pour représenter le signe (S: signe) ("+" =
0, "-" = 1) + valeur absolue
Sur 7 bits

+ 52 0 1 1 0 1 0 0

- 52 1 1 1 0 1 0 0
• Avec n bits: On peut représenter les nombres
– Non signé: de 0 .. (2n -1)
– Signé : de -2n-1+1.. (2n-1 -1)
Nombre non signé
(-7) 0 (7) (15)
1111
0000 0111
1111
Nombre Signé: M&S
Nbre Binaire
Décimale
-7 +0 Positive Négative
-6 1111 0000
+1 0 0000 1000
1110 0001
-5 +2 1 0001 1001
1101 0010
2 0010 1010
-4 1100 0011 +3
3 0011 1011
1011
-3 0100 +4 4 0100 1100
1010 0101
-2 +5 5 0101 1101
1001 0110
-1 1000 0111 +6 6 0110 1110
-0 +7 7 0111 1111
IV 2 Complément à 1: Ca1
• pour un nombre négatif, on prend la représentation de
la partie entière et on inverse tous les bits
• ex1 : N=5  0101 N=-5  1010
N : nombre positive N est le complement à 1 de N
1010=1111-0101(24-1)-5 N  ( 2  1)  N
n

ex2: Ca1 de 7 24  10000


avec 4 bits-
1  00001
1111
-
7 = 0111
1000 -7
Complément a 1 La droite de 4 bits donne les codes des nombres -7 à +7 :

-7 -1 -0 +0 +1 +7
-----+-------------+-------+-------+-------+--------+-----
1000…………… 1110 1111 0000 0001……0111
Modulo-16
0 3 6 -6 -3 -0 pour les nombres signés

0000 0011 0110 1001 1100 1111


0 3 6 9 12 15 pour les nombres non signés
0000
1111 0001 Nbre Binaire
15 0 Nbre Décimale
Positive Négative
-0
0 0000 1111
1100 12 -3 4 0100
1 0001 1110
-7 7 2 0010 1101
8
0111 3 0011 1100
1000
4 0100 1011
• Inconvénient :
5 0101 1010
plus difficile à interpréter
6 0110 1001
il existe également deux codes
pour le 0 : -0  1111 et +0 0000 7 0111 1000
IV 2 1 Addition Ca1

0101 5 1010 -5
+ +
0010 2
0010 2
0111 7 1100 -3

5 +1 0 1 0 -5
0101
+
1101 -2 1101 -2

10010 10111
(Retenue? +1)
1 1

0011 3 1000 -7
IV 2 2 : Ca1 Soustraction

la soustraction est identique à l’addition

0 1 1 0 0
• Calculer (12)10 - (1)10. - 0 0 0 0 1
(12)10 = 011002. --------------
Ca1
(-1)10 = 111102. 0 1 1 0 0
+ 1 1 1 1 0
--------------
1 0 1 0 1 0
1
--------------
Résultat Finale 0 1 0 1 1
IV 3 Complément à 2
• Le complément à 2 est le mode de représentation le plus utilisé en
arithmétique binaire et donc dans les ordinateurs pour coder les
nombres entiers.
• Pour obtenir l ’opposé d ’un nombre:
1. Inverser tout ses bites,
2. Ajouter 1
–N = N + 1
Exemple, -6 s’obtient de la façon suivante:
1001
+610 = 01102 +1

10102 = -610

10 10 = -610 0101
2
+1

01102 = +610
01 10 2 = +610
Représentation des nombres négatives en Ca2
Binary number
Decimal
0000 magnitude Positive Negative
1111 0001
15 0 0 0000
-1
1 0001 1111
1100 12 -4 4 0100
2 0010 1110
Soustraire 1 -8 7 3 0011 1101
Dans cette région 8 0111 4 0100 1100
1000
5 0101 1011
6 0110 1010
7 0111 1001

Nmax = 7=23-1 8 1000


Nmin =-23=-8

Remarque: sur 4 bits on peut représenter -8 mais pas 8


Un seul code pour le 0,
Le bit de gauche est le bit de signe (1=négatif, 0 = positif)
Complément à 2
• Nous pouvons analyser en détails une représentation en Ca2 Sur 4 bits:
10002 = -24-1 : la valeur négative la plus petite
01112 = 1000 - 1= 24-1 – 1 : la valeur positive la plus grande

• D’où la plage de variation des nombres signés avec une représentation en


Ca2 sur n bits :

[ ]
-2n-1 0 2n-1-1
Minimum Maximum

4 bits -(23) = -8 (23-1) = +7


8 bits -(27) = -128 (27-1) = +127
16 bits -(215) = -32,768 (215-1) = +32767
IV 3 1 Complément à 2: Extension
• Un nombre représenté sur p bits peut être étendu en
un nombre sur n>p bits en introduisant la valeur du bit
de rang p-1 sur les bits de rang p à n-1

• Exemples : Nombres représentés sur 4 bits

 N = 01102. sur 8 bits N = 0000 01102


 N = 00012. sur 8 bits N = 0000 00012
 N = 10012. sur 8 bits N = 1111 10012
 N = 11012. sur 8 bits N = 1111 11012
 N = 716. sur 8 bits N = 0716
 N = A16. sur 8 bits N = FA16
Avantage
• Une seule représentation de 0
• Arithmétique avantagé

n-2
an-1an-2 . . . a1a0 = -2n-1an-1 + Σ 2i ai
i=0

Représentation sur 8 bit


-128 64 32 16 8 4 2 1

Exemple -128 64 32 16 8 4 2 1
1 1 1 1 1 1 0 1

-128+64+32+16+8+4+1 = -128 + 125 = -3


Complément à 2:

Exemples sur 8 bits

-27 26 25 24 23 22 21 20
0 1 0 0 0 1 1 0

+64 +4 +2 = 70

-128 64 32 16 8 4 2 1
1 0 0 0 0 0 1 1

-128 +2 +1 = -125
-128 64 32 16 8 4 2 1

1 0 0 0 1 0 0 0

-128 +8 = -120
overflow
0
increasing
0
marker increasing order

1
order
1 3 000

zero codes
redundant
7 111 000
001 111 001

6 110 010
increasing 2 2 110 010 2
order
011 101 011
101
5 100 3 1 100 3
4 0
Nombre Non Signé Nombre Signé

38
0 0
7 111 000 1 0 000 1
001 111 001
increasing
6 110 010
increasing 2 1 110 order 010
2
order
011 101 011
101
5 100 3 2 100 3
4 3
Nombre en Ca1 sur 4Bits
Nombre Non Signé

39
Nombre en CA2 et Nombre Non signé »

0 0
7 111 000 1 1 000 1
001 111 001

6 110 Ordre 010 2 2 110 Ordre 010 2


croissant
croissant
011 101 011
101
5 100 3 3 100 3
4 4
Nombre Non Signé Nombre en Ca2 sur 4 Bits

40
En résumé ( n=4 bits )

Ca1
Décimal Module et signe Ca2

-8 - - 1000
-7 1111 1000 1001
-6 1110 1001 1010
-5 1101 1010 1011
-4 1100 1011 1100
-3 1011 1100 1101
-2 1010 1101 1110
-1 1001 1110 1111
0 0000 or 1000 0000 or 1111 0000
1 0001 0001 0001
2 0010 0010 0010
3 0011 0011 0011
4 0100 0100 0100
5 0101 0101 0101
6 0110 0110 0110
7 0111 0111 0111
IV 3 2 Le débordement
Sur 8 bits l’intervalle des valeurs
possibles est
01 1 1 1 1
[-28-1, 28-1 -1]=[-128,127]
0 0 1 0 1 0 1 1
4310 43 + 107 =150 est une valeur à
+ l’extérieur de l’intervalle nous
0 1 1 0 1 0 1 1 sommes en présence d’un cas de
10710 dépassement de valeur ou plus
simplement un cas de débordement
1 0 0 1 0 1 1 0
-106
La valeur obtenue -106 est incorrect
Lorsque le résultat de l’opération n’est pas représentable, on parle de
DÉBORDEMENT de l’opération +/-.

• Le débordement survient uniquement quand on additionne deux


nombres positifs ou deux nombres négatifs.
• Le débordement peut être facilement détecté, il survient lorsque les
deux dernières retenues sont différentes
Conditions de débordement

Si on ajoute 2 nombre positifs et on obtient un nombre négatif


Ou si on ajoute 2 nombre négatifs et on obtient un nombre positif
5+3= -7 - 2 =

-1 +0
-1 +0
-2 1111 0000 +1
-2 1111 0000 +1 1110 0001
1110 0001
-3 +2
-3 +2
1101 0010
1101 0010 -4
-4 1100 0011 +3

- +
1100 0011 +3 -5 1011
-5 1011 0100 +4
0100 +4 1010
1010 -6 0101
-6 0101 1001
+5
1001
+5 0110
0110 -7 1000 0111 +6
-7 1000 0111 +6
-8 +7
-8 +7
+3
-2
Débordement si :

0 11 001
011 7 1010 -5
+ 1 +
0010 2 0010 2

1001 1100 -3
C4=0, C3=1 Overflow C4=0, C3=0
111 10
0111 7 1001 -7
+ +
1110 -2 1110 -2

0101 5 0111
C4=1, C3=1 C4=1, C3=0
Overflow
IV 3 3 Résumé
Nombre non signé: n 1
A  (a a ......a a a )   i
a 2 i

 Nombre signé:
n -1 n -2 2 1 0 2
i 0
n2

 M&S A  (sa n -2 ......a 2 a 1a 0 ) 2  (1) s  ai 2 i


Complément à 2 i 0
n2
A  (a n -1a n -2 ......a 2 a 1a 0 ) 2   an 1 2 n 1   ai 2i
i 0
Si an-1=0 alors A est positif
si non A est négatif

Exp 4 bits :1101=-24-1 + 23-1 +0*23-2 + 21-1


=-3
Plus petit nombre négatif : tous les ai=0 sauf an-1=1 Amin=-2n-1
Plus grand nombre positif : tous les ai=1 sauf an-1=0 Amax=2n-1 -1
Résumé suite


• Le décimale utilisé par l’homme. Le binaire par les ordinateurs, hex pour
simplifier l’écriture du nombre binaire.
• Complément à un - abandonné

• 00000 00001 ... 01111

10000 ... 11110 11111

• Complément à 2: universel pour les ordinateurs

00000 00001 ... 01111

10000 ... 11110 11111

• Overflow: nombres ; computers finite, erreurs!


IV 4 Représentation des nombres sur N bits

• Non signé: 0 à 2N - 1
• Ca2 : - 2 N-1 à 2 N-1 - 1
• Ca1 : - 2 N-1 +1 à 2 N-1 - 1
• BCD : 0 à 10 N/4 - 1

Mais pour?
– Les plus grandes nombres?
9,369,396,989,487,762,367,254,859,087,678
– . . . ou les plus petits nombres?
0.0000000000000000000000000318579157
IV 4 1 Notation Scientifique

Virgule flottante
N = (-1)s  M  BE
où : M = mantisse
B = base
E = exposant
s = signe de la mantisse

Exemples:
1012 = 1,01  102
- 510 = - 1012 = - 1,01  22
510 = 1012 = 516 =0,516x161= 0,01012  24
IEEE 754

Simple Précision (32-bit)


31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
S exposent Mantisse

1bit 8 bits 23 bits

(–1)S x (1,F) x 2exposent-127

Double Précision (64-bit)


63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 . . . 2 1 0
S exposent Mantisse

1bit 11 bits 52 bits

(–1)S x (1,F) x 2exposent-1023


IEEE 754: Simple précision

S Exposant E Partie fractionnaire F


(est défini par le
code excès 127) (-1)S x 2E-127x 1.F
0 < E < 255 Soit: e = E – 127 exposant de 2
E: exposant codé sur 8 bits. En fait, on code sur un octet e+127
M: mantisse codée sur les 23 bits de poids faibles

representable negative representable positive


0
numbers (S=1) numbers (S=0)
exposant exposant exposant
overflow underflow overflow
(-1)S x 1.M x 2E-127

Exemple

Soit le nombre : –1.1000…0002 x 21-127=-(20 + 2-1)10 x 2-126=1.763 x 10-38

2-127 = 20-127=> E = 0000 0000 (= 0)


20 = 2127-127 => E= 0111 1111 (= 127)
2+127 = 2254-127 => E= 1111 1110 (= 254)

F=0,10011102
25.75 => 00011001.110 => 1.1001110 x 24 E=13110=100000112

25.75 => 0 1000 0011 100 1110 0000 0000 0000 0000 => 41CE000016
51
Exemple:
(1 10000001 01000000000000000000000)IEEE 754=(?)10

S=1 E=100000012=27 + 1 = 129, F=0.01


(-1)1 x 2129-127 x (1.012) = -1 x 22 x 1.25 = -5
Exposants interdits:

00000000 (E=0) signifie que le nombre est dénormalisé


11111111 (E=255) indique que l'on n'a pas affaire à un nombre
Not a Number (NaN) signale des erreurs de calculs, par exemple
une division par 0
1  e+127  254
Le plus petit exposant ­126 et le plus grand exposant +127
1.0 x 2-126 ≤ X ≤ (2-2-23) x 2127
1.18x10-38 ≤ X ≤ 3.40 x 1038 (approx.)
• Exemple

N=0 x 00000000 00000000000000000000000

N=∞ x 11111111 00000000000000000000000

ex: 1 10010001 10001110001000000000000

N = (-
(-1)(1.10001110001)(2145
145--127)

= (-
(-1)(1.10001110001)(218)
= -11000111000100000002
= -407,68010
• ex: 010110100100012
on peut l’écrire sous forme:
1011010010001 = 1.011010010001 x 212
E=12+127 = 139 = 10001011 , S=0
0 10001011 01101001000100000000000
Exemple: -0.75  Simple précision IEEE754
• Nombre négatif: donc S = 1
• fraction Binaire :
0.75*2 = 1.5 (0.1)
0.50*2 = 1.0 (0. 11), donc 0.7510 = 0.112
• 0.11*20 = 1.1*2-1
• Exposent: -1, E-127 =-1  E = 126 = 01111110;

• Donc: 1 01111110 100…000000000

s 8 bits 23 bits
IV 4 3 Double Précision IEEE 754

Value = N = (-1)S X 2 E-1023 X (1.M)


1 11 52
signeS E M
0  E  2047
Exposent actuel est: exposent: mantisse
e = E - 1023 En mode excès 1023

Exemple: 0 = 0 00000000000 0 . . . 0 -1.5 = 1 01111111111 10 . . . 0

Domaine couvert par la -1022 1023


représentation IEEE 32 bits 2 (1.0) a 2 (2 - 2 - 52 )

- 308 308
Soit: 2.23 x 10 a 1.8 x 10
Normalisation de la Représentation des
Nombres Réels
Normalisation (IEEE754)
Améliorer la précision/stabilité des résultats et la
portabilité des programmes.
– Représentation à la fois des très grands nombres
et des très petits nombres.

S E Fraction F

Nbre de bits Taille de f Taille de E Emin Emax

32: Simple 23 8 -126 127


précision

64: Double 52 11 -1022 1023


précision
V Codes

• BCD « Binary Coded Decimal »

• Gray ou binaire réfléchi


Code BCD

Décimal Codé Binaire : Chaque chiffre d'un nombre est codé sur 4 bits

Ce code évite le changement simultané de 2 bits, et donc les états


transitoires indésirables

Décimale 0 1 2 3 4 5 6 7 8 9

BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001

Note: 1010, 1011, 1100, 1101, 1110, et 1111 sont des CODES INVALIDES!

Exemple: 2 3 510

0010 0011 01012


V 1 1 Addition en BCD

• 1ièr cas: somme < 9

5 0101 4 0100 0101


+ +5
4 0100 0011 0011
-- 3
1- 0 0 1 031 1 1 1 0 0 0
9 ième --
• 2 cas: somme > 9 -
7
1101 code invalide en BCD, il s’agit 8de l’une 6 0 1 1 0
des 6 représentations interdites en BCD. Il +
7 0111
faut ajouter 6 afin de prendre en
considération le fait qu’on saute six --
présentations codés non valides 1- 1 0 1
1
3
V512 Exemple

4 0100 0111
6 0110 +7
+ 0011 0101
7 0111 3
-- 5
0111 1100
1- 1 0 1 --
1 0110 0110
-
3 8 1000 0010
0001 0011 2

Somme non valide en BCD


ajouter 6
Code Gray:

le code n-bits code est généré par réflexion du code du (n-1)-bit.

0 0 00 000 0000
1 101 001 0001
1 11 011 0011
010 010 0010 2 codes consécutifs ne
10 110 0110 diffèrent que d’un bit
11 111 0111
01 101 0101
00 100 0100
100 1100
101 1101
111 1111
110 1110
010 1010
011 1011
001 1001
000 1000
code détecteur d'erreurs.
Soit un code sur n bits
On ajoute 1 bit tel que tous les mots du code aient un nombre de bits à 1 :
• Pair : nombre pair de 1 dans le mot.
• Impair : nombre impair de 1 dans le mot
Exemple de codage à parité paire : Exemple de codage parité à imparité :
0 0 1 1 1 0 0 1 1 0 1 1 1 0 0 1
Bit de parité Bit de parité
Bits de parité sont utilisées pour détecter le code d’erreur

source

destination


Générateur Détecteur
de parité De parité ERREUR
Transmission Réception
Utilisé pour contrôler la bonne transmission d’une information.
Codes Excess-3 « code plus 3 »
C’est un code semblable au code BCD: 3 est ajouté à chaque chiffre
décimal.
Entrée BCD Sortie Excess-3
ABCD WXYZ
0000 0011
0001 0100
0010 0101
0011 0110
0100 0111
0101 1000
0110 1001
0111 1010
1000 1011
1001 1100
Les trois combinaisons situés avant 0011 (0000, 00001, 0010) et les trois
combinaisons situés après 1100 (1101, 1110, 1111) ne sont pas utilisées

Exemple: 258310 20101, 51000, 81011, 3 0110


258310= 0101 1000 1011 0110Excess-3

Vous aimerez peut-être aussi