« 1.8. la numération binaire » les automates programmables a t training on line

19
« 1.8. La numération binaire » Les automates programmables A A T T Training Training On Line On Line

Upload: modeste-rigaud

Post on 03-Apr-2015

110 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: « 1.8. La numération binaire » Les automates programmables A T Training On Line

« 1.8. La numération binaire »

Les automates programmables

AA TT TrainingTrainingOn LineOn Line

Page 2: « 1.8. La numération binaire » Les automates programmables A T Training On Line

2

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Le système décimal

L’écriture des nombres se fait à l’aide de 10 symboles ordonnés (ou « DIGIT » en anglais) ;

ce sont les chiffres arabes : 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9

Le nombre de symboles utilisés s’appelle la base du système de numération. Nous comptons en

base 10, notre système est dit décimal. Lorsque le nombre dépasse 9, il faut utiliser plus d’un

symbole avec la règle suivante : Le digit le plus à droite a le plus faible poids (ou valeur)

10 0= 1 c’est le digit des unités

Le digit suivant a un poids égal à 10 1 (=10) : les dizaines. Le digit suivant a un poids égal à 10 2

(=100) : les centaines, etc…

Ainsi le nombre 1952 est l’écriture en base 10 de :MILLIER

CENTAINE

DIZAINE

UNITE

10 000

1 000 100 10 1

10 4 10 3 10 2 10 1 10 0

0 1 9 5 2

1 millier + 9 centaines + 5 dizaines + 2 unités

soit : 1 x 10 3 + 9 x 10 2 + 5 x 10 1 + 2 x 10 0

soit : 1 x 1000 + 9 x 100 + 5 x 10 + 2 x 1soit : 1000 + 900 + 50 + 2

Page 3: « 1.8. La numération binaire » Les automates programmables A T Training On Line

3

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Le système décimal

Pour représenter les nombres fractionnaires (compris entre 0 et 1), on utilise la règle

suivante :

On place une virgule (ou un point chez les anglo-saxons)

Le digit immédiatement à droite à le poids 10 –1 (0.1 ou 1/10)

Le poids suivant est 10 –2 (0.01 ou 1/100). Etc.

Ainsi le nombre 0.132 est l’écriture en base 10 de :

1/10 1/100

1/1000

1/10000

10 -

1

10 -2 10 -3 10 -4

1 3 2 soit : 1 x 10 -1 + 3 x 10 -2 + 2 x 10 -1

soit : 1 x 0.1 + 3 x 0.01 + 2 x 0.001soit : 0.1 + 0.03 + 0.002

Ces conventions d’écriture seront conservées dans les autres bases. En effet, la base 10 a été

naturellement développée chez l’homme. Mais, dans certains cas, on peut préférer d’autres

bases (exemples : la base 12 dont il reste des traces, le système sexagésimal, …).

C’est le cas en particulier des machines (automate, ordinateur) qui fonctionnent à l’aide de

systèmes logiques à deux états, que l’on code 0 et 1.

Page 4: « 1.8. La numération binaire » Les automates programmables A T Training On Line

4

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Le système binaire

1. Nombres entiers

On dispose de deux symboles : 0 et 1. La base est 2.

8 4 2 1 Valeur numérique ou poids du bit

23 22 21 20 Rang du bit

0 0 0 0 0x8 + 0x4 + 0x2 + 0x1 = 0 en base 10

0 0 0 1 0x8 + 0x4 + 0x2 + 1x1 = 1 en base 10

0 0 1 0 0x8 + 0x4 + 1x2 + 0x1 = 2 en base 10

0 0 1 1 0x8 + 0x4 + 1x2 + 1x1 = 3 en base 10

0 1 0 0 0x8 + 1x4 + 0x2 + 0x1 = 4 en base 10

0 1 0 1 0x8 + 1x4 + 0x2 + 1x1 = 5 en base 10

0 1 1 0 0x8 + 1x4 + 1x2 + 0x1 = 6 en base 10

0 1 1 1 0x8 + 1x4 + 1x2 + 1x1 = 7 en base 10

1 0 0 0 1x8 + 0x4 + 0x2 + 0x1 = 8 en base 10

1 0 0 1 1x8 + 0x4 + 0x2 + 1x1 = 9 en base 10

1 0 1 0 1x8 + 0x4 + 1x2 + 0x1 = 10 en base 10

1 0 1 1 1x8 + 0x4 + 1x2 + 1x1 = 11 en base 10

1 1 0 0 1x8 + 1x4 + 0x2 + 0x1 = 12 en base 10

1 1 0 1 1x8 + 1x4 + 0x2 + 1x1 = 13 en base 10

