J'ai noté à plusieurs reprises une certaine confusion quand on parle du binaire. Je prends donc un peu de mon temps libre pour essayer de rendre ça plus clair !
Avant toutes choses, il faut bien comprendre qu'on a le binaire, la façon de le représenter et ce qu'il veut dire.
Le binaire :
Le binaire, c'est juste une représentation de nombres en base 2. Je ne vais pas m'étendre sur le sujet, mais en gros, au lieu de donner des valeurs à l'aide de chiffres allant de 0 à 9, on utilisera pour la même valeur uniquement des 1 et des 0. Par exemple, la valeur 150 en base 10 s'écrit en binaire : 1001 0110.
On remarquera entre autres, que pour une même valeur, l'écriture en binaire est bien plus longue. Elle est également plus complexe à lire pour un humain standard.
Donc voilà, dans nos ordis, les données sont stockées en binaire.
Ses représentations :
Comme dit, le binaire est lourd et illisible.
Par exemple, prenons cette valeur en binaire :
Code : Tout sélectionner
01001001011100110111010001100101
Code : Tout sélectionner
1232303205
Le souci, c'est que, déjà, ça reste long, et ensuite, il faut toute la chaîne de 0 et de 1 pour avoir la valeur en décimal. Ici on a ''0100100101110011'' et ''0111010001100101'' qui valent respectivement 18803 et 29797. On ne peut donc pas découper la chaîne. Tant pis.
Mais il n'y a pas que la nature qui est bien faite, les maths aussi !
Reprenons notre valeur et représentons-la en hexadécimal (base 16)
Code : Tout sélectionner
49737465
En fait, on peut prendre chaque groupe de 4 bits pour les représenter sous un ''nombre'' en binaire de 0 à F.
En représentant le binaire en hexa, il est donc plus court et découpable ! Le top. D'autant plus qu'en informatique, on le découpe en groupe de 8 bits, les octets. On peut du coup, représenter chaque octet en deux chiffres allant de 0 à F.
Donc quand on demande du binaire, on se retrouve avec de l'hexa. C'est normal, car ce qui nous intéresse n'est pas une représentation binaire, mais juste sa valeur ! L'hexa est tellement pratique qu'il n'y a presque aucune raison de passer par des valeurs en binaire !
La signification :
Pour finir, maintenant qu'on a bien compris qu'une chaîne de 0 et de 1 qui sont regroupables en paquets de 8 et représentables sous la forme de deux chiffres hexa, il ne reste plus qu'à savoir ce que veulent dire ces bits !
Et là, bah tout dépend de l'application. On peut décider que chaque groupe de 8 représente un caractère dans une grille de 256. Ou en utiliser deux pour avoir un choix de 65536... Ça c'est le rôle de l'encodage. On peut également décider de stocker des valeurs, ou n'importe quoi d'autre !
Pour résumer :
- Le binaire est sous forme de 0 et de 1 dans la machine (que ce soit sur DD ou flash ou réseau).
- On le représente en hexa pour le lire ou l'écrire.
- Il peut vouloir dire tout ce qu'on veut.
À savoir, pour écrire une valeur hexa en AutoIt, il suffit de rajouter ''0x'' à gauche. Par exemple
Code : Tout sélectionner
$var = 0x49737465