Vous êtes sur la page 1sur 120

Représentation de

l’information
dans un système
informatique
UE Info0 – Licence LFLEX

Christine Rochange
Organisation de l’UE Info0

2 parties :
§ Représentation de l’information (1 cours + 3 semaines de travail
autonome) – Contrôle semaine 40
§ Algorithmique et programmation en Python : à partir de la semaine
prochaine
Organisation de l’UE Info0

Travail autonome :
§ s’inscrire sur Moodle :
moodle.univ-tlse3.fr
▻ UE KINFN10U – Info0.NSI
Organisation de l’UE Info0

Travail autonome :
§ s’inscrire sur Moodle :
moodle.univ-tlse3.fr
▻ UE KINFN10U – Info0.NSI
Organisation de l’UE Info0

Travail autonome :
§ s’inscrire sur Moodle

§ chaque semaine, lire les documents


et faire les tests en accès libre

§ poser des questions sur Discord :


https://discord.gg/uEcKWfXWE5
Qu’est-ce qu’un système
informatique ?
Qu’est-ce qu’un système informatique ?
Qu’est-ce qu’un système informatique ?

LOGICIEL programme programme programme système d’


driver
SOFTWARE A B C exploitation

MATÉRIEL
HARDWARE disque dur mémoire processeur périphériques
Le logiciel

Un programme décrit une série d’opérations (instructions) à réaliser


sur des données.
données = opérations que
EXEMPLES : l'utilisateur veut réaliser
Le logiciel

Un programme décrit une série d’opérations (instructions) à réaliser


sur des données.
EXEMPLES :
données = position des pièces

+(0.20)
Le logiciel

Un programme décrit une série d’opérations (instructions) à réaliser


sur des données.
EXEMPLES :

données = texte tapé


par l'utilisateur
Le logiciel

Un programme décrit une série d’opérations (instructions) à réaliser


sur des données.
EXEMPLES :
données = image
(ensemble de pixels)
Le matériel

Le processeur
§ c’est un circuit électronique numérique ( ≠ analogique)
▻ en régime stable, tous les signaux sont à une tension proche de 0 (la masse) ou
de Vcc (tension d’alimentation) — on représente ces valeurs par 0 et 1
▻ constitué de composants (transistors) qui se comportent comme des
interrupteurs commandés (fermés ou ouverts)

0 1

(2 types de transistors complémentaires)

0 1
Le matériel

Le processeur
§ c’est un circuit qui agit sur des données en appliquant une suite
d’instructions (programme)

instruction
en entrée

en sortie
donnée

donnée
Le matériel

Le processeur
I
§ exemple de circuit :
▻ donnée en entrée sur 2 signaux (A et B) : 00 ou 01 ou 10 ou 11 A’
A
▻ donnée en sortie sur 2 signaux (A’ et B’) B B’
▻ 2 instructions possibles :
• I = 0 : met A’ à 0, copie B sur B’
• I = 1 : met B’ à 1, copie A sur A’

donnée en entrée (A B) 00 01 10 11 00 01 10 11

instruction (I) 0 0 0 0 1 1 1 1

donnée en sortie (A’ B’) 00 01 00 01 01 01 11 11


Le matériel

Le processeur
I
§ exemple de circuit :
▻ donnée en entrée sur 2 signaux (A et B) : 00 ou 01 ou 10 ou 11 A’
A
▻ donnée en sortie sur 2 signaux (A’ et B’) B B’
▻ 2 instructions possibles :
• I = 0 : met A’ à 0, copie B sur B’
• I = 1 : met B’ à 1, copie A sur A’
Comment réaliser ce
donnée en entrée (A B) 00 01 10 circuit
11 avec
0 0 des
0 1transistors
10 11
(interrupteurs) ?
instruction (I) 0 0 0 0 1 1 1 1

donnée en sortie (A’ B’) 00 01 00 01 01 01 11 11


donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Le processeur Comme ça !
A’
Vcc A
B B’

A’ B’

A
B
0 1
I

0 1

0
donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Vérifions que ça
Le processeur fonctionne sur un
exemple : A=B=1 et I=0 A’
Vcc A
B B’

A’ B’

A
B
0 1
I

0 1

0
donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Le processeur
A’
Vcc A
B B’

A’ B’

A=1
B
0 1
I

0 1

0
donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Le processeur
A’
Vcc A
B B’

A’ B’

A=1
B=1
0 1
I

0 1

0
donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Le processeur
A’
Vcc A
B B’

