Système de numération et représentations binaires

Page 1 sur 22Lecteur de document UniversityLib

Système de numération et représentations binaires

Digital Systems and Number Systems · notes

Chapitre N°1

Système de numération

1) Introduction

(cid:1) Un système de numération permet de coder une

information en lui associant un symbole ou une

combinaison de symboles qui permet de la faire

communiquer.

Chap N°1 Syst-Logique

2

1

2) Définitions

(cid:1) On appelle représentation d’un nombre la façon de le

décrire sous forme décimal, binaire, octale, etc. celui-ci est

composé de digit et du poids.

(cid:1) La base d’un nombre entier représente le nombre de

symbole pour représenter un nombre quelconque.

Exemple: b=2 : système binaire(0,1); b=8 : système

octal(0,…,7); b=10 : système décimal(0,…,9); b=16 :

système hexadécimal(0,…,9,A,B,C,D,E,F).

Chap N°1 Syst-Logique

3

2) Définitions

(cid:2) Le digit représente le nombre des chiffres autorisés d’une

base.

Exemple : les digits de la base décimal sont {0,1,…,9}.

(cid:2) Le poids (position) représente le rang du digit d’un

nombre.

5 3 3 4 5 6 9

Poids fort

Poids faible

Chap N°1 Syst-Logique

4

2

3) Représentation d’un nombre dans

un système de numération

(cid:2) Un nombre est représenté par la somme de ces digits

multipliés par leur poids respectifs.

(cid:2) On peut représenter un nombre comme suit :

n = a0b0 + a1b1 + a2b2 + …. + apbp

(cid:3) Cette forme s’appelle la forme polynomiale

Chap N°1 Syst-Logique

5

3.1) Système décimal (base 10)

(cid:2) Le système usuel de numération utilise le code décimal.

Dans ce système, le nombre de symboles utilisés est 10

(0,1,…,9).

(cid:2) C’est symboles s’appellent des chiffres et le nombre 10

représente la base b du système.

Exemple : le nombre décimal 1051 peut être représenter sous

la forme suivante :

1051 = 1000 + 0 + 50 + 1 = 1103 + 0102 + 5101 + 1100.

Un nombre réel peut être écrit sous la forme polynomiale :

143,25 = 1102 + 4101 + 3100 + 210-1 + 5*10-2.

Chap N°1 Syst-Logique

6

3

3.2) Système binaire (base 2)

(cid:2) Le nombre binaire est une convention permettant de

traduire une donnée quelconque en un nombre ne

comportant que des 0 et 1.

Exemple : (1101)2 = 120 + 121 + 022 + 123 =

(1+0+4+8)10 = (13)10

(cid:2) D’une façon générale, un nombre binaire s’écrit comme

suit : (b7 b6 b5 b4 b3 b2 b1 b0)2 (appelé aussi mot binaire).

Exemple :

Le bit du poids fort

(MSB)

( 1 1 0 1)2

Chap N°1 Syst-Logique

Le bit du poids faible

(LSB)

7

3.3) Système octal (base 8)

(cid:2) Le code octal est une convention permettant de traduire

une donnée quelconque en un nombre ne comportant que

les chiffres 0,1,2,3,4,5,6 et 7.

Exemple : (637)8 = 780 + 381 + 6*82 = (7 + 24 +384)10

= (415)10

(10)8 = 080 + 181 = (0 + 8)10 = (8)10

Chap N°1 Syst-Logique

8

4

3.4) Système hexadécimal (base 16)

(cid:2) Le code hexadécimal est une convention permettant de

traduire une donnée quelconque en un nombre ne

comportant que les signes de 0 à 9, A, B, C, D, E et F.

Exemple : (B20)16 = 0160 + 2161 + 11*162 = (2848)10

Chap N°1 Syst-Logique

9

4) Passage d’une représentation décimale

vers les autres représentations

(cid:2) Pour représenter un nombre décimal N par son équivalent

N’, on possède par division euclidienne successive par la

base b. Cette opération doit se répéter jusqu’à ce que le

quotient ne soit plus divisible par b. Les restes obtenus et

