Conversion de Bases Numériques (BIN/HEX/DEC/OCT) & Négatifs
Le monde des ordinateurs fonctionne avec des zéros et des uns, mais les humains pensent en dizaines. Et les programmeurs ? Ils doivent tout comprendre entre les deux. Que vous déboguiez du code de bas niveau, configuriez des couleurs en CSS, calculiez des masques IP ou résolviez des tâches informatiques, vous vous heurtez à la nécessité de convertir des nombres entre différents systèmes.
Les calculatrices courantes sous Windows ou sur mobile sont souvent lentes et peu pratiques. Notre convertisseur intelligent de bases numériques a été conçu par des développeurs pour des développeurs. Il offre une conversion instantanée en temps réel, la prise en charge de nombres extrêmement grands et, comme l’un des rares outils en ligne, il gère correctement les nombres négatifs sous forme binaire.
Que peut faire ce convertisseur de bases numériques ?
Lors du développement de ce widget, nous nous sommes concentrés sur la résolution des problèmes les plus courants des programmeurs :
- Réactivité en temps réel : Pas de bouton “Calculer”. Commencez à taper dans le champ HEX et voyez immédiatement comment BIN et DEC changent.
- Prise en charge des nombres négatifs (Entiers signés) : La plupart des convertisseurs en ligne échouent lorsque vous tapez
-5. Pas nous. Grâce au choix de la profondeur de bits (8, 16, 32, 64 bits), nous simulons le comportement exact du processeur en utilisant le complément à deux. - Lisibilité du code binaire : Regarder
1110101011011110est épuisant pour les yeux. Notre outil peut automatiquement formater la sortie par groupes de 4 bits (quartets) en1110 1010 1101 1110, ce qui réduit radicalement les erreurs de transcription. - Prise en charge de BigInt : Besoin de convertir un nombre 64 bits ou un hachage ? Le JavaScript standard s’arrête à $2^{53}$. Notre moteur gère des nombres de longueur arbitraire en mode “Non signé”.
Guide des bases numériques : Quand utiliser laquelle ?
1. Système décimal (DEC - Decimal)
- Base : 10 (chiffres 0-9)
- Utilisation : Vie quotidienne, finances, comptage de boucles dans le code.
- Anecdote : Les ordinateurs ne le comprennent pas directement, ils doivent le convertir en binaire.
2. Système binaire (BIN - Binary)
- Base : 2 (chiffres 0, 1)
- Utilisation : Code machine, portes logiques, masquage d’adresses IP.
- Astuce : Chaque chiffre représente un bit. 8 bits forment 1 octet (Byte).
3. Système hexadécimal (HEX - Hexadecimal)
- Base : 16 (chiffres 0-9, lettres A-F)
- Utilisation : Notation compacte du code binaire. Un caractère HEX représente exactement 4 bits (un quartet). Deux caractères (par exemple
FF) représentent un octet entier. - Exemples :
- Couleurs web :
#FF5733(Rouge, Vert, Bleu). - Adresses MAC :
00:1A:2B:3C:4D:5E. - Dumps mémoire.
- Couleurs web :
4. Système octal (OCT - Octal)
- Base : 8 (chiffres 0-7)
- Utilisation : Historiquement sur les anciens ordinateurs, aujourd’hui surtout pour les permissions Linux (chmod).
- Exemple : La commande
chmod 755définit les permissions rwx-rx-rx (lecture, écriture, exécution).
Comment gérer correctement les nombres négatifs ?
C’est la fonctionnalité la plus avancée de notre convertisseur. Dans la mémoire informatique, il n’y a pas de signe “moins”. Pour stocker un nombre négatif, l’ordinateur utilise le plus souvent la méthode du complément à deux.
Cependant, le résultat de la conversion d’un nombre négatif dépend du nombre de bits alloués à la variable. C’est pourquoi vous trouverez un sélecteur Profondeur de bits dans la barre supérieure.
Exemple : À quoi ressemble le nombre -5 ?
Essayez-le vous-même dans notre convertisseur :
-
Définissez la profondeur sur 8 bits.
- Entrez dans DEC :
-5. - Résultat HEX :
FB. - Résultat BIN :
1111 1011. - Explication : $256 - 5 = 251$ (ce qui est FB).
- Entrez dans DEC :
-
Définissez la profondeur sur 16 bits.
- Entrez dans DEC :
-5. - Résultat HEX :
FFFB. - Explication : Puisque nous avons plus d’espace, les “uns” remplissent le reste de l’espace à gauche.
- Entrez dans DEC :
-
Définissez la profondeur sur Non signé (Unsigned).
- Si vous entrez
-5, le champ deviendra rouge. Ce mode ne prend pas en charge les nombres négatifs, car cela nécessiterait une infinité de uns.
- Si vous entrez
Conseil de pro : Si vous travaillez avec des couleurs ou des adresses IP, utilisez toujours le mode “Non signé”. Si vous faites des exercices en C/C++ ou en assembleur, passez à 32 bits ou 64 bits.
Tableau des conversions rapides (Anti-sèche)
Pour une orientation rapide, voici les valeurs de base que tout “informaticien” devrait connaître par cœur.
| Décimal (DEC) | Hexadécimal (HEX) | Binaire (BIN) | Remarque |
|---|---|---|---|
| 0 | 00 | 0000 | Zéro |
| 1 | 01 | 0001 | |
| 10 | 0A | 1010 | |
| 15 | 0F | 1111 | Valeur max pour 4 bits (Quartet) |
| 16 | 10 | 0001 0000 | |
| 127 | 7F | 0111 1111 | Valeur max pour 8 bits signés (char) |
| 255 | FF | 1111 1111 | Valeur max pour 8 bits non signés (octet) |
| 65 535 | FFFF | … | Valeur max pour 16 bits |
Foire Aux Questions (FAQ)
Que signifie "Profondeur de bits" ?
Détermine la quantité de mémoire allouée à un nombre.- **8 bits :** Valeurs de 0 à 255 (ou -128 à 127). Correspond au type
charoubyte. - **16 bits :** Valeurs jusqu'à 65 535. Correspond au type
short. - **32 bits :**
intstandard dans les langages modernes. - **64 bits :** Pour les très grands nombres (
long long,BigInt).
Pourquoi le nombre 255 est-il écrit FF en HEX ?
Le système hexadécimal a 16 chiffres (0-9 et A-F), où F a une valeur de 15. Le nombreFF est calculé comme : $(15 \times 16^1) + (15 \times 16^0) = 240 + 15 = 255$.
Comment convertir une couleur HEX en RGB ?
Une couleur web, par exemple#E05412, se compose de trois octets : Rouge (E0), Vert (54), Bleu (12).
Entrez "E0" dans le champ HEX de notre convertisseur -> vous obtiendrez 224.
Entrez "54" -> vous obtiendrez 84.
Entrez "12" -> vous obtiendrez 18.
Le résultat est rgb(224, 84, 18).
Que signifient les préfixes 0x, 0b ou 0o ?
Pour distinguer les bases, les programmeurs utilisent des préfixes :0x= Hexadécimal (par ex. 0xFF)0b= Binaire (par ex. 0b101)0o= Octal (par ex. 0o755)
Pourquoi le champ est-il devenu rouge ?
C'est une fonction de validation de la saisie. Cela signifie que vous avez entré un caractère qui n'appartient pas à la base numérique donnée. Par exemple :- La lettre "G" en HEX (seuls A-F sont autorisés).
- Le chiffre "2" en BIN (seuls 0 et 1 sont autorisés).
- Le chiffre "8" en OCT (seuls 0-7 sont autorisés).