1 1 1 0 1x8 + 1x4 + 1x2 + 0x1 = 14 en base 10

1 1 1 1 1x8 + 1x4 + 1x2 + 1x1 = 15 en base 10

Le digit binaire s’appelle le BIT (Binary digit).

Le bit de poids le plus faible est le LSB (Least Significant Bit).

Le bit de poids le plus fort est le MSB (Most Significant Bit).

Il est utile de connaître la valeur décimale des poids binaires.

Page 5: « 1.8. La numération binaire » Les automates programmables A T Training On Line

5

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Le système binaire

A noter que avant 1998 : - 1 kilo-octet (ko ou Ko) = 1024 octets.- 1 méga-octet (Mo) = 1024 ko = 1 048 576 octets.- 1 giga-octet (Go) = 230 octets = 1024 Mo = 1 073 741 824 octets.

Depuis 1998, et suivant la Commission électrotechnique internationale : - 1 kilooctet (ko) = 103 = 1 000 octets- 1 mégaoctet (Mo) = 106 octets = 1 000 Ko = 1 000 000 octets- 1 gigaoctet (Go) = 109 octets = 1 000 Mo = 1 000 000 000 octets

Page 6: « 1.8. La numération binaire » Les automates programmables A T Training On Line

6

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Le système binaire

2. Les nombres fractionnaires

Exemple : 0.1101 en base 2, représente1 x 2 –1 + 1 x 2 –2 + 0 x 2 –3 + 1 x 2 – 4

1 x 0.5 + 1 x 0.25 + 0 x 0.125 + 1 x 0.0625 = 0.9375 en base 10

Page 7: « 1.8. La numération binaire » Les automates programmables A T Training On Line

7

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Les mots

Les machines utilisant le système binaire acceptent un nombre donné de bits, par

exemple 4 - 8 - 16 - …

Ce nombre de bit détermine ce que l’on appelle le format. Ces bits réunis ensemble

forment un mot.

Suivant le système, on parlera de mot, registre, mémoire mot, Word.

En général, les mots ont donc un format bien déterminé :

- un mot de 4 bits s’appelle un QUARTET,

- un mot de 8 bits s’appelle un OCTET (ou BYTE en anglais),

- un mot de 16 bits s’appelle un double octet,

- un mot de 32 bits s’appelle un mot double.

Page 8: « 1.8. La numération binaire » Les automates programmables A T Training On Line

8

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Les mots

En général, les mots ont donc un format (nombre de bits) bien déterminé et ils leur peuvent

représenter une valeur numérique maximum

Format Nom (en anglais) Valeur maxi

4 bits Quartet 0 à 15

8 bits Octet (Byte) 0 à 255

16 bits Mot ou double octet (Word) 0 à 32767

32 bits Mot double (Double word) 0 à 4294967295

Page 9: « 1.8. La numération binaire » Les automates programmables A T Training On Line

9

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

La conversion binaire décimale

L’homme utilisant la base 10 et la machine la base 2, il est nécessaire de pouvoir

convertir l’une en l’autre.

On fait la somme des poids correspondants aux bits à 1, le bit le plus à droite étant le bit

de poids faible (LSB), de valeur 1.

Exemples :

0 1 1 0 1 0 0 1 = 64 + 32 + 8 + 1 = 105 en base 10

1 1 1 1 1 1 1 1 = 128 + 64 + 32 + 16 + 8 + 4 +2 + 1 = 255 en base 10

Page 10: « 1.8. La numération binaire » Les automates programmables A T Training On Line

10

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

La conversion décimale binaire

1. Méthode de la division

On divise le nombre, puis les quotients par 2, jusqu’à obtenir un résultat nul.

Puis on écrit les restes (inférieurs à la base) de gauche à droite. Cette écriture est le

résultat de la conversion.

Exemple : 35 en base 10 = ? en base 2

(35) 10 = (100011) 2

Cette méthode est programmable.

Page 11: « 1.8. La numération binaire » Les automates programmables A T Training On Line

11

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Conversion décimale binaire

2. Méthode de la soustraction

On peut aussi soustraire au nombre décimal le plus gros poids binaire possible :

Exemple : 35 en base 10 = ? en base 2

25 24 26 22 21 20

32 16 8 4 2 1

35 1

3 1 0 0 0 1

1 1 0 0 0 1 1

0 1 0 0 0 1 1

35

-32 2 5

= 3

-2 21

= 1 20

(35)10 = (100011)2

Page 12: « 1.8. La numération binaire » Les automates programmables A T Training On Line

12

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Pourquoi toutes ces bases