le résultat de la dernière division constituent les chiffres de

N’.

Exemple 1: (35)10 = (100011)2

2

35

1

17

1

2

8

0

2

4

2

20

2

0 1

2

Chap N°1 Syst-Logique

1 0

10

5

4) Passage d’une représentation décimale

vers les autres représentations

Exemple 2: (43)10 = (?)2= (?)8= (?)16

43

3

8

5

5

8

0

43

16

11

2

2

16

0

43

1

2

21

1

2

10

0

2

5

1

2

2

0

2

Publicité

1

1

2

0

Chap N°1 Syst-Logique

11

Remarque (cas d’un nombre réel)

(cid:2) Un nombre réel est constitué de deux parties : la partie

entière et la partie fractionnelle.

(cid:2) La partie entière est transformée en effectuant des

divisions successives par la base b.

(cid:2) La partie fractionnelle est transformée en effectuant des

multiplications successives par la base b.

Exemple : 35,625 = (100011,101)2

Chap N°1 Syst-Logique

12

6

5) Conversion d’une base b1 à une

base b2

(cid:2) L’idée est de convertir le nombre de la base b1 à la base

10, en suit convertir le résultat de la base 10 à la base b2.

b1

Développement

en polynôme

?

10

b2

Divisions

successives

Chap N°1 Syst-Logique

13

5.1) Passage du code binaire vers le code

octal et hexadécimal (transcodage)

(cid:2) Pour passer d’un code binaire vers un code octal, on fait

des regroupement de 3 bits (4 bits en hexadécimal). En

suite, on traduit chaque groupe de 3 bits dans la base octal.

Exemple : (1 100 101)2 = (145)8

(110 0101)2 = (65)16

(10101110)2 = (256)8 = (AE)16

(1101,1100)2 = (15,6)8 = (D,C)16

Remarque : Le regroupement se fait de droite à gauche pour

la partie entière et de gauche à droite pour la partie

fractionnelle .

Chap N°1 Syst-Logique

14

7

5.2) Passage du code octal et

hexadécimal vers le code binaire

(cid:2) Pour passer d’un code octal (hexadécimal) vers un code

binaire, on traduit chaque chiffre de la base octale (base

hexadécimale) en binaire de 3 bits (4 bits en hexadécimal).

Exemple : (275,15)8 = (010 111 101 , 001 101)2

(FA , B)16 = (1111 1010 , 1011)2

Chap N°1 Syst-Logique

15

6) Code binaire réfléchi ou code Gray

(cid:2) Ce code permet de ne faire changer qu’un seul digit à la

fois lorsqu’on passe d’un mot binaire au mot binaire

immédiatement inférieur ou supérieur ou tout autre mot

symétrique.

(cid:2) Le nom du code vient de l'ingénieur Frank Gray en 1953.

(cid:2) Ce code est fréquemment utilisé dans les capteurs de

positions, mais aussi lorsque l’on désire une progression

numérique binaire sans parasite transitoire.

(cid:2) En effet, si on utilise le code binaire standard, lors du

passage de la position un (01) à deux (10), il y a un risque

de passage transitoire par trois (11) ou zéro (00), ce

qu'évite le code de Gray.

Chap N°1 Syst-Logique

16

8

6) Code binaire réfléchi ou code Gray

(cid:1) Table de construction du code Gray :

Chap N°1 Syst-Logique

17

6.1) Passage du code binaire naturel vers

le code Gray

(cid:2) Le mécanisme de conversion est basé sur la comparaison

entre les bits du nombre écrit en binaire naturel tel que :

(cid:2) Le premier chiffre (de poids le plus fort) du naturel est le

même que le chiffre du réfléchi.

(cid:2) Si les bits Bj+1 et Bj ont même valeur (0 ou 1), le chiffre

correspondant en binaire réfléchi est Gj= 0.

(cid:2) Si les bits Bj+1 et Bj ont des valeurs différentes, alors le

chiffre correspondant en binaire réfléchi est Gj= 1.

Chap N°1 Syst-Logique

18

9

6.1) Passage du code binaire naturel vers

le code Gray

