0% ont trouvé ce document utile (0 vote)
3K vues6 pages

Systèmes de numération en informatique

Le document présente les différents systèmes de numération comme le binaire, décimal, hexadécimal et octal. Il explique les conversions entre ces bases et le stockage des données en mémoire informatique.

Transféré par

abdellatif.bouaallla
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
3K vues6 pages

Systèmes de numération en informatique

Le document présente les différents systèmes de numération comme le binaire, décimal, hexadécimal et octal. Il explique les conversions entre ces bases et le stockage des données en mémoire informatique.

Transféré par

abdellatif.bouaallla
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Système de numération - Conversions Système de numération - Types de codage

• Conversion du décimal vers… • Système de numération


11 14
• Une histoire de division 12
Système Hexadécimal (ou base 16) 10 13 15
Afin de convertir un nombre de la base 10 vers une autre base, nous pouvons procéder
comme suit :
1) Calculer successivement la division entière de ce nombre par la valeur de la Nombre de symboles : 16 (0 1 2 3 4 5 6 7 8 9 A B C D E F)
nouvelle base.
2) Garder le reste et enchainer avec la division entière du quotient par la valeur de C’est une numérotation de position, l’ordre est important.
la nouvelle base jusqu’à ce que le quotient devienne inférieur à la valeur de la Très utilisé en informatique pour la facilité de conversion avec le système binaire.
nouvelle base.
3) Le résultat de la conversion correspond à l’ensemble des restes pris du bas vers Chaque symbole du système Hexadécimal permet de représenter 4 bits (4 nombres binaires)
le haut. (24=16), autrement dit, à un chiffre dans la base 16, correspondent 4 chiffres dans la base 2.
Nous distinguons les nombres Hexadécimaux à travers le symbole « 0x »
• Conversion du nombre 132 de la base 10 vers la base 10 situé au début : 0x5AF0
Etude du nombre 0x5AF0 , conversion en décimal (base 10) :

0x5AF0 = (5AF0)16 = 5x163 + Ax162 + Fx161 + 0x16 0


= 5x4096 + 10x256 + 15x16 + 0x1
= (23280)10

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Système de numération - Types de codage Système de numération - la mémoire

• Système de numération • Système de numération


La mémoire
Système décimal

L’objectif est de stocker des :


Intuitif. Petit rappel : nous avons 10 doigts !
- des entiers positifs (12, 534256, . . .)
Largement utilisé pour coder les nombres réels utilisés chaque jour - des entiers négatifs (-56, -435345, . . .)
- des caractères ('a', 'Z', '5', '+', . . .)
Etude du nombre décimal 7328 : - des chaînes de caractères ("bonjour", . . .)
- des réels (12.34, -670.5552, . . .)
7328 = 7000 + 300 + 20 + 8 - des instructions …
= 7x1000 + 3x100 + 2x10 + 8x1
= 7x(10x10x10) + 3x(10x10) + 2x10 + 8x1
= 7x103+ 3x102+ 2x101+ 8x100

L’objectif est de tout coder sous forme d’entiers positifs binaires

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Système de numération - Types de codage Plan du cours

• Système de numération
Système binaire

• Partie 2 : Système de numération


Nombre de symbole : 2 (0 1)
Utilisé pour coder une information à deux états (0 ou 1). • La mémoire
Un bit peur coder 2 possibilités. • Les différents systèmes de codage : Système hexadécimal Système octal

Un octet contient 8 bits et peut coder 28=256 possibilités. • Stockage dans la mémoire Système décimal
• Les entiers signés et leur représentation
Etude du nombre binaire 11010 , conversion en décimal (base 10) : Système binaire
• Représentation des chaines de caractères
11010 = 1x24 + 1x23 + 0x22 + 1x21 + 0x20 •
= 16 + 8 + 2+ 1
Opérations arithmétiques
= (27)10 • Calcul sur les réels

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Système de numération - Types de codage Ecole Nationale Supérieure


de Chimie de Kénitra

• Système de numération
Système octal (ou base 8)

