Obligement - L'Amiga au maximum

Jeudi 23 novembre 2017 - 12:13  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · Hit Parade
 · Liens
 · Liste jeux Amiga
 · Quizz
 · Téléchargements
 · Trucs et astuces


Articles

 · Actualité (récente)
 · Actualité (archive)
 · Comparatifs
 · Dossiers
 · Entrevues
 · Matériel (tests)
 · Matériel (bidouilles)
 · Points de vue
 · En pratique
 · Programmation
 · Reportages
 · Tests de jeux
 · Tests de logiciels
 · Tests de compilations
 · Articles divers

 · Articles in english
 · Articles in other languages


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Moteurs de recherche
 · Pages de liens
 · Constructeurs matériels
 · Matériel
 · Autres sites de matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Développeurs logiciels
 · Logiciels
 · Développeurs de jeux
 · Jeux
 · Autres sites de jeux
 · Scène démo
 · Divers
 · Informatique générale


Jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Partenaires

Annuaire Amiga

Amedia Computer

Relec

Hit Parade


Contact

David Brunet

Courriel

 


Dossier : La représentation des données numériques
(Article écrit par Jean-François Pillou - 2003)


Note : ce document est issu de Comment Ça Marche et mis à disposition sous les termes de la licence Creative Commons.

Représentation d'un nombre dans un ordinateur

On appelle représentation (ou codification) d'un nombre la façon selon laquelle il est décrit sous forme binaire. La représentation des nombres sur un ordinateur est indispensable pour que celui-ci puisse les stocker, les manipuler. Toutefois, le problème est qu'un nombre mathématique peut être infini (aussi grand que l'on veut), mais la représentation d'un nombre dans un ordinateur doit être faite sur un nombre de bits prédéfini. Il s'agit donc de prédéfinir un nombre de bits et la manière de les utiliser pour que ceux-ci servent le plus efficacement possible à représenter l'entité. Ainsi il serait idiot de coder un caractère sur 16 bits (65 536 possibilités) alors qu'on en utilise généralement moins de 256...

Représentation d'un entier naturel

Un entier naturel est un entier positif ou nul. Le choix à faire (c'est-à-dire le nombre de bits à utiliser) dépend de la fourchette des nombres que l'on désire utiliser. Pour coder des nombres entiers naturels compris entre 0 et 255, il nous suffira de 8 bits (un octet) car 28=256. D'une manière générale un codage sur n bits pourra permettre de représenter des nombres entiers naturels compris entre 0 et 2^n-1.

Pour représenter un nombre entier naturel après avoir défini le nombre de bits sur lequel ont le code, il suffit de ranger chaque bit dans la cellule binaire correspondant à son poids binaire de la droite vers la gauche, puis on "remplit" les bits non utilisés par des zéros.

Représentation d'un entier relatif

Un entier relatif est un entier pouvant être négatif. Il faut donc coder le nombre de telle façon que l'on puisse savoir s'il s'agit d'un nombre positif ou d'un nombre négatif, et il faut de plus que les règles d'addition soient conservées. L'astuce consiste à utiliser un codage que l'on appelle complément à deux.
  • un entier relatif positif ou nul sera représenté en binaire (base 2) comme un entier naturel, à la seule différence que le bit de poids fort (le bit situé à l'extrême gauche) représente le signe. Il faut donc s'assurer pour un entier positif ou nul qu'il est à zéro (0 correspond à un signe positif, 1 à un signe négatif). Ainsi si on code un entier naturel sur 4 bits, le nombre le plus grand sera 0111 (c'est-à-dire 7 en base décimale). D'une manière générale le plus grand entier relatif positif codé sur n bits sera 2^(n-1)-1.
  • Un entier relatif négatif grâce au codage en complément à deux. Principe du complément à deux : Soit à représenter un nombre négatif.
    • Prenons son opposé (son équivalent en positif).
    • On le représente en base 2 sur n-1 bits
    • On complémente chaque bit (on inverse, c'est-à-dire que l'on remplace les zéros par des 1 et vice-versa)
    • On ajoute 1. On remarquera qu'en ajoutant le nombre et son complément à deux on obtient 0...
Voyons maintenant cela sur un exemple : on désire coder la valeur -5 sur 8 bits. Il suffit :
  • D'écrire 5 en binaire : 00000101
  • De complémenter à 1 : 11111010
  • D'ajouter 1 : 11111011
  • La représentation binaire de -5 sur 8 bits est 11111011
Remarques : le bit de poids fort est 1, on a donc bien un nombre négatif. Si on ajoute 5 et -5 (00000101 et 11111011) on obtient 0 (avec une retenue de 1...).

Représentation d'un nombre réel

Il s'agit d'aller représenter un nombre binaire à virgule (par exemple 101,01 qui ne se lit pas cent un virgule zéro un puisque c'est un nombre binaire mais 5,25 en décimale) sous la forme 1,XXXXX... * 2n (c'est-à-dire dans notre exemple 1,0101*22). La norme IEEE définit la façon de coder un nombre réel. Cette norme se propose de coder le nombre sur 32 bits et définit trois composantes :
  • le signe est représenté par un seul bit, le bit de poids fort (celui le plus à gauche).
  • l'exposant est codé sur les 8 bits consécutifs au signe.
  • la mantisse (les bits situés après la virgule) sur les 23 bits restants.
Ainsi le codage se fait sous la forme suivante : seeeeeeeemmmmmmmmmmmmmmmmmmmmmmm.
  • Le "s" représente le bit relatif au signe.
  • Les "e" représentent les bits relatifs à l'exposant.
  • Les "m" représentent les bits relatifs à la mantisse.
Certaines conditions sont toutefois à respecter pour les exposants :
  • L'exposant 00000000 est interdit.
  • L'exposant 11111111 est interdit. On s'en sert toutefois pour signaler des erreurs, on appelle alors cette configuration du nombre NaN, ce qui signifie Not a number.
  • Les exposants peuvent ainsi aller de -126 à 127.
Voyons ce codage sur un exemple : soit à coder la valeur 525,5.
  • 525,5 s'écrit en base 2 de la façon suivante : 1000001101,1
  • On veut l'écrire sous la forme 1.0000011011 x 29
  • Par conséquent : le bit s vaut 1 l'exposant vaut 9, soit 1001 la mantisse est 10000011011
  • La représentation du nombre 525,5 en binaire avec la norme IEEE est : 10000100100000000000010000011011


[Retour en haut] / [Retour aux articles]