Vous êtes sur la page 1sur 8

Hubert FOREY / Eric GALAND / Lycée Charles de Gaulle /  : Page 1 sur 8 /  : 1-Représentation des entiers COR.

docx

Table des matières


I. REPRÉSENTATION BINAIRE DE L’INFORMATION ............................................................................................................................ 1
1) Les bases de calcul ........................................................................................................................................................................... 1
2) Pourquoi le bit est-il l’unité de base du codage des informations dans les systèmes Informatiques ? ............................................ 2
3) Unité élémentaire ............................................................................................................................................................................ 2

II. PRINCIPE DE LA NUMÉRATION BINAIRE ET HEXADÉCIMAL .......................................................................................................... 2


1) Principe de la représentation d’un nombre en binaire ..................................................................................................................... 2
2) Conversion décimal vers binaire ....................................................................................................................................................... 3
3) Vers le décimal à partir des autres bases ......................................................................................................................................... 3
4) L'hexadécimal au secours de la manipulation des nombres binaires ............................................................................................... 4

III. APPLICATION AU CODAGE DE LA COULEUR ................................................................................................................................. 4

IV. APPLICATION A L’ENCODAGE D’UN TEXTE .................................................................................................................................. 6


1) Problème .......................................................................................................................................................................................... 6
2) Le code ASCII .................................................................................................................................................................................... 6
3) Les codes ISO 8859-1 et ANSI utilisé par WINDOWS ........................................................................................................................ 7
4) Codage Unicode ............................................................................................................................................................................... 8

I. REPRÉSENTATION BINAIRE DE L’INFORMATION

1) Les bases de calcul

Q1 : Compléter le tableau ci-dessous :


Base Système Utilisation
2 Binaire informatique
8 Octal Informatique
10 Décimal Vie courante (l’homme a commencé à compter avec les doigts
de ses 2 mains)
12 Duodécimal Vie courante (les douzaines, les heures…)
16 Hexadécimal Informatique
20 Vicésimal Système utilisé par les incas (qui comptent les doigts des
mains et des pieds)
60 Sexagésimal Vie courante (les minutes, les secondes…)

- Retour table des matières -


Hubert FOREY / Eric GALAND / Lycée Charles de Gaulle /  : Page 2 sur 8 /  : 1-Représentation des entiers COR.docx

2) Pourquoi le bit est-il l’unité de base du codage des informations dans les systèmes
Informatiques ?
Il est simple de représenter deux états physiques grâce à :
• La lumière (exemple : la fibre) ;
• La tension (exemple : le processeur en 0 ou 5V ou en 3,5V) ;
• Le champ magnétique (exemple : le disque dur).

3) Unité élémentaire
L’unité élémentaire utilisée en informatique pour coder l’information est appelée bit, contraction de binary digit

Application au codage d’une couleur : Supposons que l’on souhaite coder des couleurs en binaire.

Q2 : Combien de couleurs peut-on coder sur un bit ?


Les images en noir et blanc sont codées sur 1 bit : le noir est codé 0 et le blanc est codé 1. On peut donc coder 2 couleurs
sur 1 bit

Q3 : Si l’on souhaite coder davantage de couleurs, il va falloir utiliser une séquence de plusieurs bits appelée mot binaire
(ou nombre binaire). Un mot de 8 bits est appelé un octet ou encore un Byte

Q4 : Combien de couleurs peuvent coder des mots de 2 bits, 3 bits ... n bits, 1 octet
Sur 1 bit  2 couleurs, codées 0 ou 1
Sur 2 bits  2×2 = 22 = 4 couleurs, codées 00 – 01 – 10 – 11 (les 4 combinaisons possibles sur 2 bits)
Sur 3 bits  4×2 = 23 = 8 couleurs, codées 000 – 001 – 010 – 011 – 100 – 101 – 110 – 111

Sur n bits  2n couleurs
Sur 1 octet = 8 bits  28 = 1024 couleurs

II. PRINCIPE DE LA NUMÉRATION BINAIRE ET HEXADÉCIMAL

1) Principe de la représentation d’un nombre en binaire


Le texte de Leibnitz (en figure 1) datant du début du XVIII siècle nous explique le principe de la numération en binaire
(base 2) :

Figure 1 – Texte de Leibnitz

Q5 : A partir de ce texte, compléter le tableau suivant (ne pas tenir compte de la dernière colonne pour l’instant) :

Décimal Binaire (4 bits) Hexadécimal


0 0000 0
1 0001 1
2 0010 2
3 0011 3
4 0100 4

- Retour table des matières -


