Onwebcreations.Net  
Onwebcreations.Net
 
Programmation
Services Gratuits
Codes Sources
Divertissements
   

  Programmation C Haut de page

 

Représentation des nombres sous forme binaire sur un octet :

Sous forme binaire, les symboles 0 et 1 permettent de représenter sur 8 positions, 256 combinaisons différentes. On peut donc coder en binaire les nombres allant de 0 à 255. Pour représenter des nombres entiers positifs et négatifs, on partage en 2 moitiés l'ensemble des combinaisons binaires disponibles : on utilise la première moitié pour les nombres négatifs, et l'autre pour les nombres positifs.

Les 128 premières combinaisons correspondent aux nombres de 0 à 127.
Les 128 dernières combinaisons correspondent aux nombres de -128 à -1.

Sur 8 bits, donc, le nombre 3 ressemble à ceci :

00000011 (codage du nombre 3 sous forme binaire)

Le nombre (-3) est obtenu en transformant cette suite binaire par le complément à 2.

Les compléments à 1 et à 2 :

Le complément à 1 est obtenu par le remplacement de tous les bit valant 0 par 1, et tous les bits valant 1 par 0.
Le complément à 2, est obtenu par l'ajout de 1 au complément à 1. (0+1=1 et 1+1=0)

Exemple :

00000011 le nombre 3 sur 8 bits
11111100 complément à 1 du nombre 3
11111101 complément à 2 du nombre 3

Si on regarde bien, 11111101 correspond effectivement au nombre -3 dans le tableau des correspondances :

BINAIRE VALEUR
00000000 0
00000001 1
00000010 2
00000011 3
00000100 4
... ...
01111011 123
01111100 124
01111101 125
00000001 126
01111111 127
10000000 -128
10000001 -126
10000010 -125
... ...
11111100 -4
11111101 -3
11111110 -2
11111111 -1

Les types short, int, et long :

Il permettent le stockage de nombres. Ces types de données se différencient par l'occupation en mémoire nécessaire.
Le type short occupe 2 octets (soit 16 bits).
Le type int occupe 2 ou 4 octets selon les machines (soit 16 ou 32 bits).
Le type
long occupe 4 octets (soit 32 bits).

Sur 2 octets, on peut former 65 536 (256x256) combinaisons différentes, donc codifier les nombres signés allant de -32 768 à 37 767, et les nombres non signés allant de 0 à 65535.

Sur 4 octets, on peut former 4 294 967 296 (256^4) combinaisons différentes, donc codifier les nombres signés allant de -2 147 843 648 à 2 147 843 647, et les nombres non signés allant de 0 à 4 294 967 295.

Voici le nombre 2010 codifié sur 2 octets (short) et 4 octets (long) :

2 octets   00000111 11011010
4 octets 00000000 00000000 00000111 11011010


 
    Haut de page
© Onwebcreations.Net : Programmation & Services Internet
Accessible aussi par : Services-Gratuits-Webmasters.com
Contacter le suppport technique
Internaute(s) actuellement sur le site.