nombres
E. Djebbar
Département des classes préparatoires ST
Ecole Nationale Polytechnique d’Oran
1 Informatique1
Plan
Systèmes de numérations: décimale, binaire octal et
hexadécimal.
Conversion des nombres
Opérations arithmétiques
2 Informatique1
Objectifs
Comprendre c’est quoi un système de numération .
Apprendre la méthode de conversion d’un système à
un autre.
Apprendre à faire des opérations arithmétiques en
binaire.
3 Informatique1
Partie 1
4 Informatique1
Codage d’information
Les informations traitées par les ordinateurs sont
de différentes natures :
nombres, texte,
images, sons, vidéo,
programmes, …
Dans un ordinateur, elles sont toujours représentées
sous forme binaire (BIT : Binary digIT)
une suite de 0 et de 1
5 Informatique1
Codage de l’information
Le codage de l’information permet d’établir une
correspondance qui permet sans ambiguïté de passer
d’une représentation (dite externe) d’une information à
une autre représentation (dite interne: sous forme
binaire) de la même information, suivant un ensemble
de règle précise.
Exemple :
Le nombre 35 : 35 est la représentation externe du
nombre trente cinq
La représentation interne de 35 sera une suite de 0 et 1
( 100011 )
6 Informatique1
Codage de l’information
En informatique, Le codage de l’information s’effectue
principalement en trois étapes :
7 Informatique1
Codage de l’information
Codage de l’élément binaire par un état physique
Charge électrique (RAM : Condensateur-transistor) :
Chargé (bit 1) ou non chargé (bit 0)
Magnétisation (Disque dur, disquette) : polarisation Nord
(bit 1) ou Sud (bit 0)
Alvéoles (CDROM): réflexion (bit 1) ou pas de réflexion
(bit 0)
Fréquences (Modem) : dans un signal sinusoïdal
Fréquence f1 (bit 1) : s(t) = a sin ( 2πf1 t + )
Fréquence f2 (bit 0) : s(t) = a sin ( 2πf2 t + )
….
8 Informatique1
Système de numération
Nous avons pris l'habitude de représenter les nombres en utilisant
dix symboles différents: 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9
Ce système est appelé le système décimal (déci signifie dix).
Il existe cependant d'autres formes de numération qui fonctionnent
en utilisant un nombre de symboles distincts.
Exemple :
système binaire (bi: deux),
le système octal (oct: huit),
le système hexadécimal (hexa: seize).
9 Informatique1
Le système décimal
On utilise dix symboles différents:
{0,1,2,3,4,5,6,7,8,9}
N’importe quelle combinaison des symboles
{ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 } nous donne un
nombre.
10 Informatique1
Développement en polynôme d’un nombre
dans le système décimal
Soit le nombre 1987, ce nombre peut être écrit sous la
forme suivante :
1987=1*103+9 *10 2+8 *101+7 *100
1987=1*1000+9 *100+8 *10 +7 *1
1987= 1000+900+80+7
Ce format s’appelle la forme polynomiale
11 Informatique1
Comptage en décimal
Sur une seule position: 0,1,2,3,4,5,….9
Sur deux positions: 00, 01,02, …..,99
Sur trois positions: 000,001,……,999
Sur n positions:
Minimum 0
Maximum 10n-1
Nombre de combinaisons 10n
12 Informatique1
Système de numération positionnel
pondère à base b
Un système de numérotation positionnel pondère à
base b est défini sur un alphabet de b chiffres :
13 Informatique1
Bases de numération
(Binaire, Octale et Hexadécimale)
Système binaire (b=2) utilise deux chiffres : {0,1}
C’est avec ce système que fonctionnent les ordinateurs
Système Octale (b=8) utilise huit chiffres :{0,1,2,3,4,5,6,7}
Utilisé il y a un certain temps en Informatique.
Elle permet de coder 3 bits par un seul symbole.
14 Informatique1
Transcodage (ou conversion de base)
15 Informatique1
Changement de base
de la base 10 vers une base b
16 Informatique1
Exemple : décimale vers binaire
Soit N le nombre d’étudiants d’une classe représenté
en base décimale par : N = 73(10)
Représentation en Binaire?
17 Informatique1
Exemple : décimale vers octale
Soit N le nombre d’étudiants d’une classe représenté
en base décimale par : N = 73(10)
Représentation en Octale?
18 Informatique1
Exemple : décimale vers Hexadécimale
Soit N le nombre d’étudiants d’une classe représenté
en base décimale par : N = 73(10)
Représentation en Hexadécimale?
19 Informatique1
Question
Effectuer les transformations suivantes :
20 Informatique1
Réponses
21 Informatique1
Conversion de la base 10 à la base 2 : cas d’un
nombre réel
Un nombre réel est constitué de deux parties : la partie
entière et la partie fractionnelle.
La partie entière est transformée en effectuant des
divisions successives. La partie fractionnelle est
transformée en effectuant des multiplications
successives par 2 .
22 Informatique1
Partie 2
23 Informatique1
Conversion d’une base X à la base 10
Cette conversion est assez simple puisque il suffit de
faire le développement en polynôme de ce nombre
dans la base X , et de faire la somme par la suite.
Exemple
24 Informatique1
Exemple : binaire vers décimale
Soit N un nombre représenté en binaire par :
N = 1010011101(2)
Représentation Décimale?
25 Informatique1
Conversion d’une base b1 à une base b2
Il n’existe pas de méthode pour passer d’une base b1 à
une autre base b2 directement.
L’idée est de convertir le nombre de la base b1 à la base
10 , en suit convertir le résultat de la base 10 à la base b2 .
26 Informatique1
Conversion d’une base b1 à une base b2
Exemple:
27 Informatique1
Conversion : Octal Binaire
En octal chaque, symbole de la base s’écrit sur 3
bits en binaire. L’idée de base est de replacer
chaque symbole dans la base octal par sa valeur en
binaire sur 3 bits ( faire des éclatement sur 3 bits ).
Exemples :
(345)8=(011 100 101)2
(65,76)8=(110 101, 111 110)2
(35,34)8=(011 101 , 011 100)2
Remarque :
Le remplacement se fait de droit à gauche pour la
partie entière
et de gauche à droite pour la partie fractionnelle .
28 Informatique1
Conversion : Binaire Octal
Exemple : binaire vers octale
Soit N un nombre représenté en base binaire par :
N = 1010011101(2)
Représentation Octale?
29 Informatique1
Conversion : Hexadécimal Binaire
En Hexa chaque symbole de la base
s’écrit sur 4 bits. L’idée de base est de
replacer chaque symbole par sa valeur
en binaire sur 4 bits ( faire des
éclatement sur 4 bits ).
Exemple :
30 Informatique1
Conversion : Binaire Hexadécimal
L’idée de base est de faire des regroupements de 4 bits
à partir du poids faible. Par la suite remplacer chaque
regroupement par la valeur Héxa correspondante .
Exemple :
31 Informatique1
Représentation des nombres entiers signés
Représentation signe-magnitude:
Le bit de poids fort indique le signe (0 si positif) et les
bits restants la valeur du nombre.
Avec n bits on peut représenter des entiers entre: -
(2n-1-1) et +(2n-1-1)
Deux représentations sont possibles pour zéro
Exemple avec n=4:
32 Informatique1
Représentation des nombres entiers signés
Représentation complément à deux
Le complément à deux d’un nombre est égal à l'inverse du
nombre plus 1.
Par exemple, le complément à deux de 0101 est
(1010+1)=1011
Dans ce système, un nombre négatif est le complément à
deux du même nombre positif. Le bit de poids fort d'un
nombre négatif est égal à 1.
Avec n bits on peut représenter des entiers entre:
-(2n-1) et +(2n-1-1).
Une seule représentation est possible pour zéro
33 Informatique1
Exemple
Exemple avec n=4
Si n=4
34 Informatique1
Opérations arithmétiques en binaire
35 Informatique1
Opérations arithmétiques en octal
36 Informatique1
Opérations arithmétiques en hexadécimal
37 Informatique1
Multiplication binaire
38 Informatique1
Soustraction binaire
Dans la soustraction binaire, on procède comme en
décimal. Quand la quantité à soustraire est supérieure à
la quantité dont on soustrait, on emprunte 1 au voisin
de gauche. En binaire, ce 1 ajoute 2 à la quantité dont
on soustrait, tandis qu'en décimal il ajoute 10.
39 Informatique1
Division binaire
La division binaire s'effectue à l'aide de soustractions et de décalages,
comme la division décimale, sauf que les digits du quotient ne peuvent
être que 1 ou 0. Le bit du quotient est 1 si on peut soustraire le diviseur,
sinon il est 0.
Exemple: division du nombre 100100001112 par 10112 = 11010012 reste
1002, c'est-à-dire 1159 / 11 = 105, reste 4
40 Informatique1
Codage des nombres réels
Les formats de représentations des nombres réels sont :
Format virgule fixe
utilise par les premières machines
possède une partie ‘entière’ et une partie ‘décimale’ séparés par une
virgule. La position de la virgule est fixe d’ou le nom.
Exemple : 54,25(10) ; 10,001(2) ; A1,F0B(16)
Format virgule flottante (utilise actuellement sur machine
)
défini par :
41 Informatique1
Codage en Virgule Fixe
Etant donné une base b, un nombre x est représenté, en
format virgule fixe, par :
x = an-1an-2…a1a0,a-1a-2…a-p (b)
an-1 est le chiffre de poids fort (MSB)
a-p est le chiffre de poids faible (LSB)
n est le nombre de chiffre avant la virgule
p est le nombre de chiffre après la virgule
La valeur de x en base 10 est :
Exemple :
42 Informatique1
Codage en Virgule Fixe
Changement de base 10 2
Le passage de la base 10 à la base 2 est défini par :
Partie entière est codée sur p bits (division successive
par 2)
Partie décimale est codée sur q bits en multipliant par
2 successivement jusqu’a ce que la partie décimale soit
nulle ou le nombre de bits q est atteint.
43 Informatique1
Virgule flottante
La virgule flottante est une méthode d'écriture
de nombres réels fréquemment utilisée dans
les ordinateurs.
Elle consiste à représenter un nombre par un
signe s (égal à -1 ou 1), une mantisse m (aussi
appelée significande) et un exposant e (entier relatif,
généralement borné).
44
Codage en Virgule Flottante
x=±M.2E
où M est la mantisse (virgule fixe) et E l’exposant (signé).
Le codage en base 2, format virgule flottante, revient à coder le
signe, la mantisse et l’exposant.
Exemple : Codage en base 2, format virgule flottante, de (3,25)
45 Informatique1
Codage en Virgule Flottante
Normalisation
x= ± 1,M . 2Eb
Le signe est codé sur 1 bit ayant le poids fort :
Le signe – : bit 1
Le signe + : bit 0
Exposant biaisé (Eb)
placé avant la mantisse pour simplifier la comparaison
Codé sur p bits et biaisé pour être positif (ajout de 2 p-1-1)
Mantisse normalisé(M)
Normalisé : virgule est placé après le bit a 1 ayant le poids fort
M est codé sur q bits
Exemple : 11,01 =1,101 donc M =101
46 Informatique1
Codage en Virgule Flottante
Normalisation
47 Informatique1
Standard IEEE 754 (1985)
Simple précision sur 32 bits
:
1 bit de signe de la mantisse
8 bits pour l’exposant
23 bits pour la mantisse
48 Informatique1
Conversion décimale - IEEE754
(Codage d’un réel)
35,5(10) = ?(IEEE 754 simple précision)
Nombre positif, donc SM = 0
35,5(10) = 100011,1(2) (virgule fixe)
= 1,000111 . 25 (2) (virgule flottante)
Exposant = Eb-127 = 5, donc Eb = 132
1,M = 1,000111 donc M = 00011100...
49 Informatique1
Conversion IEEE754 - Décimale
(Evaluation d’un réel)
50 Informatique1
Caractéristiques des nombres flottants au
standard IEEE
51 Informatique1