Nombre de symboles : 8 (0 1 2 3 4 5 6 7)
Il permet de représenter une série 3 bits (23 = 8).
Module : Informatique 1
Très utilisé en informatique pour la facilité de conversion avec le système binaire.

N’utilise pas de lettres de l’alphabet.


Les nombres codés dans la base 8 se distinguent par un « 0 » au début : 0257

Etude du nombre octal 02571 , conversion en décimal (base 10) :

02571 = 2x83 + 5x82 + 7x81 + 1x80


= 2x(8x8x8) + 5x(8x8) + 7x8+ 1x1
= 2x512 + 5x64 + 7x8 + 1x1
= (1401)10

Pr. Anass Nouri


Septembre 2019
Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri
([Link])
Stockage mémoire Système de numération - Conversions

• Stockage mémoire (1) • Conversion du binaire vers l’octal


• Codage des entiers positifs appelés non signés
• Une approche basée sur 3 bits
Etapes : 1) Représentation du nombre en binaire.
2) Découpage de la représentation binaire en octets. Afin de convertir un nombre binaire en octal, il suffit de regrouper les bits par 3 et de les
3) Stockage de chaque octet consécutivement. convertir vers leur valeur décimale en allant de la droite vers la gauche.

• Conversion de nombres de la base 2 vers la base 8

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Système de numération - Conversions Système de numération - Conversions

• Conversion de l’hexadécimal vers le binaire • Conversion du décimal vers…


• Conversion du nombre 44 de la base 10 vers la base 16
• Une approche basée sur 4 bits
Afin de convertir un nombre hexadécimal en binaire, il suffit de convertir chaque symbole
du nombre hexadécimal en sa valeur binaire (4bits) en allant de la droite vers la gauche.

• Conversion de nombres de la base 16 vers la base 2

• Conversion du nombre 429 de la base 10 vers la base 16

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Système de numération - Conversions Système de numération - Conversions

• Conversion du binaire vers l’hexadécimal • Conversion du décimal vers…


• Conversion du nombre 18 de la base 10 vers la base 8
• Une approche basée sur 4 bits
Afin de convertir un nombre binaire en hexadécimal, il suffit de regrouper chaque 4bits
en leur valeur décimale en allant de la droite vers la gauche.

• Conversion de nombres de la base 2 vers la base 16

• Conversion du nombre 142 de la base 10 vers la base 8

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Système de numération - Conversions Système de numération - Conversions

• Conversion de l’octal vers le binaire • Conversion du décimal vers…


• Conversion du nombre 6 de la base 10 vers la base 2
• Une approche basée sur 3 bits
Afin de convertir un nombre octal en binaire, il suffit de convertir chaque chiffre du nombre
octal en sa valeur binaire (3 bits) en allant de la droite vers la gauche.

• Conversion de nombres de la base 8 vers la base 2

• Conversion du nombre 22 de la base 10 vers la base 2

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri
Représentation des chaines de caractères Les entiers signés et leur représentation

• Représentation des chaines de caractères (1) • Représentation par magnitude signée (2)
Objectif : Quel codage peut on utiliser pour représenter l’information textuelle dans un ordinateur?
Le codage. Associer à un caractère à un nombre.
ASCII (American Standard Code for Information Interchange)
L’un des plus anciens codes destiné à la representation des caractères.
Défini un jeu de 128 caractères (0 à 127 codés sur 7 bits). Pas de caractères accentués. 5=0101
ASCII étendu : sur 8 bits mais pas de normalisation.

Bit de signe Magnitude

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Résumé Les entiers signés et leur représentation

• Résumé • Représentation par magnitude signée (1)


Dans un entier de k bits, le bit du poids fort code le signe :
0 = positif
1 = négatif

Exemple sur 8 bits :


(+ 25)10 = (00011001)2
(- 25)10 = (10011001)2

Inconvénient : deux représentations pour le chiffre 0


(+ 0)10 = (00000000)2
(- 0)10 = (10000000)2