A’ B’

A=1
B=1
0 1
I =0

0 1

0
donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Le processeur
A’
Vcc A
B B’

1 A’ B’

A=1
B=1
0 1
I =0

0 1

0
donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Le processeur
A’
Vcc A
B B’

1 A’ B’

A=1
B=1
0 1
I =0

0 1

0
donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Le processeur
A’
Vcc A
B B’

0 A’ B’

A=1
B=1
0 1
I =0

0 1

0
donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Le processeur
A’
Vcc A
B B’

0 A’ B’

A=1
B=1 0
0 1
I =0

0 1

0
donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Le processeur
A’
Vcc A
B B’

0 A’ B’

A=1
B=1 0
0 1
I =0

0 1

0
donnée en entrée (A B) 00 01 10 11 00 01 10 11

Le matériel instruction (I)


donnée en sortie (A’ B’)
0
00
0
01
0
00
0
01
1
01 01
1 1
11
1
11

I
Le processeur
A’
Vcc A
B B’

0 A’ 1
B’

A=1
B=1
0 1
I =0

0 1

0
Le matériel
instruction
Le processeur

en entrée

en sortie
donnée
donnée
§ de manière similaire, un processeur peut réaliser
différents types d’opérations (instructions) sur des données
▻ un programme est une séquence d’instructions
Le matériel
instruction
Le processeur

en entrée

en sortie
donnée
donnée
§ de manière similaire, un processeur peut réaliser
différents types d’opérations (instructions) sur des données
▻ un programme est une séquence d’instructions
▻ chaque instruction est représentée par un code qui correspond à un ensemble
de signaux cf. exemple
• avec un signal unique, on peut désigner une instruction parmi deux : 0 ou 1 précédent
• avec deux signaux, qui peuvent prendre les valeurs 00, 01, 10, 11, on peut désigner une
instruction parmi 4
• les processeurs utilisent couramment 32 ou 64 signaux pour représenter les instructions
disponibles
Le matériel
instruction
Le processeur

en entrée

en sortie
donnée
donnée
§ de manière similaire, un processeur peut réaliser
différents types d’opérations (instructions) sur des données
▻ un programme est une séquence d’instructions
▻ chaque instruction est représentée par un code qui correspond à un ensemble
de signaux
• avec un signal unique, on peut désigner une instruction parmi deux : 0 ou 1
• avec deux signaux, qui peuvent prendre les valeurs 00, 01, 10, 11, on peut désigner une
instruction parmi 4
• les processeurs utilisent couramment 32 ou 64 signaux pour représenter les instructions
disponibles

§ d’où viennent les codes des instructions et des données ?


▻ de la mémoire
Le matériel

La mémoire
§ un composant capable de stocker des informations :
▻ des codes d’instructions (des programmes)
▻ des données

stockage
d’un 1 ou d’un 0
dans une capacité
Le matériel

bus

10010101 10001101
01001010 00101110
timer
11010010 01001000 disque dur
00101111 10100101 USB
écran
01101010 10010100 LCD
périphériques
processeur mémoire entrées/sorties
Comment représenter des
données avec des 1 et des 0 ?
Représentation des nombres entiers naturels

Représentation en base 10 :

EXE
M PLE 165 954
1×100000 + 6×10000 + 5×1000 + 9×100 + 5×10 + 4×1

1×105 + 6×104 + 5×103 + 9×102 + 5×101 + 4×100


Représentation des nombres entiers naturels

Représentation en base 10 :

EXE
M PLE 165 954
1×100000 + 6×10000 + 5×1000 + 9×100 + 5×10 + 4×1

1×105 + 6×104 + 5×103 + 9×102 + 5×101 + 4×100

§ Un nombre est représenté à l’aide de 10 symboles : {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}


§ Le chiffre de rang i est facteur de 10i
§ Avec n chiffres, on peut représenter les entiers naturels de 0 à 10n-1

EXE
MP
LE
Avec 4 chiffres, on peut représenter les nombres de 0 à 9999 (104-1)
Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire


§ Un nombre est représenté à l’aide de 2 symboles : {0, 1}
§ Le chiffre de rang i est facteur de 2i
§ Avec n chiffres (bits), on peut représenter les entiers naturels de 0 à 2n-1
Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire


§ Un nombre est représenté à l’aide de 2 symboles : {0, 1}
§ Le chiffre de rang i est facteur de 2i
§ Avec n chiffres (bits), on peut représenter les entiers naturels de 0 à 2n-1