L’homme à l’habitude de manipuler des nombres en base 10. La machine ne peut accepter

que des nombres en base 2. Il sera donc nécessaire de convertir d’une base à l’autre.

Pour exprimer un nombre, il faut en moyenne 3.3 fois plus de digits en binaire qu’en décimal.

Pour exprimer des chiffres décimaux de l’ordre de la centaine ou plus, il faut un grand

nombre de bits et la conversion devient fastidieuse.

Pour rendre cette conversion plus facile et l’écriture du nombre plus courte, on utilisera des

codes : OCTAL - HEXADECIMAL - …

Page 13: « 1.8. La numération binaire » Les automates programmables A T Training On Line

13

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Les nombres réels et signés

Dans tout ce qui précède les nombres binaires expriment des valeurs positives et entières.

Mais bien souvent ont à besoin de représenter

- des nombres négatifs (donc signés) : par exemple des températures ou des

résultats de calcul

- des nombres réels (à virgule) : pour augmenter la précision de calcul

Pour cela, il existe plusieurs solutions, nous n'étudierons que les 2 plus utilisées dans les

automates programmables :nés

- La méthode du complément à 2 pour représenter les nombres entiers signés,

- La méthode de la virgule flottant pour les nombres réels.

Page 14: « 1.8. La numération binaire » Les automates programmables A T Training On Line

14

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Le binaire signé

A noter que avant 1998 : - 1 kilo-octet (ko ou Ko) = 1024 octets.- 1 méga-octet (Mo) = 1024 ko = 1 048 576 octets.- 1 giga-octet (Go) = 230 octets = 1024 Mo = 1 073 741 824 octets.

Depuis 1998, et suivant la Commission électrotechnique internationale : - 1 kilooctet (ko) = 103 = 1 000 octets- 1 mégaoctet (Mo) = 106 octets = 1 000 Ko = 1 000 000 octets- 1 gigaoctet (Go) = 109 octets = 1 000 Mo = 1 000 000 000 octets

Page 15: « 1.8. La numération binaire » Les automates programmables A T Training On Line

15

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Le binaire signé - Le complément 2

Par rapport au binaire pur le bit de poids fort (MSB) devient le bit de signe et possède une

valeur négative.

Si ce bit = 0 le nombre est positif

Si ce bit = 1 le nombre est négatif (le total de tous les autres bits positifs = 32767)

Page 16: « 1.8. La numération binaire » Les automates programmables A T Training On Line

16

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Le binaire signé - Le complément 2

Pour chaque format de mot, il y aura donc des limites de représentation..

Format Nom (en anglais) Valeur maxi

4 bits Quartet -7 à +7

8 bits Octet (Byte) -128 à +127

16 bits Mot ou double octet (Word) -32768 à +32767

32 bits Mot double (Double word) -2 147 483 648 à +2 147 483 647

Page 17: « 1.8. La numération binaire » Les automates programmables A T Training On Line

17

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

Le complément 2

La méthode du complément à 2 est le principe qui permet de passer d'un nombre positif à un

nombre négatif et réciproquement.

Exemple sur un mot de 4 bits :

Explications 8 4 2 1

Soit la valeur 5 0 1 0 1

Complément 1 (on inverse les bits) 1 0 1 0

On ajoute 1 pour obtenir le complément à 2 1

Complément à 2 1 0 1 1

Calcul de la valeur -8 + 2 + 1 = - 5 1 0 1 1

Page 18: « 1.8. La numération binaire » Les automates programmables A T Training On Line

18

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

La virgule flottante

Correspond à la notation scientifique de certaines calculatrices. Elle se présente sous la

forme d'une mantisse et d'une puissance de 10.

N = M x 10 E

Exemple : - 12,5 = - 0,125 x 102

N = nombreM = MantisseE = Exposant

La virgule flottante se présente sous la forme d'une mantisse et d'une puissance de 2.

N = M x 2 E

Exemple : - 12,5 = - 0,125 x 102

Limites de représentation : -1 x2 +128 <= N <= +1 x 2 +127

Codée sur 32 bits : 24 pour la mantisse, 8 pour l'exposant

Page 19: « 1.8. La numération binaire » Les automates programmables A T Training On Line

19

Séquence 1 animation 8 – La numération binaire

AA TT TrainingTrainingOn LineOn Line

La virgule flottante

Exemple de représentation du nombre -5

-20 2-1 2-2 2-3 2-4 2-22 2-23

0 1 0 1 0 0 0

M = 0,625

-27 26 25 24 23 22 21 20

0 0 0 0 0 0 1 1

E = 3

- 5 10 0,625 x 2 324 bits

8 bits