1ère Générale NSI

 

Term. Générale NSI

 

Terminale STI2D SIN

Bts Ccst

Technico-commercial 3.0

[[{"text":"

Nous savons comment représenter les entiers positifs, nous allons maintenant nous intéresser aux entiers relatifs.

La première idée qui pourrait nous venir à l'esprit est, sur un nombre comportant n bits, d'utiliser 1 bit pour représenter le signe et n-1 bit pour représenter la valeur absolue du nombre à représenter. Le bit de signe étant le bit dit \"de poids fort\" (c'est à dire le bit le plus à gauche), ce bit de poids fort serait à 0 dans le cas d'un nombre positif et à 1 dans le cas d'un nombre négatif.

un exemple : on représente l'entier 5 sur 8 bits par 00000101, -5 serait donc représenté par 10000101

À faire vous-même 1

En utilisant la méthode décrite ci-dessus, représentez -15 (représentation sur 8 bits)

","title":"Séquence n°7 ; Représentation binaire d'un entier relatif","posi":0},{"edit":"

Ecrire ici

"}],[{"text":"

Il existe un énorme inconvénient à cette méthode : l'existence de deux zéros, un zéro positif (00000000) et un zéro négatif (10000000) !

Ce problème est, pour plusieurs raisons qui ne seront pas développées ici, rédhibitoire. Nous allons donc devoir utiliser une autre méthode : le complément à deux


","title":"Le complément à deux","posi":1}],[{"text":"

Avant de représenter un entier relatif, il est nécessaire de définir le nombre de bits qui seront utilisés pour cette représentation (souvent 8, 16 , 32 ou 64 bits)

Prenons tout de suite un exemple : déterminons la représentation de -12 sur 8 bits

  • Etaoe 1 : Commençons par représenter 12 sur 8 bits (sachant que pour représenter 12 en binaire seuls 4 bits sont nécessaire, les 4 bits les plus à gauche seront à 0) : 00001100
  • Etape 2 : Inversons tous les bits (les bits à 1 passent à 0 et vice versa) : 11110011
  • Etape 3 : Ajoutons 1 au nombre obtenu à l'étape précédente :  les retenues sont notées en rouge
  • La représentation de -12 sur 8 bits est donc : 11110100

Comment peut-on être sûr que 11110100 est bien la représentation de -12 ?

Nous pouvons affirmer sans trop de risque de nous tromper que 12 + (-12) = 0, vérifions que cela est vrai pour notre représentation sur 8 bits.

Dans l'opération ci-dessus, nous avons un 1 pour le 9e bit, mais comme notre représentation se limite à 8 bits, il nous reste bien 00000000.


","title":"Le complément à deux","posi":2}],[{"text":"

À faire vous-même 2

En utilisant le complément à 2, représentez -15 (représentation sur 8 bits)



"},{"edit":"Ecrire ici."},{"text":""},{"solution":" 
Etape 1 : Convertir 15 en binaire sur 8 bits
                00001111

Etape 2 ; Inverser le nombre /00001111 => 11110000

Etape 3 : Ajouter +1
           11110000
          +            1
           11110001

Donc -15 en binaire sur 8 bits est 11110001
 
"},{"text":""}],[{"text":"

Il faut noter qu'il est facile de déterminer si une représentation correspond à un entier positif ou un entier négatif : si le bit de poids fort est à 1, nous avons affaire à un entier négatif, si le bit de poids fort est à 0, nous avons affaire à un entier positif.

À faire vous-même 3

Représentez sur 8 bits l'entier 4 puis représentez, toujours sur 8 bits, l'entier -5. Additionnez ces 2 nombres (en utilisant les représentations binaires bien évidemment), vérifiez que vous obtenez bien -1.

"},{"edit":"Ecrire ici."}],[{"text":"

À faire vous-même 4

Quel est le plus petit entier négatif que l'on peut représenter sur 8 bits ?

"},{"edit":"Ecrire ici."}],[{"text":"

À faire vous-même 5

Quel est le plus grand entier positif que l'on peut représenter sur 8 bits ?

"},{"edit":"Ecrire ici."}],[{"text":"Dans le \"À faire vous-même 4\" vous avez dû normalement trouver 10000000 (soit -128) et 01111111 (soit 127) dans le \"À faire vous-même 5\". Plus généralement, nous pouvons dire que pour une représentation sur n bits, il sera possible de coder des valeurs comprises entre -2n-1 et +2n-1 - 1"}],[{"text":"

À faire vous-même 6

Quelles sont les bornes inférieure et supérieure d'un entier relatif codé sur 16 bits ?

"},{"edit":"Ecrire ici."}],[{"text":"Coder sur 8 bits ou 16 bits les nombres suivants :
-98 , 358, -129 , 0 , -1 ,127
","title":"Exercice 1 : "},{"edit":"Ecrire ici."}],[{"text":"Ecrire en decimal les nombres binaires relatifs suivants :
0111 1110,
1010 1011,
0000 1111,
1000 0101
","title":"Exercice 2 :"},{"edit":"Ecrire ici."}],[{"text":"Source : "}]]

En poursuivant votre navigation sur mon site, vous acceptez l’utilisation des Cookies et autres traceurs  pour réaliser des statistiques de visites et enregistrer sur votre machine vos activités pédagogiques. En savoir plus.