EXE
M PLE Quels sont les entiers naturels que l’on peut représenter sur 4 bits ?

(0000)2 (0)10 (0100)2 (4)10 (1000)2 (8)10 (1100)2 (12)10


(0001)2 (1)10 (0101)2 (5)10 (1001)2 (9)10 (1101)2 (13)10
(0010)2 (2)10 (0110)2 (6)10 (1010)2 (10)10 (1110)2 (14)10
(0011)2 (3)10 (0111)2 (7)10 (1011)2 (11)10 (1111)2 (15)10
Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire


§ Un nombre est représenté à l’aide de 2 symboles : {0, 1}
§ Le chiffre de rang i est facteur de 2i
§ Avec n chiffres (bits), on peut représenter les entiers naturels de 0 à 2n-1

EXE
MP
LE
Quel est le nombre représenté par 100101 en binaire ?
Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire


§ Un nombre est représenté à l’aide de 2 symboles : {0, 1}
§ Le chiffre de rang i est facteur de 2i
§ Avec n chiffres (bits), on peut représenter les entiers naturels de 0 à 2n-1

EXE
MP
LE
Quel est le nombre représenté par 100101 en binaire ?

1×25 + 0×24 + 0×23 + 1×22 + 0×21 + 1×20


Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire


§ Un nombre est représenté à l’aide de 2 symboles : {0, 1}
§ Le chiffre de rang i est facteur de 2i
§ Avec n chiffres (bits), on peut représenter les entiers naturels de 0 à 2n-1

EXE
MP
LE
Quel est le nombre représenté par 100101 en binaire ?

1×25 + 0×24 + 0×23 + 1×22 + 0×21 + 1×20


1×32 + 0×16 + 0×8 + 1×4 + 0×2 + 1×1
Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire


§ Un nombre est représenté à l’aide de 2 symboles : {0, 1}
§ Le chiffre de rang i est facteur de 2i
§ Avec n chiffres (bits), on peut représenter les entiers naturels de 0 à 2n-1

EXE
MP
LE
Quel est le nombre représenté par 100101 en binaire ?

1×25 + 0×24 + 0×23 + 1×22 + 0×21 + 1×20


1×32 + 0×16 + 0×8 + 1×4 + 0×2 + 1×1
32 + 0 + 0 + 4 + 0 + 1
Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire


§ Un nombre est représenté à l’aide de 2 symboles : {0, 1}
§ Le chiffre de rang i est facteur de 2i
§ Avec n chiffres (bits), on peut représenter les entiers naturels de 0 à 2n-1

EXE
MP
LE
Quel est le nombre représenté par 100101 en binaire ?

1×25 + 0×24 + 0×23 + 1×22 + 0×21 + 1×20


1×32 + 0×16 + 0×8 + 1×4 + 0×2 + 1×1
32 + 0 + 0 + 4 + 0 + 1

(100101)2 = (37)10
Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire


§ Un nombre est représenté à l’aide de 2 symboles : {0, 1}
§ Le chiffre de rang i est facteur de 2i
§ Avec n chiffres, on peut représenter les entiers naturels de 0 à 2n-1

§ A savoir par cœur :

210 29 28 27 26 25 24 23 22 21 20
1024 512 256 128 64 32 16 8 4 2 1
Quel entier naturel est représenté par 10101 en
binaire ?
Quel entier naturel est représenté par 10101 en
binaire ?

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


Comment déterminer facilement si un entier
représenté en binaire est pair ?

Est-ce que (110001101010)2 est pair ?


Et (100101100111011)2 ?
Comment déterminer facilement si un entier
représenté en binaire est un multiple de 4 ?

Est-ce que (110001101010)2 est multiple de 4 ?


Et (100101100111000)2 ?
Combien d’entiers naturels peut-on représenter
avec 5 bits ?
Combien d’entiers naturels peut-on représenter
avec 5 bits ?
32 entiers naturels : de 0 à 31
(00000)2 (0)10 (01000)2 (8)10 (10000)2 (16)10 (11000)2 (24)10
(00001)2 (1)10 (01001)2 (9)10 (10001)2 (17)10 (11001)2 (25)10
(00010)2 (2)10 (01010)2 (10)10 (10010)2 (18)10 (11010)2 (26)10
(00011)2 (3)10 (01011)2 (11)10 (10011)2 (19)10 (11011)2 (27)10
(00100)2 (4)10 (01100)2 (12)10 (10100)2 (20)10 (11100)2 (28)10
(00101)2 (5)10 (01101)2 (13)10 (10101)2 (21)10 (11101)2 (29)10
(00110)2 (6)10 (01110)2 (14)10 (10110)2 (22)10 (11110)2 (30)10
(00111)2 (7)10 (01111)2 (15)10 (10111)2 (23)10 (11111)2 (31)10
Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire

