q 11/2=5, reste 1
q 5/2=2, reste 1
q 2/2=1, reste 0
q On remonte du dernier : 10110111
Conversion décimale en binaire
C’est donc en binaire que sont représentées toutes les valeurs qu’un ordinateur manipule. C’est valable tant pour les
données (numériques ou texte) que pour les instructions à destination du microprocesseur. Un nombre binaire
correspondra à une instruction. Par exemple sur un microprocesseur x86 (Intel ou AMD), 01110100 est l’instruction je
(jump if equal), ou encore la ligne 10110000 01100001 qui signifie mov $0x61, %al (placer la valeur hexadécimale
0x61 dans le registre AL).
Les ordinateurs du début des années 2000 savent manipuler des nombres sur 64bits or 2 64 est égal à 18 446 744
073 709 551 616 soit plus de 18 milliards de milliards !
L’idée d’utiliser deux valeurs pour encoder d’autres valeurs remonte à Francis Bacon. En 1623, il cherche une
méthode stéganographique pour pouvoir crypter un texte composé des lettres de l’alphabet. Il remarque qu’un
assemblage de deux lettres groupées par cinq permet de coder l’ensemble de l’alphabet. Il appelle cet alphabet
"bilitère". Le "a" était représenté par "AAAAA", le "B" par "AAAAB", jusqu’au "Z", "BABBB". L’alphabet de l’époque, le
latin, contenait vingtquatre lettres, le "j" se confondant avec le "i" et le "u" avec le "v".
b. Les octets et les mots
Un ordinateur sait manipuler individuellement chaque bit d’une valeur. Mais les bits ne sont pas stockés
individuellement dans une case mémoire. Ils sont regroupés, généralement par multiples de huit (8). Ainsi un
ensemble de 8 bits est appelé un octet. L’avantage de l’octet est qu’il suffit (ou en tout cas a longtemps suffi) pour
représenter tous les chiffres, lettres et symboles des alphabets occidentaux. Un octet représente les valeurs de 0 à
255.
Avec l’augmentation des espaces de stockages, de la quantité de mémoire, du besoin de représentation de nombres
de plus en plus grands, d’un accès plus rapide à la mémoire ou encore de plus d’instructions, il a fallu augmenter la
taille des valeurs à manipuler. De 8, puis 16, puis 32, certains microprocesseurs peuvent manipuler des valeurs de 64
voire 128 bits, parfois plus.. Ces valeurs deviennent difficiles à décrire et à représenter. Pour ces valeurs, on parle de
mot mémoire (word en anglais). Certains microprocesseurs font une différence entre divers types de mots. Ceux de
Motorola comme les 68000 (qui équipaient ls ordinateurs Atari ST, Amiga, les consoles Sega Megadrive et plus
récemment les Palm Pilot) utilisent des mots de 16 bits, et des mots longs (long word) de 32bits.
Les instructions et les données sont donc codées sous forme de nombres binaires qu’on appelle des mots.
Cependant suivant le type de microprocesseur l’ordre des mots est différent entre la réalité et son stockage en
mémoire. Avec un microprocesseur x86 en mode réel (16 bits) le nombre décimal 38457 nécessite 16 bits soit deux
octets ou un mot de seize octets pour être représenté :
38457 (10) =1001011000111001 (2)
Pour stocker cette valeur en mémoire, les 8 premiers bits de poids faible, soit l’octet de poids faible, seront placés
dans la première case mémoire, et les 8derniers bits de poids fort, soit l’octet de poids fort, seront placés dans la
case suivante. La démarche serait la même en 32 bits ou 64 bits.
Case mémoire 1
Case mémoire 2
00111001
10010110
- 5 -
© ENI Editions - All rigths reserved - Jonifar lina
7
q 5/2=2, reste 1
q 2/2=1, reste 0
q On remonte du dernier : 10110111
Conversion décimale en binaire
C’est donc en binaire que sont représentées toutes les valeurs qu’un ordinateur manipule. C’est valable tant pour les
données (numériques ou texte) que pour les instructions à destination du microprocesseur. Un nombre binaire
correspondra à une instruction. Par exemple sur un microprocesseur x86 (Intel ou AMD), 01110100 est l’instruction je
(jump if equal), ou encore la ligne 10110000 01100001 qui signifie mov $0x61, %al (placer la valeur hexadécimale
0x61 dans le registre AL).
Les ordinateurs du début des années 2000 savent manipuler des nombres sur 64bits or 2 64 est égal à 18 446 744
073 709 551 616 soit plus de 18 milliards de milliards !
L’idée d’utiliser deux valeurs pour encoder d’autres valeurs remonte à Francis Bacon. En 1623, il cherche une
méthode stéganographique pour pouvoir crypter un texte composé des lettres de l’alphabet. Il remarque qu’un
assemblage de deux lettres groupées par cinq permet de coder l’ensemble de l’alphabet. Il appelle cet alphabet
"bilitère". Le "a" était représenté par "AAAAA", le "B" par "AAAAB", jusqu’au "Z", "BABBB". L’alphabet de l’époque, le
latin, contenait vingtquatre lettres, le "j" se confondant avec le "i" et le "u" avec le "v".
b. Les octets et les mots
Un ordinateur sait manipuler individuellement chaque bit d’une valeur. Mais les bits ne sont pas stockés
individuellement dans une case mémoire. Ils sont regroupés, généralement par multiples de huit (8). Ainsi un
ensemble de 8 bits est appelé un octet. L’avantage de l’octet est qu’il suffit (ou en tout cas a longtemps suffi) pour
représenter tous les chiffres, lettres et symboles des alphabets occidentaux. Un octet représente les valeurs de 0 à
255.
Avec l’augmentation des espaces de stockages, de la quantité de mémoire, du besoin de représentation de nombres
de plus en plus grands, d’un accès plus rapide à la mémoire ou encore de plus d’instructions, il a fallu augmenter la
taille des valeurs à manipuler. De 8, puis 16, puis 32, certains microprocesseurs peuvent manipuler des valeurs de 64
voire 128 bits, parfois plus.. Ces valeurs deviennent difficiles à décrire et à représenter. Pour ces valeurs, on parle de
mot mémoire (word en anglais). Certains microprocesseurs font une différence entre divers types de mots. Ceux de
Motorola comme les 68000 (qui équipaient ls ordinateurs Atari ST, Amiga, les consoles Sega Megadrive et plus
récemment les Palm Pilot) utilisent des mots de 16 bits, et des mots longs (long word) de 32bits.
Les instructions et les données sont donc codées sous forme de nombres binaires qu’on appelle des mots.
Cependant suivant le type de microprocesseur l’ordre des mots est différent entre la réalité et son stockage en
mémoire. Avec un microprocesseur x86 en mode réel (16 bits) le nombre décimal 38457 nécessite 16 bits soit deux
octets ou un mot de seize octets pour être représenté :
38457 (10) =1001011000111001 (2)
Pour stocker cette valeur en mémoire, les 8 premiers bits de poids faible, soit l’octet de poids faible, seront placés
dans la première case mémoire, et les 8derniers bits de poids fort, soit l’octet de poids fort, seront placés dans la
case suivante. La démarche serait la même en 32 bits ou 64 bits.
Case mémoire 1
Case mémoire 2
00111001
10010110
- 5 -
© ENI Editions - All rigths reserved - Jonifar lina
7