(cid:2) Exemple : (1101)2 = (1011)réfléchi

(cid:2) (10001)2 = (11001)réfléchi

Remarque : si 10 ou 01 alors 1, si 11 ou 00 alors 0.

Chap N°1 Syst-Logique

19

6.2) Passage du code Gray vers le code

binaire naturel

(cid:2) Pour convertir un nombre du binaire réfléchi au binaire

naturel, on procède de la manière suivante :

(cid:2) On reproduit le chiffre qui a le poids le plus fort qui

devient le 1er chiffre du binaire naturel.

(cid:2) On compare le chiffre du rang (j+1) du binaire naturel à

celui du rang (j) du binaire réfléchi en prenant compte des

conditions suivantes :

  • Si (Bj+1) naturel = (Gj) réfléchi alors (Bj) naturel = 0
  • Si (Bj+1) naturel ≠ (Gj) réfléchi alors (Bj) naturel = 1

Chap N°1 Syst-Logique

20

10

6.2) Passage du code Gray vers le code

binaire naturel

(cid:2) Exemple : (1101)réfléchi = (1001)2

(cid:2) (10111)réfléchi = (11010)2

Chap N°1 Syst-Logique

21

7) Code BCD ou DCB

(cid:2) Le code BCD (Binary coded decimal) ou DCB (Décimal

Codé Binaire) est un code principalement utilisé dans la

fonction affichage, spécialement dans les systèmes ne

consistant que de circuits numériques et ne contenant pas

de microprocesseur (une calculatrice par exemple).

(cid:2) Chaque chiffre décimal est codé en binaire sur quatre bits

(Quartet).

(cid:2) Exemple : (325)10 = (0011 0010 0101)BCD

(827)10 = (1000 0010 0111)BCD

Chap N°1 Syst-Logique

22

11

8) Code ASCII

(cid:1) Dans les années 60, le code ASCII (American Standard

Code for Information Interchange - traduisez «Code

Americain Standard pour l'Echange d'Informations») est

adopté comme standard.

(cid:1) Le code ASCII de base représentait les caractères sur 7 bits

(c'est-à-dire 128 caractères possibles). Il a été mis au point

pour la langue anglaise, il ne contient donc pas de

caractères accentués, ni de caractères spécifiques à une

langue.

(cid:1) Le code ASCII a donc été étendu à 8 bits (un octet) pour

pouvoir coder plus de caractères (c'est-à-dire 256

caractères possibles).

Chap N°1 Syst-Logique

23

8) Code ASCII

(cid:1) Table de code ASCII

Chap N°1 Syst-Logique

24

12

9) Code UniCode

(cid:1) Le code Unicode est un système de codage des caractères

Publicité

sur 16 bits mis au point en 1991.

(cid:1) Le système Unicode permet de représenter n'importe quel

caractère par un code sur 16 bits, indépendamment de tout

système d'exploitation ou langage de programmation.

(cid:1) Il regroupe ainsi la quasi-totalité des alphabets existants

(arabe, arménien, cyrillique, grec, hébreu, latin, ...) et est

compatible avec le code ASCII.

Chap N°1 Syst-Logique

25

10) Opérations arithmétiques

10.1) Opérations arithmétiques en binaire

(cid:2) Exemple :

+

0

0

0

+

0

1

1

+

1

0

1

1

1

+

1

1

1 0

1 1 0 0 0 1 1

+

1 0 0 0 1 0 1 1

1

1

1

0

11

1

0

Chap N°1 Syst-Logique

26

13

10.2) Opérations arithmétiques en octal

(cid:2) Exemple :

1

1

4 3 6 5

+

4 5 1

5

8

11

6

En octal 8 s’écrit 10

En octal 11 s’écrit 13

0

3

Le résultat final : (5036)8

Chap N°1 Syst-Logique

27

10.3) Opérations arithmétiques en

hexadécimal

(cid:2) Exemple :

1

+

4 8 6 5

7 A 5 1

12

18

11

6

C

En hexa 18 s’écrit 12

En hexa 11 s’écrit B

2

B

Le résultat final : (C2B6)16