Hubert FOREY / Eric GALAND / Lycée Charles de Gaulle /  : Page 3 sur 8 /  : 1-Représentation des entiers COR.docx

5 0101 5
6 0110 6
7 0111 7
8 1000 8
9 1001 9
10 1010 A
11 1011 B
12 1100 C
13 1101 D
14 1110 E
15 1111 F
16 1 0000 (on passe à 5 bits) 10

2) Conversion décimal vers binaire


Pour effectuer cette conversion, on effectue une suite de divisions euclidiennes par 2 jusqu'à obtenir un quotient nul. Il
suffit ensuite de lister les restes des diverses divisions en commençant par la dernière effectuée.

Exemple : (14)10 = (1110)2


14 2
0 7 2
1 3 2
1 1 2
1 0

Q6 : Convertir (4)10 en base 2 ;


(4)2 = (100)2

Q7 : Convertir (35)10 en base 2 ;


(35)2 = (10 0011)2

Q8 : Convertir (255)10 en base 2 ;


(255)2 = (1111 1111)2

3) Vers le décimal à partir des autres bases


Pour convertir un nombre N d’une base b dans la base 10, on décompose ce nombre dans l’ordre des puissances
décroissantes de la base. Le nombre N s’écrit de façon unique sous la forme :

n : un entier naturel ;
𝑁 = 𝑎𝑛 × 𝑏 𝑛 +. . . . . +𝑎2 × 𝑏 2 + 𝑎1 × 𝑏01𝑎 × 𝑏 0 avec { b : base de numération ;
ai = les chiffres associés à la bases. tels que 0 ≤ ai < base

Exemple : (1101)2 = 1 × 23 + 1 × 22 + 0 × 21 + 1 × 20 = 1 × 8 + 1 × 4 + 0 × 2 + 1 × 1 = (13)10

Q9 : Convertir (1111)2 en base 10 :


(1111)2 = 1 × 23 + 1 × 22 + 1 × 21 + 1 × 20 = 1 × 8 + 1 × 4 + 1 × 2 + 1 × 1 = (15)10

Q10 : Convertir (10110)2 en base 10 :


(10110)2 = 1 × 24 + 0 × 23 + 1 × 22 + 1 × 21 + 0 × 20 = 1 × 16 + 0 × 8 + 1 × 4 + 1 × 2 + 0 × 1 = (22)10

- Retour table des matières -


Hubert FOREY / Eric GALAND / Lycée Charles de Gaulle /  : Page 4 sur 8 /  : 1-Représentation des entiers COR.docx

Remarque : afin d'effectuer des conversions binaires vers décimal ou décimal vers binaire, il est également possible
d'utiliser le tableau ci-dessous :
1 octet
7 6 5 4
2 2 2 2 23 22 21 20
128 64 32 16 8 4 2 1

Q11 : Coder en utilisant le tableau (1010100)2 en décimal


1 octet
7 6 5 4
2 2 2 2 23 22 21 20
128 64 32 16 8 4 2 1
1 0 1 0 1 0 0

(101 0100)2 = 64 + 16 + 4 = (84)10

4) L'hexadécimal au secours de la manipulation des nombres binaires


La manipulation de nombres binaire est très laborieuse. Pour cette raison, les informaticiens travaillent en hexadécimal
(base 16). Dans cette base, 16 caractères sont nécessaires : 0, 1, 2, 3…9, A, B, C…F.

Q12 : Compléter le tableau du paragraphe II. 1.

Q13 : Sur combien de bits peut-on coder un chiffre hexadécimal ?


Le plus grand chiffre hexadécimal est F, il est codé sur 4 bits (voir tableau).

Afin de convertir un nombre binaire en nombre hexadécimal, il suffit de "découper" ce nombre en paquets de 4 bits en
partant du bit de poids faible (bit le plus à droite), puis d'attribuer le chiffre hexadécimal correspondant à chaque paquet
de 4 bits. La conversion hexadécimale vers binaire est intuitive et encore plus simple, alors à vous de jouer :

Q14 : Coder (11111111)2, (1000101)2 et (1110100011)2 en hexadécimal


(11111111)2 = (1111 1111)2 = (FF)16
F F

(1000101)2 = (0100 0101)2 = (45)16


4 5

(1110100011)2 = (0011 1010 0011)2 = (2A3)16


2 A 3

Q15 : Coder (12)16 et (1AF)16 en binaire.


( 1 2 )16 = (0001 0010)2
0001 0010

( 1 A F )16 = (0001 1010 1111)2


0001 1010 1111

III. APPLICATION AU CODAGE DE LA COULEUR


