Convertisseur de base numérique pour les programmeurs
Les développeurs, ingénieurs firmware et analystes en sécurité jonglent quotidiennement avec différentes bases numériques. Comprendre un registre de microcontrôleur en binaire, décoder une adresse mémoire en hexa, analyser un masque réseau en binaire : ces opérations demandent une conversion rapide et fiable. Le Convertisseur de Bases de WikiPlus centralise ces conversions avec BigInt pour les grandes valeurs, dans un outil sans compte ni limite d'utilisation.
Registres et masques de bits : l'indispensable binaire-hexadécimal
La programmation de systèmes embarqués, de pilotes matériels et de microcontrôleurs implique de manipuler des registres dont les bits individuels ont des significations spécifiques. Un registre de configuration d'un UART peut avoir : bit 0 pour activer la réception, bit 1 pour activer la transmission, bit 2 pour activer les interruptions, bits 3-4 pour la parité, bits 5-6 pour les bits de stop. Pour configurer UART avec TX+RX activés, parité paire (01) et 1 bit de stop (00), on calcule : 0b00010011 = 0x13 = 19 décimal. Cette valeur est assignée au registre en C avec `UART_CR = 0x13`. Le Convertisseur de Bases permet de vérifier instantanément que votre valeur hexa correspond bien aux bits que vous souhaitez activer, en voyant sa représentation binaire côte à côte.
Masques réseau IPv4 et conversion binaire
La compréhension des sous-réseaux IPv4 requiert de jongler avec les représentations décimales et binaires. Un masque /24 est 255.255.255.0 en notation décimale pointée, ce qui correspond à 11111111.11111111.11111111.00000000 en binaire — exactement 24 bits à 1 suivis de 8 bits à 0. Un masque /22 donne 255.255.252.0, soit 11111111.11111111.11111100.00000000 en binaire. Pour vérifier si deux adresses IP sont dans le même sous-réseau, on applique le masque par AND logique : c'est une opération bit à bit en binaire. L'adresse 192.168.1.100 en binaire est 11000000.10101000.00000001.01100100 et avec un masque /24 (AND avec 11111111.11111111.11111111.00000000), l'adresse réseau est 11000000.10101000.00000001.00000000 = 192.168.1.0. Le Convertisseur de Bases permet de vérifier chaque octet séparément.
Analyse forensique et CTF : décoder des valeurs inconnues
En analyse forensique et dans les challenges CTF (Capture The Flag) de cybersécurité, déchiffrer des valeurs encodées en différentes bases est une activité fréquente. Un challenge peut présenter une chaîne d'entiers décimaux séparés par des virgules qui, convertis en hexadécimal puis décodés comme ASCII, révèlent un message caché. Une clé XOR peut être cachée dans une valeur binaire. Des adresses de retour en exploitation de buffer overflow sont en hexadécimal. Les hachages MD5 et SHA sont des suites de 32 ou 64 chiffres hexadécimaux. La capacité à basculer rapidement entre bases est une compétence de base pour tout participant à des CTF ou tout analyste en sécurité. Le Convertisseur de Bases de WikiPlus, avec son support des bases 2 à 36 et des grands nombres, couvre les besoins de la majorité de ces scénarios.
Bases 32 et 36 : URL shorteners et identifiants compacts
Au-delà des quatre bases standards, certains systèmes utilisent des bases plus élevées pour créer des représentations compactes. La base 36 utilise les 10 chiffres plus les 26 lettres de l'alphabet (A-Z) et est populaire pour les numéros de série, les codes d'activation de logiciels et certains URL shorteners. Un UUID de 128 bits représenté en hexadécimal (base 16) fait 32 caractères ; en base 36, il ferait environ 25 caractères. La base 32 (utilisée dans Base32, Crockford's Base32) code les données binaires avec un alphabet plus grand que base 16 mais en évitant les caractères visuellement ambigus. Ces bases moins connues apparaissent dans les systèmes d'identification distribués, les codes-barres et certains protocoles cryptographiques. Le Convertisseur de Bases prend en charge toutes les bases de 2 à 36, permettant d'explorer ces encodages moins courants.
Questions fréquemment posées
- Quels sont les nombres négatifs en binaire (complément à deux) ?
- En complément à deux, les nombres négatifs sont représentés en inversant tous les bits puis en ajoutant 1. Pour un entier 8 bits, -1 est 11111111, -128 est 10000000. Le bit de poids fort est le signe (0=positif, 1=négatif). Cette représentation est celle utilisée par tous les processeurs modernes.
- Comment lire des dumps hexadécimaux de fichiers binaires ?
- Dans un dump hexa (xxd, hexdump), chaque paire de chiffres hexa représente un octet (0x00 à 0xFF = 0 à 255). Les fichiers ont des signatures en début : PDF commence par 25 50 44 46 (%PDF), JPEG par FF D8 FF, PNG par 89 50 4E 47 (‰PNG). Convertissez chaque octet en décimal ou ASCII pour lire le contenu.
- Pourquoi l'octal est-il encore utilisé en 2026 ?
- L'octal survit principalement dans les permissions Unix/Linux (chmod), les anciens protocoles réseau et le système de fichiers FAT. En C, les littéraux octaux sont préfixés par 0 (non pas 0o comme Python) — un piège classique car 010 vaut 8, pas 10. Dans les nouvelles applications, l'octal est rarement choisi ; on préfère l'hexadécimal pour les valeurs de bits.