Chap N°1 Syst-Logique

28

14

Remarques

(cid:2) Les machines numériques utilisent le système binaire qui

est basé uniquement sur 2 symboles qui sont : 0 et 1.

(cid:2) C’est facile de représenter ces deux symboles dans les

machines numériques. En effet, le 0 et le 1 sont représentés

par deux tensions 0V et 5V.

Chap N°1 Syst-Logique

29

Exercices

1) Coder en binaire pur (ou naturel) les nombres décimaux

suivants 5; 56 et 19.

2) Décoder les nombres binaires (10001001)2 et

(11110100101)2.

3) Convertir les nombres décimaux 279 et 149 en BCD.

4) Convertir en binaire Gray les nombres binaires purs

suivants (10110)2 et (1001011)2.

5) Convertir en binaire naturel les nombres réfléchis suivants

(10110)Gray et (1001011)Gray.

Chap N°1 Syst-Logique

30

15

11) Représentation des nombres entiers

(cid:2) Il existe deux types d’entiers : les entiers non signés

(positif ) et les entiers signés (positifs ou négatifs).

(cid:2) Problème : Comment indiquer à la machine qu’un nombre

est négatif ou positif ?

(cid:2) Il existe 3 méthodes pour représenter les nombres négatifs:

(cid:4) Signe / valeur absolue

(cid:4) Complément à 1 (complément restreint)

(cid:4) Complément à 2 (complément à vrai).

Chap N°1 Syst-Logique

31

11.1) Représentation signe/valeur

absolue (S/VA)

(cid:2) Si on travail sur n bits , alors le bit du poids fort est utilisé

pour indiquer le signe : 1 pour le signe négatif et 0 pour le

signe positif.

(cid:2) Les autres bits (n -1) désignent la valeur absolue du

nombre.

Exemple : 1 001

0 001

Signe

Valeur absolue

Signe

Valeur absolue

1001 est la représentation de - 1

0001 est la représentation de + 1

Chap N°1 Syst-Logique

32

16

11.1) Représentation signe/valeur

absolue (S/VA)

(cid:2) La représentation S/VA est une représentation très simple.

(cid:2) On remarque que le zéro possède deux représentations +0

et -0 ce qui conduit à des difficultés au niveau des

opérations arithmétiques.

Chap N°1 Syst-Logique

33

11.2) Représentation en complément à

un (complément restreint)

(cid:2) On appel complément à un d’un nombre N un autre

nombre N’ tel que : N+N’=2n-1

n : est le nombre de bits de la représentation du nombre N .

(cid:2) Exemple :

Soit N=1010 sur 4 bits donc son complément à un de N :

N’ = (24 - 1) - N = (16-1 ) - (1010)2 = (15 ) - (1010)2 =

(1111)2 – (1010)2 = (0101)2

Chap N°1 Syst-Logique

Publicité

34

17

11.2) Représentation en complément à

un (complément restreint)

(cid:2) Pour trouver le complément à un d’un nombre, il suffit

d’inverser tous les bits de ce nombre : si le bit est un 0

mettre à sa place un 1 et si c’est un 1 mettre à sa place un 0.

(cid:2) Exemple :

Sur 4 Bits

Sur 5 Bits

1 0 1 0

0 1 0 1 0

0 1 0 1

1 0 1 0 1

Chap N°1 Syst-Logique

35

11.2) Représentation en complément à

un (complément restreint)

Remarques :

(cid:2) Dans cette représentation, le bit du poids fort nous indique le

signe(0 : positif, 1 : négatif ).

(cid:2) Le complément à un du complément à un d’un nombre est

égale au nombre lui-même : CA1(CA1(N))= N

(cid:2) Exemple : Quelle est la valeur décimale représentée par la

valeur 101010 en complément à 1 sur 6 bits ?

(cid:4) Le bit du poids fort indique qu'il s'agit d'un nombre négatif.

(cid:4) Valeur = - CA1(101010) = - (010101)2= - ( 21)10

Chap N°1 Syst-Logique

36

18

11.3) Représentation en complément à

deux (complément à vrai)

