O tym narzędziu
Konwerter kodu uzupełnień do dwóch koduje liczbę całkowitą ze znakiem na jej reprezentację w kodzie uzupełnień do dwóch w postaci binarnej i szesnastkowej przy wybranej szerokości bitów (4, 8, 16, 32 lub 64 bity) oraz dekoduje wzorzec binarny lub hex z powrotem na wartość ze znakiem, którą reprezentuje. Używa BigInt w całości, więc wartości 64-bitowe są obsługiwane dokładnie bez utraty precyzji.
Dla szerokości N bitów zakres ze znakiem to −2^(N−1) do 2^(N−1)−1. Aby zakodować liczbę dziesiętną d: jeśli d jest nieujemne, wzorzec to po prostu d; jeśli d jest ujemne, wzorzec to 2^N + d (równoważnie: odwróć wszystkie bity |d| i dodaj 1). Narzędzie wypisuje N-bitowy binarny uzupełniony zerami, hex o N/4 cyfrach, uzupełnienie do jednego (bitowe NOT) i interpretację tych samych bitów bez znaku oraz zgłasza błąd przepełnienia, gdy wartość nie mieści się w wybranej szerokości.
Aby zdekodować, wklej wzorzec binarny lub hex, a narzędzie odczyta jego najstarszy bit: jeśli najbardziej znaczący bit jest ustawiony, wartość to wzorzec − 2^N (ujemna), w przeciwnym razie jest to sam wzorzec. Zawsze pokazuje zarówno odczyt ze znakiem, jak i bez znaku obok siebie, co jest dokładnie tą niejednoznacznością, którą kod uzupełnień do dwóch rozstrzyga na poziomie sprzętowym. Całe obliczenia są lokalne dla Twojej przeglądarki.