LE
Comment représenter le nombre (58)10 en binaire ?
P
E XEM
Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire

LE
Comment représenter le nombre (58)10 en binaire ?
P
E XEM

64 > (58)10 ≥ 32 ➙ il faut 6 chiffres


Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire

LE
Comment représenter le nombre (58)10 en binaire ?
P
E XEM

64 > (58)10 ≥ 32 ➙ il faut 6 chiffres

…×25 + …×24 + …×23 + …×22 + …×21 + ..×20


Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire

LE
Comment représenter le nombre (58)10 en binaire ?
P
E XEM

64 > (58)10 ≥ 32 ➙ il faut 6 chiffres

…×25 + …×24 + …×23 + …×22 + …×21 + ..×20


1×25 + …×24 + …×23 + …×22 + …×21 + ..×20 (32 + …) 58-32=26
Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire

LE
Comment représenter le nombre (58)10 en binaire ?
P
E XEM

64 > (58)10 ≥ 32 ➙ il faut 6 chiffres

…×25 + …×24 + …×23 + …×22 + …×21 + ..×20


1×25 + …×24 + …×23 + …×22 + …×21 + ..×20 (32 + …) 58-32=26

1×25 + 1×24 + …×23 + …×22 + …×21 + ..×20 (32 + 16 + …) 26-16=10


Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire

LE
Comment représenter le nombre (58)10 en binaire ?
P
E XEM

64 > (58)10 ≥ 32 ➙ il faut 6 chiffres

…×25 + …×24 + …×23 + …×22 + …×21 + ..×20


1×25 + …×24 + …×23 + …×22 + …×21 + ..×20 (32 + …) 58-32=26

1×25 + 1×24 + …×23 + …×22 + …×21 + ..×20 (32 + 16 + …) 26-16=10

1×25 + 1×24 + 1×23 + …×22 + …×21 + ..×20 (32 + 16 + 8 + …) 10-8=2


Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire

LE
Comment représenter le nombre (58)10 en binaire ?
P
E XEM

64 > (58)10 ≥ 32 ➙ il faut 6 chiffres

…×25 + …×24 + …×23 + …×22 + …×21 + ..×20


1×25 + …×24 + …×23 + …×22 + …×21 + ..×20 (32 + …) 58-32=26

1×25 + 1×24 + …×23 + …×22 + …×21 + ..×20 (32 + 16 + …) 26-16=10

1×25 + 1×24 + 1×23 + …×22 + …×21 + ..×20 (32 + 16 + 8 + …) 10-8=2

1×25 + 1×24 + 1×23 + 0×22 + 1×21 + 0×20 (32 + 16 + 8 + 2) 2-2=0


Représentation des nombres entiers naturels

Représentation en base 2 : codage binaire

LE
Comment représenter le nombre (58)10 en binaire ?
P
E XEM

64 > (58)10 ≥ 32 ➙ il faut 6 chiffres

…×25 + …×24 + …×23 + …×22 + …×21 + ..×20


1×25 + …×24 + …×23 + …×22 + …×21 + ..×20 (32 + …) 58-32=26

1×25 + 1×24 + …×23 + …×22 + …×21 + ..×20 (32 + 16 + …) 26-16=10

1×25 + 1×24 + 1×23 + …×22 + …×21 + ..×20 (32 + 16 + 8 + …) 10-8=2

1×25 + 1×24 + 1×23 + 0×22 + 1×21 + 0×20 (32 + 16 + 8 + 2) 2-2=0

(58)10 = (111010)2
Comment représenter (18)10 en binaire sur 6 bits ?
Comment représenter (18)10 en binaire sur 6 bits ?

xxxxxx ➤ sur 6 bits, les chiffres sont des coefficients de 25 à 20


Comment représenter (18)10 en binaire sur 6 bits ?

xxxxxx ➤ sur 6 bits, les chiffres sont des coefficients de 25 à 20


0xxxxx ➤ 18 est inférieur à 25 (=32)
Comment représenter (18)10 en binaire sur 6 bits ?

xxxxxx ➤ sur 6 bits, les chiffres sont des coefficients de 25 à 20