Avec n bits, nous pouvons représenter des entiers entre : -(2n-1 -1) et +(2n-1 -1)
pour n = 4 bits, nous pouvons représenter de -7 à 7

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Les entiers signés et leur représentation Les entiers signés et leur représentation

• Complément à 2 • Les entiers signés et leur représentation


Dans un entier de k bits, le bit du poids fort code le signe : Définition des entiers signés: représentent l’ensemble des entiers positifs et négatifs.
0 = positif
Comment représenter les entiers négatifs?
1 = négatif
Un nombre négatif s’obtient en ajoutant 1 au complément à 1 de sa valeur absolue ( et Convention de codage de chaînes de bits ?
inversement)
(+ 25)10 = (00011001)2 1) Magnitude signée
Complément à 1 de (+ 25)10 = (11100110)2
2) Complément à 1
Ajout de 1 = (11100111)2
3) Complément à 2

Une seule représentations pour 0 : (00000000)2

Avec n bits, nous pouvons représenter des entiers entre :


-(2n-1) et +(2n-1 -1)

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Les entiers signés et leur représentation Stockage mémoire

• Complément à 1 • Stockage mémoire (2)


Dans un entier de k bits, le bit du poids fort code le signe : • Big Endian vs Little Endian
0 = positif
Stockage de l’information sur plus d’un octet :
1 = négatif
- MSB (Most Significant Bit) A l’adresse la plus petite (Big Endian)
Un nombre négatif s’obtient en complémentant bit à bit sa valeur absolue avec 1 - LSB (Least Significant Bit) A l’adresse la plus petite (Little Endian)
(+ 25)10 = (00011001)2
11111111
-
00011001
11100110 MSB LSB
Inconvenient : deux représentations pour 0 :
(00000000)2 et (11111111)2

Avec n bits, nous pouvons représenter des entiers entre :


-(2 n-1 -1) et +(2n-1 -1)

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri
Opérations arithmétiques
Calcul sur les réels

• Représentation des réels (2) • Multiplication binaire entière


• Nombres en virgules fixes et conversions La multiplication suit les règles suivantes :
Quelques informations utiles
0x0=0
Les données dans un ordinateur sont représentées en binaire par des 0x1=0
« mots » (words) caractérisés par un nombre fixé de bits
1x0=0
(8, 16, 32, 64, 80 bits).
1x1=1
Comme vu précédemment, les microprocesseurs les plus répandus sont en
32 bits (simple précision) ou en 64 bits (double précision).
Exemple :
La représentation des nombres réels en virgule fixe (fixed point) signifie que
l’on réserve un espace pour la partie entière et un autre pour la partie
fractionnaire.
Ex : dans un microprocesseur à 16 bits, les données réelles sont représentées
ainsi : XXXXXXXX,XXXXXXXX

Cette méthode est peu utilisée car l’espace mal est réparti. Gênant pour les nombres
importants (partie entière importante) ou les très petits nombres(partie
fractionnaire importante). Ex: 0.000000010110011

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Opérations arithmétiques
Calcul sur les réels

• Représentation des réels (1) • Soustraction binaire entière


• Nombres en virgules fixes (fixed point) et conversions La soustraction se fait classiquement avec les règles suivantes :
0-0=0
0 - 1 = 1 avec retenue de 1
1-0=1
( )10
1-1=0
(101.001)2 = 1 x 22 + 1 x 20 + 1 x 2-3= 4 + 1 + 0.125 = (5.125)10
Exemples :

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Opérations arithmétiques
Calcul sur les réels

• Calcul sur les réels • Addition binaire entière


L’addition se fait classiquement avec les règles suivantes :

• Infinité de nombres entiers mais représentation correcte dans un 0+0=0


intervalle. 0+1=1
1+0=1

• 1 + 1 = 0 avec retenue de 1
Infinité de nombres réels
Impossibilité de représentation correcte même dans un petit intervalle : Exemples :

Quelques fois, nous avons des résultats sur 9 bits :