Nous allons étudier le codage de la couleur d’un pixel à l’aide l’outils « Paint » de Windows.

AR1 :
• Lancer Paint et charger une image depuis le menu « fichier/Ouvrir » ou effectuer directement un copier/coller
d’une image dans Paint ;
• Sélectionner l’outil pipette puis cliquer sur un pixel de l’image.

- Retour table des matières -


Hubert FOREY / Eric GALAND / Lycée Charles de Gaulle /  : Page 5 sur 8 /  : 1-Représentation des entiers COR.docx

• Cliquer ensuite sur la couleur sélectionnée (couleur 1) puis cliquer sur « Modifier les couleurs ». Les valeurs des
composantes Rouge Vert Bleu s’affichent alors.

Figure 2 – Gimp

Il est possible de modifier manuellement la valeur des composantes RVB du pixel et de visualiser la couleur
correspondante.

Q16 : Qu’appelle-t-on "composantes RVB" (en français) ou « RGB » (en anglais) ?


RVB  Rouge Vert Bleu RGB  Red Green Blue Ce sont les 3 couleurs primaires

Q17 : Quelle sont les valeurs minimales et maximales qui peuvent être attribuées à chaque composante RVB ? Sur
combien d’octets chaque composante RVB est-elle codée ?
La valeur minimale est 0 et la valeur maximale 255
(255)10 = (1111 1111)2 donc chaque composante est codée sur 1 octet (1 Byte)

Q18 : Sur combien d’octets est codée chaque couleur de pixel ?


Chaque composante RVB état codée sur 1 octet, la couleur d’un pixel est codée sur 3 octets.

Q19 : Combien de couleurs le logiciel peut-il gérer ?


Chaque couleur est codée sur 3 octets = 3 × 8 bits = 24 bits
Sur 24 bits on peut coder 224 = 16 777 216 couleurs (bien plus que ce que l’œil peut percevoir !).

Q20 : Prévoir les couleurs dont les composantes RVB sont : (FF − FF − FF )16 et (255 − 255 − 0)10. Vérifier avec Paint
En synthèse additive : (FF − FF − FF )16 soit Rouge + Vert + Bleu  Blanc
(255 − 255 − 0)10 soit Rouge + Vert  Magenta

- Retour table des matières -


Hubert FOREY / Eric GALAND / Lycée Charles de Gaulle /  : Page 6 sur 8 /  : 1-Représentation des entiers COR.docx

Q21 : Donner le codage RVB en binaire de la couleur cyan. Vérifier avec Paint.
En synthèse additive : Vert + Bleu  Cyan soit (00 − FF − FF )16 ou ( 0 – 255 – 255)10

IV. APPLICATION A L’ENCODAGE D’UN TEXTE

1) Problème
En recherchant un extrait du « seigneur des anneaux », nous sommes tombés sur la page web représentée sur la figure
3:

Figure 3 – Extrait du seigneur des Anneaux

Nous allons essayer de comprendre pourquoi une partie du texte n’est pas compréhensible.

2) Le code ASCII
Le code ASCII (American Standart Code for Information Interchange), défini aux Etats-Unis en 1963 est basé sur un tableau
contenant les caractères les plus utilisés en langue anglaise. Dans cette table, il existe 128 caractères.

Exemples :
• Le caractère "A" est codé en ASCII par 0x41 en hexadécimal (65 en décimal ou 0100 0001 en binaire) ;
• Le caractère "1" est codé en ASCII par 0x31en hexadécimal (49 en décimal ou 0110 0101 en binaire) ;
• En faut, les codes compris entre 0x00 et 0x1F ne représentent pas des caractères, ils ne sont pas affichables. Ces
codes, souvent nommés caractères de contrôles sont utilisés pour indiquer des actions comme :
- passer à la ligne (CR Carriage Return qui se traduit en français par retour charriot)  codé 0x0D

- Retour table des matières -


Hubert FOREY / Eric GALAND / Lycée Charles de Gaulle /  : Page 7 sur 8 /  : 1-Représentation des entiers COR.docx

- sauter une ligne (LF Line Feed – LF)  codé 0x0A


-…

Q22 : Sur combien de bits est-il possible de coder la totalité des codes ASCII ?
La table comporte 128 = 27 codes, donc il est possible de la coder sur 7 bits.