0xxxxx ➤ 18 est inférieur à 25 (=32)
01xxxx ➤ 18 est supérieur ou égal à 24 (=16)
18 = 24 + 2
Comment représenter (18)10 en binaire sur 6 bits ?

xxxxxx ➤ sur 6 bits, les chiffres sont des coefficients de 25 à 20


0xxxxx ➤ 18 est inférieur à 25 (=32)
01xxxx ➤ 18 est supérieur ou égal à 24 (=16)
18 = 24 + 2
010xxx ➤ 2 est inférieur à 23 (=8)
Comment représenter (18)10 en binaire sur 6 bits ?

xxxxxx ➤ sur 6 bits, les chiffres sont des coefficients de 25 à 20


0xxxxx ➤ 18 est inférieur à 25 (=32)
01xxxx ➤ 18 est supérieur ou égal à 24 (=16)
18 = 24 + 2
010xxx ➤ 2 est inférieur à 23 (=8)
0100xx ➤ 2 est inférieur à 22 (=4)
Comment représenter (18)10 en binaire sur 6 bits ?

xxxxxx ➤ sur 6 bits, les chiffres sont des coefficients de 25 à 20


0xxxxx ➤ 18 est inférieur à 25 (=32)
01xxxx ➤ 18 est supérieur ou égal à 24 (=16)
18 = 24 + 2
010xxx ➤ 2 est inférieur à 23 (=8)
0100xx ➤ 2 est inférieur à 22 (=4)
01001x ➤ 2 est supérieur ou égal à 21 (=2)
2 = 21 + 0
Comment représenter (18)10 en binaire sur 6 bits ?

xxxxxx ➤ sur 6 bits, les chiffres sont des coefficients de 25 à 20


0xxxxx ➤ 18 est inférieur à 25 (=32)
01xxxx ➤ 18 est supérieur ou égal à 24 (=16)
18 = 24 + 2
010xxx ➤ 2 est inférieur à 23 (=8)
0100xx ➤ 2 est inférieur à 22 (=4)
01001x ➤ 2 est supérieur ou égal à 21 (=2)
2 = 21 + 0
➤ 0 est inférieur à 20 (=1)
010010
Représentation des nombres entiers naturels

Addition de deux entiers naturels

M PLE
EXE +1 +1
3 3 100001
+1 7 +010001
5 0 110010
Représentation des nombres entiers naturels

Addition de deux entiers naturels LE


MP
EXE
+1 +1
EXE
M PLE
+1 +1 1 2 1100
3 3 100001 + 1000
+ 8
+1 7 +010001 2 0 0100 ?
5 0 110010
Le résultat ne tient pas sur 4 bits !
Ce n'est pas une erreur, c'est
simplement que ce processeur ne
peut pas représenter le résultat
correctement ...
Faire l’addition suivante en binaire.

100011
+010010
Faire l’addition suivante en binaire.

100011
+010010
110101
Faire l’addition suivante en binaire.

100011 35
+010010 + 18
110101 53
Représentation des nombres entiers relatifs

Notion de complément à 2
§ Le complément à 2 d’un entier e représenté sur n bits est défini comme le
nombre sur n bits égal à : 2n – e
▻ 2n – e = (2n-1) – e + 1

complément à 1

▻ calcul rapide du complément à 2 :


• inverser tous les bits
(complément à 1)
• ajouter 1

▻ remarque : le complément à 2 du
complément à 2 d’un nombre est
le nombre lui-même ! n 2 – (2 – e) = e
n
Représentation des nombres entiers relatifs

Notion de complément à 2
§ Le complément à 2 d’un entier e représenté sur n bits est défini comme le
nombre sur n bits égal à : 2n – e
▻ 2n – e = (2n-1) – e + 1

complément à 1

▻ calcul rapide du complément à 2 :


• inverser tous les bits
(complément à 1)
• ajouter 1

▻ remarque : le complément à 2 du
complément à 2 d’un nombre est
le nombre lui-même ! n 2 – (2 – e) = e
n
Représentation des nombres entiers relatifs

Notion de complément à 2
§ Le complément à 2 d’un entier e représenté sur n bits est défini comme le
nombre sur n bits égal à : 2n – e
▻ 2n – e = (2n-1) – e + 1

complément à 1

▻ calcul rapide du complément à 2 :


• inverser tous les bits
(complément à 1)
• ajouter 1

▻ remarque : le complément à 2 du
complément à 2 d’un nombre est
le nombre lui-même ! n 2 – (2 – e) = e
n
Représentation des nombres entiers relatifs