Si nombre non signé : dépassement de capacité
Si nombre signé : pas de signification
Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Opérations arithmétiques Représentation des chaines de caractères

• Division binaire entière • Représentation des chaines de caractères (2)


ASCII (American Standard Code for Information Interchange)
Division de Division de Extension du code ASCII vers les extensions ISO 8859n avec n dans [1 16]
(100)2 (4 en décimal) par (10)2 (2 en décimal) (11011)2 (27 en décimal) par (10)2 (5 en décimal)
Toutes ces extensions possèdent un jeu de caractère égal à 224.
ISO 8859-1 et ISO 8859-15 (appelés LATIN-1 et LATIN-15) représentent les extensions
comprenant des caractères accentués du Français.
11011 101 Mais… Incompatibilité entre les versions 8859 et non recouvrement de tous les caractères.
100 10 101
1 01 Question : comment coder à la fois dans un même texte des caractères latins, arabes,
10 1 0 00111 grecs, cyrillique etc.?
00 101
Unicode
00 01 0
0 Code 110000 caractères en leur attribuant un nom et un code (U+XXXX).
Codage de ces caractères Unicode avec :

- UTF-32 : code chaque caractère e 32 bits.


- UTF-16 : code chaque caractère sur 16 ou 32 bits.
- UTF-8 : code chaque caractère sur 8, 16, 24 ou 32 bits

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri
Calcul sur les réels Calcul sur les réels

• Représentation des réels (10) • Représentation des réels (6)


• Représentation dans l’ordinateur au format IEEE détaillée • Nombres en virgules flottantes et conversion

