Le codage des nombres.

Dans la plupart des organisations de mémoire, le nombre de bits réservés au stockage d'un nombre est limité et fixé. Il est possible d'avoir sur une même machine plusieurs représentations.

Représentation binaire des nombres entiers supérieurs ou égaux à zéro.
Si n bits sont utilisés pour représenter (système binaire) un entier, l'échelle des nombres est alors l'intervalle [0,2n-1].

Représentation binaire des nombres entiers signés.
L'une des représentations les plus utilisée pour les entiers négatifs est celle dite " du complément à 2". Supposons, par exemple que l'on stocke les entiers sur 16 bits.

Les nombres positifs sont représentés par les nombres binaires compris entre
0 et 215 - 1 (32767).

Les nombres négatifs compris entre -1 et -215 (-32768) sont définis par les nombres binaires 216 - 1 (65535) à 215 (32768), ainsi -x est codé sous la forme du complément de x à 216.

 

2

00000000

00000010

en binaire

Complément à 1

11111111

11111101

 

+ 1

00000000

00000001

 

----------------------

-----------------------

----------------------

-----------------------

Complément à 2

11111111

11111110

Représentation de -2


L'avantage d'une telle codification est de traiter l'arithmétique signée comme l'arithmétique non signée :

X - Y se calcule comme X + ( - Y )

Comme dans tous les codages, le résultat d'une opération peut être faux, il suffit de prendre pour exemple l'addition de deux entiers dont la somme est supérieure à 32767.

Codification DCB ( Décimal Codé Binaire )

Les chiffres décimaux sont codés sur 4 bits par leur équivalent binaire :

0

0000

1

0001

2

0010

3

0011

4

0100

5

0101

6

0110

7

0111

8

1000

9

1001

Les nombres sont rangés dans une suite d'octets consécutifs en mémoire en raison de deux chiffres par octets.

Exemple : 123 est codé sous la forme

0000 0001 0010 0011

Nombre réels

Expliquons brièvement le principe de codage des nombres réels selon la norme IEEE 754 (utilisée par le coprocesseur 8087 ) :

Réel court

1 bit signe
7 bit codage de l'exposant
24 bits codage de la mantisse

Caractères

Les caractères sont considérés dans un processeur comme des entiers stockés sur un octet. Plusieurs types de codages existent. Citions deux des codages les plus répandus ; le code EBCDIC et le code ASCII.
Le codage utilisé est conçu de telle sorte que l'équivalent binaire des lettres et de l'espace permette de conserver la relation d'ordre habituel sur les caractères (ordre lexicographique ).

Table ASCII.