Notion de complément à 2
§ Le complément à 2 d’un entier e représenté sur n bits est défini comme le
nombre sur n bits égal à : 2n – e
▻ 2n – e = (2n-1) – e + 1 LE
MP
EXE
Le complément à 1 de (1101)2 est :
complément à 1
2n-1
1111
▻ calcul rapide du complément à 2 : - 1101
• inverser tous les bits 0010
(complément à 1)
• ajouter 1

▻ remarque : le complément à 2 du
complément à 2 d’un nombre est
le nombre lui-même ! n 2 – (2 – e) = e
n
Représentation des nombres entiers relatifs

Notion de complément à 2
§ Le complément à 2 d’un entier e représenté sur n bits est défini comme le
nombre sur n bits égal à : 2n – e
▻ 2n – e = (2n-1) – e + 1 LE
MP
EXE
Le complément à 1 de (1101)2 est :
complément à 1
2n-1
1111
▻ calcul rapide du complément à 2 : - 1101
• inverser tous les bits 0010
(complément à 1)
• ajouter 1 Le complément à 2 de (1101)2 est :

▻ remarque : le complément à 2 du 0010


complément à 2 d’un nombre est + 1
le nombre lui-même ! 0011
n 2 – (2 – e) = e
n
Représentation des nombres entiers relatifs

Représentation des entiers relatifs en binaire :


§ les entiers positifs sont représentés comme les entiers naturels
§ les entiers négatifs sont représentés par leur complément à 2
Représentation des nombres entiers relatifs

Représentation des entiers relatifs en binaire :


§ les entiers positifs sont représentés comme les entiers naturels
§ les entiers négatifs sont représentés par le complément à 2 de leur valeur
absolue
EXE
MP
LE Sur 5 bits :
(+9)10 est représenté par (01001)2

(-9)10 est représenté par le complément à 2 de


(01001)2, c’est-à-dire :
10110 NB : le complément à 2 de
(10111)2 est : 01000
+ 1
10111 + 1
01001
Représentation des nombres entiers relatifs

Représentation des entiers relatifs en binaire :


§ les entiers positifs sont représentés comme les entiers naturels
§ les entiers négatifs sont représentés par leur complément à 2
§ sur n bits, on peut représenter les entiers relatifs de –(2n-1) à +(2n-1-1)

LE
EXE
MP
Quels sont les entiers relatifs que l’on peut représenter sur 4 bits ?

(0000)2 (0)10 (0100)2 (+4)10 (1000)2 (-8)10 (1100)2 (-4)10


(0001)2 (+1)10 (0101)2 (+5)10 (1001)2 (-7)10 (1101)2 (-3)10
(0010)2 (+2)10 (0110)2 (+6)10 (1010)2 (-6)10 (1110)2 (-2)10
(0011)2 (+3)10 (0111)2 (+7)10 (1011)2 (-5)10 (1111)2 (-1)10
Comment représenter -23 en binaire sur 6 bits ?
Comment représenter -23 en binaire sur 6 bits ?
➤ on commence par représenter +23

010111
Comment représenter -23 en binaire sur 6 bits ?
➤ on commence par représenter +23

010111
➤ on calcule le complément à 1

101000
Comment représenter -23 en binaire sur 6 bits ?
➤ on commence par représenter +23

010111
➤ on calcule le complément à 1

101000
➤ on ajoute 1

101001
Comment représenter -23 en binaire sur 6 bits ?
➤ on commence par représenter +23

010111
➤ on calcule le complément à 1

101000
➤ on ajoute 1

101001 010111
+101001
000000
Représentation des nombres entiers relatifs

Addition de deux entiers relatifs


§ identique à l’addition d’entiers naturels

LE
MP
EXE

100001 -31
+010001 + 17
110010 -14

complément à 2 de (100001)2 : (011110)2+1 = (011111)2


complément à 2 de (110010)2 : (001101)2+1 = (001110)2
Représentation des nombres entiers relatifs

Addition de deux entiers relatifs


§ identique à l’addition d’entiers naturels

LE LE
MP MP
EXE EXE

100001 -31 1100 -4


+010001 + 17 + 1001 +-7
110010 -14 0101 5
Représentation des nombres entiers relatifs

Addition de deux entiers relatifs


§ identique à l’addition d’entiers naturels

LE LE
MP MP
EXE EXE

100001 -31 1100 -4