Une mantisse est constituée du d’une partie entière et d’une autre fractionnaire. Représentation du nombre décimal -0.0092345678 en un nombre à virgule
Ex : -5.999999 E-3. 5 est la partie entière et 999999 représente la partie flottante dans la base 10
fractionnaire.
Définir la Mantisse dans l’intervalle [1, 10[. Dans ce cas 9.2345678 .

Pour ce type de représentation IEEE, l’objectif est de constituer la partie Une puissance de 10 ramenant le produit au nombre initial :
fractionnaire du nombre initial de telle manière à ce qu’il ne subsiste qu’un chiffre 9.2345678 x 10-3. Le (-3) est appelé Exposant.
à gauche de la virgule et qui soit forcément ‘1’, si le nombre de départ diffère de 0.
Rétablissement du signe, dans notre cas c’est le signe négatif - .
Ex : Nombre binaire de départ : 0000 1010,0110.
Nous décalons la virgule de 3 rangs à gauche : 1,0100110 Remplacer 10 par E suivi par l’exposant : 9.2345678 E-3
La partie fractionnaire est donc : 0100110.
-> Le 1 à gauche de la virgule est ignoré par la norme IEEE.
Même idée pour les nombres binaires. Ex : -1010 1101, 1011 0110
Définir la Mantisse de la valeur absolue : 1,010 1101 1011 010
Exposant = +7 Résultat : -1,010 1101 1011 0110 x 27

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Calcul sur les réels Calcul sur les réels

• Représentation des réels (9) • Représentation des réels (5)


• Représentation dans l’ordinateur au format IEEE • Nombres à virgules flottantes (floating point) (notation scientifique)

Format binaire à virgule flottante 80 bits IEEE (utilisé par le type « double » simple 101010.10 = 1.0101010 x 25
précision)
0.0010001 = 1.00101 x 2-3

1 bits 15 bits 64 bits (8 octets)


L’usage de l’arithmétique en virgule flottante est majoritaire.
Exposant Partie fractionnaire de la mantisse

bit de signe

NB : Les formats 32 et 64 bits ignorent la partie entière de la mantisse au contraire du


format 80 bits qui mémorise la mantisse avec sa partie entière.

Formule de représentation d’un nombre réel avec la norme IEEE


(signe) x 2exposant - décalage x 1,mantisse
Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Calcul sur les réels Calcul sur les réels

• Représentation des réels (8) • Représentation des réels (4)


• Représentation dans l’ordinateur au format IEEE • Conversion de (28.8625)10 en base 2 ?
(28)10 = (11100)2
(0.8625)10 = (????) 2
Format binaire à virgule flottante 64 bits IEEE (utilisé par le type « double » double
précision) ● 0,8625 x 2 = 1,725 = 1 + 0,725
● 0,725 x 2 = 1,45 = 1 + 0,45
1 bits 11 bits 52 bits ● 0,45 x 2 = 0,9 = 0 + 0,9
● 0,9 x 2 = 1,8 = 1 + 0,8
Exposant Partie fractionnaire de la mantisse ● 0,8 x 2 = 1,6 = 1 + 0,6
● 0,6 x 2 = 1,2 = 1 + 0,2
● 0,2 x 2 = 0,4 = 0 + 0,4
bit de signe ● 0,4 x 2 = 0,8 = 0 + 0,8 …

Résultat : (28.8625)10 = 11100,11011100)

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Calcul sur les réels Calcul sur les réels

• Représentation des réels (7) • Représentation des réels (3)


• Représentation dans l’ordinateur au format IEEE • Passage d'un nombre réel de la base 10 vers la base 2 en virgule fixe
Partie entière : comme pour les entiers
Partie décimale : multiplications itérées par 2.
Format binaire à virgule flottante 32 bits IEEE (utilisé par le type « float » simple
précision) • Conversion de (14.375)10 en base 2 ?
(14)10 = (1110)2
1 bits 8 bits 23 bits
(0.375)10 = (????)2
Exposant Partie fractionnaire de la mantisse
0.375 x 2 = 0.75 = 0 +0.75
0.75 x 2 = 1.5 = 1 + 0.5
bit de signe 0.5 x 2 = 1 = 1 + 0.0
Résultat : (14.375)10 = (1110,011)2

Partie Partie
Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri réelle fractionnaire
Calcul sur les réels

• Représentation des réels (13)


• Représentation dans l’ordinateur au format IEEE

Exemple
Objectif : traduire le nombre décimal -6.625 au format flottant simple précision
32 bits IEEE

Conversion de sa valeur absolue en binaire: (6.625)10=110.1010


Constitution de la mantisse : 1,101010 x 22
Extension de la partie fractionnaire à 23 bits :
101 0100 0000 0000 0000 0000
Calcul du décalage sur 8 bits : 28-1 - 1 = 127
Exposant = 127 + 2 = 129 = 1000 0001

Résultat = 1 10000001 101 0100 0000 0000 0000 0000

Bit de Exposant Mantisse


signe
Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Calcul sur les réels

• Représentation des réels (12)


• Représentation dans l’ordinateur au format IEEE

Exemple
Objectif : traduire le nombre décimal -1039,0 au format flottant simple précision
32 bits IEEE

Conversion de sa valeur absolue en binaire: (1039)10=0000 0100 0000 1111


Constitution de la partie fractionnaire : 1,00 0000 1111 x 210
Extension de la partie fractionnaire à 23 bits :
00 0000 1111 0000 0000 0000 0 = 000 0001 1110 0000 0000 0000
Calcul du décalage sur 8 bits : 28-1 - 1 = 127
Exposant = 127 + 10 = 137 = 1000 1001

Résultat = 1 10001001 00000011110000000000000

Bit de Exposant Mantisse


signe
Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Calcul sur les réels

• Représentation des réels (11)


• Représentation dans l’ordinateur au format IEEE détaillée

Une fois la partie fractionnaire déterminée, nous passons à l’exposant.


L’exposant dans la norme IEEE diffère de l’exposant de l’écriture du nombre en virgule
flottante. Il est défini par :
E = D + B (avec E = exposant, entier positif;
D = déplacement algébrique de la virgule.
B = constante appelée décalage (BIAS)
= 2n-1 - 1 (n nombre de bits de l’exposant,
généralement 8 ou 16)

Ecole Nationale Supérieure de Chimie de Kénitra - Pr. Anass Nouri

Vous aimerez peut-être aussi