Chap1 Numération Et Codage
Chap1 Numération Et Codage
Chap1 Numération Et Codage
doc
Chap 1 : LA NUMERATION ET LE CODAGE.
I) LA NUMÉRATION AU COURS DES TEMPS.
Vus de l'extérieur, les ordinateurs et les programmes que nous utilisons tous les jours permettent de
mémoriser, de transmettre et de transformer des nombres, des textes, des images, des sons, ...
Pourtant, quand on les observe à une plus petite échelle, ces ordinateurs ne manipulent
uniquement des objets beaucoup plus simples : des 0 et des 1.
Mémoriser, transmettre et transformer des nombres, des textes, des images ou des sons
demande donc d'abord de les représenter (coder) comme des suites de 0 et de 1.
Soit le nombre 3189. En réalisant des divisions successives par 10, on obtient:
3189(10) = 9 + 8 x 10 + 1 x 100 + 3 x 1000
En base 10, il n’y que 10 chiffres disponibles : 0, En base 2, il n’y que 2 chiffres disponibles : 0 et
1,2,3,…,9. Exemple : 12579430 1. Exemple : 0111010101
0111010101 = 1 X 20 + 0 X 21 + 1 X 22 + 0 X 23 + 1 X 24 + 0 X 25 + 1 X 26 + 1 X 27 + 1 X 28 + 0 X 29
(0111010101)(2) = 1 x20 + 0 x 21 + 1 x 22 + 0 x 23 + 1 x 24 + 0 x 25 + 1 x 26 + 1 x 27 + 1 x 28 + 0 x 29
(0111010101)(2) = 1 + 0 + 1 x 4 + 0 +1 x 16 +0 + 1 x 64 + 1 x 128 + 1 x 256
(0111010101)(2) = (469)(10)
1
-NSI - Première - Année 2019-2020 – Page 1 -
Numération et codage_nsi_premiere_2019.doc
Activité 1 : Ecrire (35)(10) et (135)(10) en binaire.
6) Remarques :
Avec un bit on peut représenter 21 = 2 états différents: 0 1
Avec 2 bits on peut représenter 22 = 4 états différents : 00 01 10 11
Avec 3 bits on peut représenter 23 = 8 états différents : 000 001 010 011 100 101 110 111
Avec 8 bits (1 octet ) on peut représenter 28 = 256 états différents ( le plus petit est 0, le plus grand 255 soit
256 états différents).
1 kilo-octet ( Ko ) vaut 210 octets = ----------- octets (noter la différence avec le kilo utilisé en physique)
2) L'addition.
L'addition en binaire s'exécute comme en décimal, on ajoute un par un tous les bits en tenant compte des
éventuelles retenues.
Additionnons par exemple les nombres 11000101 et 00101101 avec vérification dans la base 10 :
11000101 197
00101101 45
( 1 1 1 1 0 0 1 0 )2 ( 242 )10
Faire l'exercice 6
3) La multiplication.
2
-NSI - Première - Année 2019-2020 – Page 2 -
Numération et codage_nsi_premiere_2019.doc
La multiplication en binaire s'exécute comme en décimal, c'est à dire avec des additions à décalages
successifs.
Prenons un exemple avec la multiplication des nombres 1111 et 1011 c'est à dire 15 et 11 en base 10 :
1111
1011
1111
11110
000000
1111000
Résultat : ( 1 0 1 0 0 1 0 1 )2 = ( 165 )10
Faire l'exercice 7
IV LE SYSTÈME HEXADÉCIMAL.
1) Qu’est-ce que le système hexadécimal ?
Regrouper les bits en octets ( 8 bits ), coder l’information en mots de plusieurs octets, est une tâche lourde
et rapidement fastidieuse. Le système hexadécimal (16 bits) permet de réduire la longueur des mots et
facilite leur manipulation.
Ce système comporte 16 symboles, les 10 chiffres du système décimal (0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ) et les
6 premières lettres de l’alphabet en majuscules (A = 10,B = 11,C = 12 ,D = 13,E = 14 ,F = 15).
L’ordinateur comprend et utilise le code hexadécimal.
Activité 9 : Convertir en binaire les nombres décimaux 397, 133, 110 puis en décimal les nombres
binaires101, 0101, 1101110et vérifier en convertissant pour revenir à la base d‘origine.
Activité 10 : Convertir en hexadécimal les nombres décimaux a) 3167 b) 219 c) 6560
Activité 11 : Convertir en décimal les nombres hexadécimaux a) 3AE b) FFF c) 6AF
Activité 12 : Convertir en base 16 a) 12810 b) 10110 c) 25610 d) 10010112
Activité 13 : Convertir en base 10 a) C20 b) A2E
Activité 14 : Convertir en base 2 a) F0A b) C01
Activité 15 : Effectuer les opérations suivantes et vérifier les résultats en procédant aux conversions
nécessaires.
a) 1100 + 1000 b) 1001 + 1011
En déduire une méthode permettant de faire la somme de Deux nombres binaires sans conversion
intermédiaire. Faire la vérification = en refaisant les questions a et b par cette seconde méthode.
c) Réaliser les opérations suivantes et vérifier les résultats en procédant aux conversions nécessaires.
a) 1011 x 11 b) 1100 x 101 c) 100111 x 0110
En déduire une méthode permettant de faire le produit de Deux nombres binaires sans conversion
intermédiaire. Faire la vérification en refaisant les questions a et b par cette seconde méthode.
00000010 = +2 en décimal
4
-NSI - Première - Année 2019-2020 – Page 4 -
Numération et codage_nsi_premiere_2019.doc
10000010 = −2 en décimal
Cette représentation possède deux inconvénients. Le premier (mineur) est que le nombre zéro (0) possède
deux représentations : 00000000 et 10000000 sont respectivement égaux à +0 et −0. L'autre inconvénient
(majeur) est que cette représentation impose de modifier l'algorithme d'addition ; si un des nombres est
négatif, l'addition binaire usuelle donne un résultat incorrect. Ainsi :
C'est pour remédier à ces problèmes que l'on utilise la notation en complément à deux (CA2)
1. On inverse les bits de l'écriture binaire de sa valeur absolue (opération binaire NON) (voir cours
opérateurs logiques), on fait alors ce qu'on appelle le complément à un,
On peut vérifier que l'opération 3 + (−4) = -1 en décimal se fait sans erreur : (Ce qui n’est pas le cas
avec la première représentation).
Le code complètement à 2 de -1 est : 00000001 complémenté soit 11111110 auquel il faut ajouter 1 donc :
11111111 Donc (11111111) en code complément à 2 = (−1) en décimal et l’opération est donc juste.
Exemple 1 :
Nombre binaire
N = 0101
Complément à 1 de N = 1010
Complément à 2 de N = 1011
Exemple 2 :
Nombre binaire
5
-NSI - Première - Année 2019-2020 – Page 5 -
Numération et codage_nsi_premiere_2019.doc
N = 11100011
Complément à 1 de N =
Complément à 2 de N =
Exemple de l’addition en binaire sur des entiers signés en CA2 : réalisez les additions suivantes en binaire
sur 8 bits:
Exemple 1 :
(-58)10 + (98)10
Exemple 2 :
(-32)10 + (-57)10
Exemple 3 :
(118)10 + (-93)10
Exemple 4 :
(-89)10 + (-62)10
Remarque : Nous venons de constater sur les exemples précédents, qu’une soustraction en CA2 revient à
faire une addition. Pratiquement toutes les unités arithmétiques des microprocesseurs réalisent des
soustractions sur le principe suivant :
A – B = A + (CA2 de B)
Cette technique n’est pas optimale en base 2. On utilise donc une autre représentation
Avec :
6
-NSI - Première - Année 2019-2020 – Page 6 -
Numération et codage_nsi_premiere_2019.doc
S est le bit de signe et l'on comprend alors pourquoi 0 est positif ( -10=1).
E est l'exposant auquel on doit bien ajouter 127 pour obtenir son équivalent codé. Les exposants
peuvent ainsi aller de -254 à 255.
F est la partie fractionnaire, la seule que l'on exprime et qui est ajoutée à 1 pour effectuer le calcul.
Pour représenter les caractères, on attribue à chaque caractère un nombre. L’un des codes les plus utilisé
est le code ASCII. Dans ce code, chaque caractère est codé sur 7 bits. Le huitième bit (MSB) est un bit de
contrôle (bit de parité) qui sert à vérifier que l’information transmise est correcte. On peut coder avec ce
code 27 caractères soit 128 caractères.
7
-NSI - Première - Année 2019-2020 – Page 7 -
Numération et codage_nsi_premiere_2019.doc
Activité 18 : Taper la phrase suivante dans un éditeur de texte « Les carottes sont cuites ». Enregistrer le
fichier au format txt.(codage ASCII ou ANSI ) et déterminer la taille du fichier en octets.
Cela vous semble t’il logique ? Pourquoi ?
Taper la même phrase dans un logiciel de traitement de texte (word, openoffice par exemple) Le fichier
obtenu a-t-il la même taille ? Expliquer d’où provient la différence. Rouvrir le deuxième fichier (fait avec le
traitement de texte) avec le même éditeur de texte. Le fichier correspond il au premier ?
Activité 19 : A l’aide de la table ASCII coder la phrase suivante en Hexadécimal puis en binaire : « Demain
il fera beau »
9
-NSI - Première - Année 2019-2020 – Page 9 -
Numération et codage_nsi_premiere_2019.doc
4) L'Unicode.
Le système UNICODE a donc été crée pour permettre le codage des textes écrits quelque soit le système
d’écriture utilisé (norme utilisée). C’est une table de correspondance (ou table d’encodage) caractère –
code. Le plus répandu est UTF-8. C’est celui qui est utilisé par défaut pour l’affichage des pages web.
Remarque : Quelques règles pour UTF-8 L’encodage UTF-8 utilise 1, 2, 3 ou 4 octets en respectant
certaines règles : Un texte en ASCII de base (appelé aussi US-ASCII) est codé de manière identique en
UTF-8. On utilise un octet commençant par un bit 0 à gauche (bit de poids fort). Les points de code de
valeur scalaire supérieure à 127 sont codés sur plusieurs octets. Les bits de poids fort du premier octet
forment une suite de 1 de longueur égale au nombre d'octets utilisés pour coder le caractère, les octets
suivants ayant 10 comme bits de poids fort.
10
-NSI - Première - Année 2019-2020 – Page 10 -
Numération et codage_nsi_premiere_2019.doc
1) À l’aide du logiciel fourni sur le site, retrouver le texte contenu dans le code.
2) Ce logiciel est-il compatible avec les normes : (justifier la réponse) ISO 8859-1(ou latin -1), ISO 8859-15
Windows 1252 ?
3) Trouver une astuce pour savoir laquelle des trois est utilisée !
12
-NSI - Première - Année 2019-2020 – Page 12 -