Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
1. DEFINITIONS
Le système de numération adaptée à la représentation de tels signaux est la base 2, on parle alors de
codage binaire.
L’unité de codage de l’information est un élément ne pouvant prendre que les valeurs 0 ou 1 ; le bit
(contraction de Binary Digit).
Par exemple :
Le nombre décimal 49 est pour l’ordinateur une suite de 0 ou de 1 : 11 0001
Le caractère ‘A’ est pour l’ordinateur une suite de 0 et de 1 : 0100 0001
Le nombre hexadécimal BAC (base 16) est pour l’ordinateur une suite de 0 et de 1 : 1011 1010 1100
Une suite de 0 et de 1 porteuse d’une information (nombre, texte, image, etc.) est appelée mot binaire.
Dans un mot binaire, le bit situé le plus à gauche est le bit le plus significatif, MSb (Most Significant
Bit), celui situé le plus à droite est le bit le moins significatif, LSb (Less Significant Bit).
Exemple :
MSb LSb
1 1 1 0 1 1 0 1
Octet (Byte)
Pour le traitement, le stockage de données, les échanges de données, les informations élémentaires
(bits) sont manipulées par groupes qui forment ainsi des mots binaires. La taille de ces mots est le plus
souvent un multiple de 8 = 23.
Le format des mots binaires utilisés pour les échanges de données est le mot de 8 bits appelé octet.
Exemples : (2 octets)
1111 0011
1010 1111
Remarque :
Un octet (en anglais byte) contient 8 bits.
Pour faciliter les manipulations, un octet peut être divisé en deux mots de 4 bits que l’on appelle des
quartets : celui situé à gauche est le quartet de poids fort, MSQ (Most Significant Quartet), et celui
situé à droite, le quartet de poids faible, LSQ (Less Significant Quartet).
Exemple :
MSQ LSQ
1 1 1 0 1 1 0 1
Quartet de poids fort Quartet de poids faible
Octet (Byte)
En dehors de ce format (octet, soit 28 combinaisons = 256, valeurs de 0 à 28-1= 255), des regroupements
plus importants sont couramment utilisés :
- le mot de 16 bits = 2 octets (word), (216 combinaisons= 65536, valeurs de 0 à 216-1 = 65535)
- le mot de 32 bits = 4 octets (double word), (232 combinaisons= 4294967296, valeurs
de 0 à 232-1= 4294967295)
- le mot de 64 bits = 8 octets (quad word). (264 combinaisons=18446744073709551616,
valeurs de 0 à 264-1= 18446744073709551615)
Exemples :
- Pour coder le jour du mois, il y a au maximum 31 jours. 31 < 255, un mot de 8 bits suffira.
- Pour coder le jour de l’année, il y a au maximum 366 jours. 366<65535, il faudra un mot de 16 bits.
- Pour coder l’année, nous sommes actuellement à 2020 années. 2020<65535, il faudra un mot
de 16 bits.
La capacité en octets des différents constituants tels que les circuits mémoires, les disques durs, les
vidéos, est souvent importante. Il devient donc indispensable d’utiliser des unités multiples de l’octet.
Exemples :
La quantité de données générée dans le monde est en pleine expansion et suit une loi quasi
exponentielle.
Malgré la norme internationale ci-dessous (CEI 60027-2) de décembre 1998, beaucoup de fabricants
mélangent (volontairement ou non) les deux systèmes. Lisez bien les publicités et les notices.
1.5 Exercices :
Exercice 1 :
Lorsqu’un Smartphone est raccordé à un ordinateur, si vous effectuez un clic droit sur le
périphérique correspondant à « Android Phone », puis un clic sur Propriétés vous obtiendrez
une fenêtre de ce type :
La capacité totale de ce Smartphone est de 7,4 Gio, soit 7,4 x 230 octets.
Le volume du système de fichiers est de 7,9 GB, soit 7,9.109/230 = 7,35 Gio.
L’espace libre est de 3,1 Gio, soit 3,1 x 230 octets.
Exercice 3 :
Un fournisseur d’accès Internet (FAI) vous annonce un débit descendant de 8 192 kibits/s.
Vous faites une mesure de débit réel et vous trouvez une moyenne de 3 280 kibits/s.
Quelle sera le temps théorique minimal de téléchargement d’une application de taille égale à 25 Mo ?
25 Mo = 25.106 octets;
25.106/419840 = 59,5 s
2. CODAGE
Notation :
Des indices ou un préfixe peuvent être utilisés pour les nombres binaires : 110011(2), 1101(BIN),
%111000, 0b110101.
25 2
1 12 2
0 6 2
0 3 2
Sens de 1 1
lecture
110012 = 2510
2ème méthode : recherche du terme 2n le plus grand, inférieur au nombre Nx (le tableau)
Exemple 2 : conversion du nombre décimal 25 en binaire à partir du site « Cours Tech Info »
http://www.courstechinfo.be/MathInfo/PoidsDesBits.html
Poids 27 26 25 24 23 22 21 20
Nombre Reste 128 64 32 16 8 4 2 1
75-64 11 1
11-8 3 1
3-2 1 1
1-1 0 1
Résultats = 0 1 0 0 1 0 1 1
Le binaire, s’il est très représentatif du codage interne des machines, reste très délicat et fastidieux à
manipuler. Les programmeurs ont très vite ressenti la nécessité d’utiliser une représentation plus
concise des nombres binaires.
De plus, si l’on souhaite passer de la base 10 à la base 16, il est très facile de faire une conversion de la
base 10 à la base 2 puis de la base 2 vers la base 16. (cf. paragraphe : 2.2.3)
Notation :
Des indices ou un préfixe peuvent être utilisés pour les nombres hexadécimaux : 15(16), 23(HEX), 0x55F,
$AF4, &h38, #44B.
Remarques :
Le préfixe 0x est utilisé dans le langage C, C++, Python et JAVA ; le $ est utilisé dans le langage Pascal ;
le &h dans le langage Basic et le # dans le langage HTML.
Une autre écriture courante est l’ajout du suffixe « h » à la fin du nombre (F15Ah par exemple).
Dans le système hexadécimal les dix premiers symboles correspondent à ceux utilisés dans le système
décimal : 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9, et les six derniers correspondent aux six premières lettres de
l'alphabet latin : A, B, C, D, E et F, lesquelles valent respectivement 10, 11, 12, 13, 14 et 15 en base 10.
Soit la table de correspondance :
16 étant égal à 24, la conversion consiste tout simplement à regrouper les termes du nombre en base 2 par
groupes de 4 chiffres en commençant par la droite, puis à convertir chaque groupe en écriture hexadécimale.
On peut utiliser la table de correspondance pour cette dernière conversion.
Exemple : soit le nombre binaire N = 11101011 pourra être noté 1110 1011
N = $ EB = 0xEB
2.2.2 Conversion de la base hexadécimale en base binaire
La conversion s’obtient en remplaçant directement chaque chiffre hexadécimal du nombre en sa
représentation binaire. On utilise aussi la table de correspondance pour cette conversion.
Exemple : C7(16) est un nombre en base 16 que l’on peut aussi noter avec le préfixe 0x :
Soit : OxC7 en binaire 0x C 7
% 1 1 0 0 0 1 1 1
C7(16) En décimal :
0x C 7
% 1 1 0 0 0 1 1 1
Poids 27 26 25 24 23 22 21 20
128 64 0 0 0 4 2 1
Résultat 199
N = &125 = % 1111101 = $ 7D
Une grosse part des informations manipulées par les systèmes numériques concerne le langage parlé
ou écrit matérialisé sous formes de textes, eux-mêmes constitués de caractères typographiques.
Comment coder universellement ces caractères et permettre ainsi l’échange d’informations entre
machines et/ou utilisateurs, quelle que soit la langue utilisée ?
Remarque :
Le morse inventé par Samuel Morse en 1844 est le premier codage à permettre une communication
orientée caractère à longue distance. Ce code est composé de points et de tirets (une sorte de codage
binaire).
Exemple : SOS : • • • - - - • • •
Le jeu de caractères codés ASCII (American Standard Code for Information Interchange) ou code
américain normalisé pour l’échange d’informations, inventé par Bob BERNER en 1961, est la norme de
codage de caractères en informatique la plus connue, la plus ancienne et la plus largement compatible.
Le code ASCII est un code sur 7 bits (valeurs 0 à 127), il permet de définir :
- des caractères imprimables universels : lettres minuscules et majuscules, chiffres, symboles, …
- des codes de contrôle non imprimables : indicateur de saut de ligne, de fin de texte, codes de
contrôle de périphériques, …
2.3.1 Table de référence ASCII
Colonnes Bit 6 0 0 0 0 1 1 1 1
Bit 5 0 0 1 1 0 0 1 1
Lignes Bit 4 0 1 0 1 0 1 0 1
00 10 20 30 40 50 60 70
Bit 3 Bit 2 Bit 1 Bit 0 Hexa.
Déci 0 16 32 48 64 80 96 112
0 0 0 0 0 +0 NUL DLE SP 0 @ P ` p
0 0 0 1 1 +1 SOH DC1 ! 1 A Q a q
0 0 1 0 2 +2 STX DC2 " 2 B R b r
0 0 1 1 3 +3 ETX DC3 # 3 C S c s
0 1 0 0 4 +4 EOT DC4 $ 4 D T d t
0 1 0 1 5 +5 ENQ NAK % 5 E U e u
0 1 1 0 6 +6 ACK SYN & 6 F V f v
0 1 1 1 7 +7 BEL ETB ' 7 G W g w
1 0 0 0 8 +8 BS CAN ( 8 H X h x
1 0 0 1 9 +9 HT EM ) 9 I Y i y
1 0 1 0 A +10 LF SUB * : J Z j z
1 0 1 1 B +11 VT ESC + ; K [ k {
1 1 0 0 C +12 FF FS , < L \ l |
1 1 0 1 D +13 CR GS - = M ] m }
1 1 1 0 E +14 SO RS . > N ^ n ~
1 1 1 1 F +15 SI US / ? O _ o DEL
Lecture de la table : le code ASCII du caractère L est égal à 64+12 =76 en décimal, soit 10011002
en binaire.
Remarques :
- Sept bits suffisent pour représenter un caractère codé en ASCII. Toutefois, les ordinateurs
travaillant presque tous sur un multiple de huit bits (multiple d'un octet), chaque caractère
codé en ASCII peu prendre le format d’un octet dont le 8ème bit est à 0.
- Il existe une table ASCII dite « étendue ou élargie » sur 8 bits (http://www.ascii-code.com/).
Graphe indiquant l'utilisation d'UTF-8 (bleu clair) dépassant les principaux autres codages
de caractères de texte sur le Web. (Source :https://fr.wikipedia.org/wiki/UTF-8)
ASCII (8bis)
Latin 1 ou
Europe
occidentale)
2.3.2 Exercice
Décrypter la chaîne ASCII ci-dessous représentée sous la forme d’une suite d’octets :
0101 0011 0101 0100 0100 1001 0011 0010 0100 0100
Specialite I2D
83 112