Conversion de base



Conversion de base prenant en charge des entiers de longueur arbitraire. Si vous devez convertir des entiers, utilisez de préférence celui-ci.

 2 Base   
Copier
 8 Base   
Copier
10 Base   
Copier
16 Base   
Copier
32 Base   
Copier

Base

Qu'est-ce que la base

La base, comme son nom l'indique, est la méthode utilisée pour avancer d'une position lors du comptage. Par exemple, le système décimal avance d'une unité lorsqu'il atteint 10 ; le binaire avance d'une unité lorsqu'il atteint 2. Et ainsi de suite.

Le système décimal est le plus couramment utilisé dans notre vie quotidienne. Les autres bases couramment utilisées incluent le binaire, l'octal et l'hexadécimal.

Décimal

Le système décimal est l'unité de base la plus couramment utilisée, il paraît que même nos ancêtres singes l'utilisaient. Cela est dû au fait que nous avons tous dix doigts et que nous avons naturellement utilisé ces compteurs manuels - nos doigts - pour compter.

Le système décimal est facile à comprendre, il est représenté par les dix chiffres arabes de 0 à 9, chaque dizaine avance d'une position.

Binaire

Le binaire est représenté par les chiffres 0 et 1, chaque fois qu'il atteint deux, il avance d'une position. Par exemple, l'addition binaire de 1 est 1 + 1, ce qui donne 2, il faut donc avancer d'une position pour obtenir le binaire 10.

Le binaire est largement utilisé en informatique car la structure physique de l'ordinateur utilise des niveaux de tension élevés et bas, qui peuvent être représentés respectivement par 0 et 1.

Octal

L'octal est composé des huit chiffres 01234567, chaque fois qu'il atteint huit, il avance d'une position. Le processus de calcul est similaire à celui du binaire.

Hexadécimal

L'hexadécimal est composé de seize caractères 0123456789abcdef. Les valeurs hexadécimales sont généralement précédées du préfixe 0x, par exemple 0x8a représente la valeur hexadécimale 8a.

Méthodes de conversion de base

Alors, comment calculer pour convertir une base en une autre ? Commençons par la conversion du décimal en base N, et la conversion de la base N en décimal (N peut être n'importe quelle base, comme 2, 8 ou 16).

Conversion de la valeur décimale en base N

  1. Supposons que la valeur décimale soit D1
  2. D1 modulo N donne le reste, qui est la première valeur (la moins significative) en base N
  3. D1 divisé par N, le résultat est arrondi, c'est la nouvelle valeur décimale pour le prochain calcul, notée D2
  4. D2 modulo N donne le reste, qui est la deuxième valeur en base N
  5. D2 divisé par N, le résultat est arrondi, c'est la nouvelle valeur décimale pour le prochain calcul, notée D3
  6. Répétez cette logique jusqu'à ce que la valeur entière de Dx divisée par N soit égale à 0

Par exemple, pour convertir la valeur décimale 19 en binaire, les étapes sont les suivantes

  1. 19 % 2 = 1, utilisez 1 comme bit le moins significatif ; 19 / 2 = 9.5, arrondi à 9
  2. 9 % 2 = 1, utilisez 1 comme deuxième bit ; 9 / 2 = 4.5, arrondi à 4
  3. 4 % 2 = 0, utilisez 0 comme troisième bit ; 4 / 2 = 2
  4. 2 % 2 = 0, utilisez 0 comme quatrième bit ; 2 / 2 = 1
  5. 1 % 2 = 1, utilisez 1 comme cinquième bit ; 1 / = 0.5, arrondi à 0, fin du processus
  6. La valeur binaire finale est 10011

Conversion de la valeur en base N en décimal

  1. Supposons que la valeur binaire soit B1
  2. À partir du bit le moins significatif, multipliez chaque bit de B1 par la puissance de N (nombre de bits - 1)
  3. Additionnez chaque produit de l'étape 2 pour obtenir la valeur décimale

Par exemple, pour convertir la valeur binaire 1101 en décimal, les étapes sont les suivantes

  1. 1101 a 4 bits au total, en commençant par le moins significatif, le premier bit est 1, le deuxième bit est 0, le troisième bit est 1, le quatrième bit est 1
  2. Le résultat du premier bit est 1 * 2 ^ (1 - 1) = 1 * 2 ^ 0 = 1 * 1 = 1, où 2 ^ 0 représente 2 puissance 0
  3. Le résultat du deuxième bit est 0 * 2 ^ (2 - 1) = 0
  4. Le résultat du troisième bit est 1 * 2 ^ (3 - 1) = 4
  5. Le résultat du quatrième bit est 1 * 2 ^ (4 - 1) = 8
  6. Le résultat décimal est 1 + 0 + 4 + 8 = 13

Pour convertir entre d'autres bases, utilisez cette méthode pour d'abord convertir en décimal, puis en la base cible

Références

Document de spécification de base