+010001 + 17 + 1001 +-7
110010 -14 0101 5
?

Le résultat ne tient pas


sur 4 bits !
Représentation hexadécimale

Objectif : améliorer la lisibilité, réduire les risques d’erreur

EXE
MP
LE 11010100010100101101000111010101
Représentation hexadécimale

Objectif : améliorer la lisibilité, réduire les risques d’erreur

EXE
MP
LE 11010100010100101101000111010101

Représentation en base 16 : codage hexadécimal


§ Un nombre est représenté à l’aide de 16 symboles :
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}
§ Le chiffre de rang i est facteur de 16i
§ Remarque : un symbole correspond à une valeur codée en binaire sur 4 bits
0 1 2 3 4 5 6 7 8 9 A B C D E F
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Représentation hexadécimale

Conversion binaire ➙ hexadécimal

EXE
MP
LE 11010100010100101101000111010101

0 1 2 3 4 5 6 7 8 9 A B C D E F
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Représentation hexadécimale

Conversion binaire ➙ hexadécimal

EXE
MP
LE 11010100010100101101000111010101

1101 0100 0101 0010 1101 0001 1101 0101

0 1 2 3 4 5 6 7 8 9 A B C D E F
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Représentation hexadécimale

Conversion binaire ➙ hexadécimal

EXE
MP
LE 11010100010100101101000111010101

1101 0100 0101 0010 1101 0001 1101 0101

D 4 5 2 D 1 D 5

0 1 2 3 4 5 6 7 8 9 A B C D E F
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Quel est l’entier naturel représenté par (30)16 en
hexadécimal ?
Quel est l’entier naturel représenté par (30)16 en
hexadécimal ?

Deux manières de le calculer :

➤ 3×161 + 0×160 = 3×16 = (48)10

➤ (30)16 = (0011 0000)2 = 1×25 + 1×24 = 32 + 16 = (48)10


Représentation du texte

Le code ASCII (American Standard Code for Information Interchange)


§ représentation des caractères sur 7 bits ➙128 caractères représentables

Le caractère ‘G’ est représenté par 100 0111


Représentation du texte

ASCII étendu :
§ accents et caractères spéciaux
▻ codage sur 8 bits (= 1 octet)
§ exemple : ISO-8859-1
= Latin1 (8 bits)
= Europe occidentale
191 caractères affichables
§ différentes normes
▻ pour différentes langues
▻ problèmes de compatibilité
(nécessité de reconfigurer les
logiciels)
Trouvez le texte représenté en binaire
(8 bits par caractère, format ASCII étendu)
par :

00110001 00100000 00101011 00100000


01010101 01001110 00100000 00111101
00100000 00110010
Trouvez le texte représenté en binaire
(8 bits par caractère, format ASCII étendu)
par :

00110001 00100000 00101011 00100000


01010101 01001110 00100000 00111101
00100000 00110010

1 + UN = 2
Représentation du texte

Unicode :
§ une table qui regroupe 144 697 caractères
▻ 150 écritures, y compris les émoticones 😀
§ ces caractères peuvent être codés selon différents formats :
▻ UTF-8, UTF-16, UTF-32
▻ le plus courant (Web) est UTF-8
§ format UTF-8 :
▻ chaque caractère est représenté par 1 à 4 octets
Représentation du texte

Le format UTF-8
nb octets format
1 0xxxxxxx
2 110xxxxx 10xxxxxx
3 1110xxxx 10xxxxxx 10xxxxxx
4 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx

les caractères les plus courants sont


codés sur un octet (compatible ASCII)
Représentation du texte

Le format UTF-8
nb octets format = ASCII

1 0xxxxxxx
2 110xxxxx 10xxxxxx
3 1110xxxx 10xxxxxx 10xxxxxx
4 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 2 octets

les caractères les plus courants sont


codés sur un octet (compatible ASCII)

4 octets

https://apps.timwhitlock.info/unicode/inspect
Représentation du texte
4c 65 20 6c 69 c3 a8 76 72 65
20 65 74 20 6c 61 f0 9f 90 a2
Le format UTF-8
nb octets format = ASCII

1 0xxxxxxx
2 110xxxxx 10xxxxxx
3 1110xxxx 10xxxxxx 10xxxxxx
4 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 2 octets

les caractères les plus courants sont


codés sur un octet (compatible ASCII)

4 octets

https://apps.timwhitlock.info/unicode/inspect
Représentation des images

Image matricielle = matrice de pixels


§ coder la couleur de chaque pixel
Représentation des images