(cid:2) Le complément à 2 d’un nombre binaire est la valeur qu’il

faut ajouter à un nombre fixé d’avance pour obtenir la

valeur de la puissance immédiatement supérieur.

(cid:2) La valeur CA1(a)+1 s’appelle le complément à deux de a :

CA1(a)+1 = CA2(a)

(cid:2) Exemple :

CA2(01000101)= CA1(01000101)+ 1 = (10111010) + 1

= (10111011)

Chap N°1 Syst-Logique

37

11.3) Représentation en complément à

deux (complément à vrai)

(cid:2) Pour trouver le compétemment à 2 d’un nombre, il faut

parcourir les bits de ce nombre à partir du poids faible et

garder tous les bits avant le premier 1 et inverser les autres

bits qui viennent après.

(cid:2) Exemple :

0 1 0 0 0 1 0 1

1 1 0 1 0 1 0 0

1 0 1 1 1 0 1 1

0 0 1 0 1 1 0 0

Chap N°1 Syst-Logique

38

19

11.3) Représentation en complément à

deux (complément à vrai)

(cid:2) Si le nombre est positif :

(cid:4) Grandeur = grandeur binaire exacte

(cid:4) Bit de signe = 0 à placer devant le bit de poids le plus fort.

(cid:2) Si le nombre est négatif :

(cid:4) Grandeur = complément à 2 de la grandeur exacte.

(cid:4) Bit de signe = 1 à placer devant le bit de poids le plus fort.

(cid:2) Exemple: (45)10 = (101101)2

(cid:5) Le complément à 1 de (45)10 = (010010)

(cid:5) Le complément à 2 de (45)10 = (010011)

(cid:3) +(45)10 = (0101101) et -(45)10 = (1010011)

Chap N°1 Syst-Logique

39

Exercice

(cid:2) Représenter chacun des nombres décimaux signés

suivants, selon la notion en complément à 2. Utiliser un

total de 8 bits y compris le bit de signe : (+33); (-14); (-63).

(cid:2) Réponse :

(cid:4) (+33)10 = (00100001)

(cid:4) (-14)10 = (11110010)

(cid:4) (-63)10 = (11000001)

(cid:3) La représentation en complément à deux (complément à

vrai) est la représentation la plus utilisée pour la

représentation des nombres négatifs dans la machine.

(cid:3) X = A – B c’est-à-dire X = A + CA2(B)

Chap N°1 Syst-Logique

40

20

12) Opérations arithmétiques en CA2

(cid:2) Effectuer les opérations suivantes sur 5 Bits , en utilisant la

représentation en CA2.

+ 9

+ 4

+ 13

+

0 1 0 0 1

0 0 1 0 0

0 1 1 0 1

Le résultat est positif

(01101)2= ( 13)10

+ 9

  • 4

+ 5

Report

+

0 1 0 0 1

1 1 1 0 0

1 0 0 1 0 1

Le résultat est positif

(00101)2= ( 5)10

Chap N°1 Syst-Logique

41

12) Opérations arithmétiques en CA2

(cid:2) Effectuer les opérations suivantes sur 5 Bits , en utilisant la

représentation en CA2.

1 0 1 1 1

+

1 1 1 0 0

1 1 0 0 1 1

  • 9
  • 4
  • 13

Report

Le résultat est négatif :

Résultat = - CA2 (10011)= -( 01101)

= - 13

+

1 0 1 1 1

0 1 0 0 1

1 0 0 0 0 0

  • 9

+ 9

+ 0

Report

Le résultat est positif

(00000)2= ( 0)10

Chap N°1 Syst-Logique

42

21

Exercice

1) Soient A et B deux nombres binaires tels que

A=(10110110)2 et B=(00011111)2. Réaliser l’opération

A-B par la méthode directe et la méthode du complément

à 2 et donner le résultat en code Gray.

2) Soit C un nombre hexadécimal tel que C=(FAC)16.

a) Donner l’équivalent de C en octal et en binaire.

b) Réaliser l’opération C+C en hexadécimal et donner

l’équivalent du résultat en DCB.

Chap N°1 Syst-Logique

43

22