Q23 : Les ordinateurs travaillant avec des cases mémoires de 1 octet, quelle pouvaient être l’utilité du rajout d’un 8ième
bit à une époque où les erreurs de mémoire et de transmission étaient fréquentes ?
Le 8ème bit pouvait servir de parité : On donnait à ce bit la valeur 0 ou 1 de telle manière que la somme des 1 (ou des 0) de
l’octet soit toujours paire. Si ce n’était plus le cas à la réception du message, c’est qu’il s’était produit une erreur de
transmission.

Q24 : Encoder en hexadécimal à l’aide de la table ASCII : « les Rois Elfes ».


(6C 65 73 20 52 6F 69 73 20 45 6C 66 65 73)16

Q25 : Retrouver le texte correspondant au code ASCII suivant : (46 72 6F 6E 64 6F 20 6C 65 20 47 6F 62 62 69 74 )16.


Frondo le Qobbit

Q26 : Justifier, pourquoi il n’est pas possible d’encoder correctement le texte « les ténèbres » à l’aide du code ASCII.
Comment peut-on palier à cet inconvénient ?
Ce n’est pas possible à cause des caractères accentués. On peut y remédier en rajoutant un 8ème bit, ce qui passe le nombre
de codes possibles à256.

3) Les codes ISO 8859-1 et ANSI utilisé par WINDOWS


La nécessité de représenter des caractères non présents dans la table ASCII tels que ceux de l’alphabet latin comme le
« à », le « é », le « ç »... impose l’utilisation d’un autre code. Ces codes sont des extensions du code ASCII. Pour cela, le
8ème bit est utilisé. On parle de code ASCII étendu. L’ISO, organisation internationale de normalisation, propose plusieurs
variantes de ce code, adaptées aux différentes langues. Il existe la norme ISO-8859-1 nommée aussi ISO- latin-1.

Microsoft propose le codage Windows-1252 appelé aussi code ANSI (American National Standard Institute). Ce code ne
diffère de l’ISO-8859-1 que pour quelques caractères tels que le signe e, la ligature o-e ou certains guillemets. Il propose
des extensions différentes selon le code page retenu. Ce code est choisi lors de la configuration du système et permet
de définir le jeu de caractères qui va être employé avec la machine.

Q27 : Quel est le code hexadécimal, binaire et décimal de la lettre A dans chacune des 2 normes ?
(41)16 = (0100 0001)2 = (65)10 C’est le même code pour les 2 normes

- Retour table des matières -


Hubert FOREY / Eric GALAND / Lycée Charles de Gaulle /  : Page 8 sur 8 /  : 1-Représentation des entiers COR.docx

Q28 : En ANSI, encoder 70 € en hexadécimal. Est-ce compatible avec le codage ISO-8859-1 ?


En ANSI : (37 30 80)16
En ISO-8859-1, le caractère € n’étant pas codé.

Q29 : Répondre à la question posée en début de paragraphe : pourquoi une partie du texte extrait du « seigneur des
anneaux » n’est elle pas compréhensible ?
Le texte à été encodé avec un certain encodage et lu dans un autre. C’est un problème de compatibilité entre les
différents encodages.

4) Codage Unicode
La généralisation de l’utilisation d’internet dans le monde a ainsi nécessité une prise en compte d’un nombre beaucoup
plus important de caractère. Pour cela, en 1991 une nouvelle norme a vu le jour : Unicode. Unicode a pour ambition de
rassembler tous les caractères existant afin qu’une personne utilisant Unicode puisse, sans changer la configuration de
son traitement de texte, à la fois lire des textes en français ou en japonais. Unicode est uniquement une table qui regroupe
tous les caractères existant au monde, il ne s’occupe pas de la façon dont les caractères sont codés dans la machine.
Unicode accepte plusieurs systèmes de codage : UTF-8, UTF-16, UTF-32.
Le plus utilisé, notamment sur le Web, est UTF-8. Pour encoder les caractères Unicode, UTF-8 utilise un nombre variable
d’octets : les caractères "classiques" (les plus couramment utilisés) sont codés sur un octet, alors que des caractères
"moins classiques" sont codés sur un nombre d’octets plus important (jusqu’à 4 octets). Un des avantages d’UTF-8 c’est
qu’il est totalement compatible avec la norme ASCII : les caractères classiques Unicode codés avec UTF-8 ont exactement
le même code que les mêmes caractères en ASCII.

Q30 : Quel est le code du "b" minuscule Unicode codé avec UTF-8 ? et du caractère "€" ?
Lettre b : (62)16 =(98)10 = (0110 0010)2 c’est le même code qu’en ASCII
Caractère € : (E282AC)16 = (14844588)10 = (11100010 10000010 10101100)2 codé sur 3 octets

- Retour table des matières -

Vous aimerez peut-être aussi