Image matricielle = matrice de pixels


§ coder la couleur de chaque pixel

EXE
MP
LE
Comment représenter une image
en noir et blanc ?
Représentation des images

Image matricielle = matrice de pixels


§ coder la couleur de chaque pixel

EXE
MP
LE
Comment représenter une image
en noir et blanc ?

11011111011
11101110111
11000000011
10010001001
00000000000
1 = blanc
01000000010
0 = noir
01011111010
11100100111
Comment peut-on représenter une image en
niveaux de gris, avec 256 niveaux possibles ?
Comment peut-on représenter une image en
niveaux de gris, avec 256 niveaux possibles ?

On peut coder chaque pixel sur 8 bits


(avec 8 bits, on peut représenter 28 = 256
niveaux de gris différents)
(255)10
= (11111111)2
= (ff)16

f0 f0 f0 f0 f0 f0 f0 f2 f4 f6 …

0
1
Quel est le "poids" (en octets) de cette image
de de 256 × 192 pixels en 256 niveaux de gris ?
(256 × 192 = 49 152)
Quel est le "poids" (en octets) de cette image
de de 256 × 192 pixels en 256 niveaux de gris ?
(256 × 192 = 49 152)

Il y a 49 152 pixels, chaque pixel est codé sur un


octet (8 bits).
Le poids de l’image est donc de 49 152 octets.
1 kilo-octets = 1 kiO = 1024 octets
L’image occupe donc 49 152/ 1024 = 48 kO
Représentation des images

Image matricielle = matrice de pixels


§ coder la couleur de chaque pixel
§ palette RVB = Rouge Vert Bleu
▻ chaque couleur est un mélange de rouge,
de vert et de bleu
▻ chaque pixel peut être représenté
par 3 octets
Quel est le poids (en octets) de cette image de
256 × 192 pixels en couleur sur 24 bits (3 octets) ?
(256 × 192 = 49 152)

2c 3f 6b 2c 3f 6b 2c 3f 6b 2c 3f 6b
2c 3f 6b 4f 60 6b 6c 7b a7 …
Quel est le poids (en octets) de cette image de
256 × 192 pixels en couleur sur 3 octets ?
(256 × 192 = 49 152)

Il y a 49 152 pixels, chaque pixel est codé sur 3


octets (24 bits).
Le poids de l’image est donc de 49 152×3 octets.
1 kilo-octets = 1 kiO = 1024 octets
2c 3f 6b 2c 3f 6b 2c 3f 6b 2c 3f 6b L’image occupe donc 49 152×3 / 1024 = 144 kO
2c 3f 6b 4f 60 6b 6c 7b a7 …
Combien de couleurs peut-on représenter avec
24 bits (3 octets) ?
Combien de couleurs peut-on représenter avec
24 bits (3 octets) ?

224 = 24 × 210 × 210

➙ un peu plus de 16 millions de couleurs


Conclusion
Tout est représenté en binaire !

bus

10010101 10001101
01001010 00101110
timer
11010010 01001000 disque dur
00101111 10100101 USB
écran
01101010 10010100 LCD
des données et des instructions périphériques
processeur mémoire entrées/sorties
Que représente le contenu de mémoire suivant ?
(représenté en hexadécimal pour plus de lisibilité)

41 75 20 74 72 61 76 61 69 6c 20 21
Que représente le contenu de mémoire suivant ?
(représenté en hexadécimal pour plus de lisibilité)

41 75 20 74 72 61 76 61 69 6c 20 21

Ça pourrait être un tableau d’entiers naturels, soit, en base 10 :

65 117 32 116 114 97 118 97 105 108 32 33

65 117 32 116
114 97 118 97
105 108 32 33
Que représente le contenu de mémoire suivant ?
(représenté en hexadécimal pour plus de lisibilité)

41 75 20 74 72 61 76 61 69 6c 20 21

… ou une image en noir et blanc de 12×8 pixels :


Que représente le contenu de mémoire suivant ?
(représenté en hexadécimal pour plus de lisibilité)

41 75 20 74 72 61 76 61 69 6c 20 21

… ou une image en couleur de 4 pixels :


Que représente le contenu de mémoire suivant ?
(représenté en hexadécimal pour plus de lisibilité)

41 75 20 74 72 61 76 61 69 6c 20 21

… ou un texte codé en ASCII sur 8 bits :

41 75 20 74 72 61
76 61 69 6c 20 21
Au travail !

Vous aimerez peut-être aussi