À propos de cet outil
Le Convertisseur en complément à deux encode un entier signé en sa représentation binaire et hexadécimale en complément à deux à la largeur de bits que vous choisissez (4, 8, 16, 32 ou 64 bits), et décode un motif binaire ou hex en la valeur signée qu'il représente. Il utilise BigInt partout, de sorte que les valeurs 64 bits sont traitées exactement, sans perte de précision.
Pour une largeur de N bits, la plage signée va de −2^(N−1) à 2^(N−1)−1. Pour encoder un décimal d : si d est non négatif, le motif est simplement d ; si d est négatif, le motif est 2^N + d (de façon équivalente, inverser tous les bits de |d| et ajouter 1). L'outil produit le binaire de N bits complété par des zéros, l'hex de N/4 chiffres, le complément à un (NON bit à bit), et l'interprétation non signée des mêmes bits, et il signale une erreur de dépassement lorsqu'une valeur n'entre pas dans la largeur sélectionnée.
Pour décoder, collez un motif binaire ou hex et l'outil lit son bit de poids fort : si le bit le plus significatif est à 1, la valeur est motif − 2^N (négative), sinon c'est le motif lui-même. Il affiche toujours les lectures signée et non signée côte à côte, ce qui est exactement l'ambiguïté que le complément à deux résout au niveau matériel. Tout le calcul est local à votre navigateur.