Tvåkomplementkonvertor
Konvertera ett heltal till dess tvåkomplementbitmönster med vald bitbredd, eller avkoda bitar tillbaka till ett tal.
Tvåkomplementkonvertor
Datorer lagrar negativa tal med tvåkomplement, inte med ett enkelt minustecken — samma bitmönster betyder ett annat värde beroende på om det läses som ett tal med tecken eller utan tecken. Det här verktyget konverterar i båda riktningarna: skriv ett heltal per rad och det producerar motsvarande tvåkomplementbitmönster i den valda bredden, eller byt riktning och klistra in bitmönster för att få det signerade (eller osignerade) decimalvärde som var och en representerar.
Välj en bitbredd på 8, 16, 32 eller 64 — de storlekar som riktiga processorer och programmeringsspråk faktiskt använder för en byte, short, int och long — och ett utdataformat av rent binär eller hexadecimal. Alternativet "Signerad" styr hur ett värde tolkas: när det är påslaget läses ett bitmönster som tvåkomplement (så toppbiten betyder negativt) och ett tal måste passa inom det signerade intervallet för den bredden; när det är avstängt behandlar båda riktningarna samma bitar som ett vanligt osignerat heltal. Om du byter riktning ersätts kodning med avkodning utan att förlora din inmatning, så att kontrollera en fram-och-tillbaka-konvertering är bara ett klick bort.
Överbesparing är där tvåkomplement blir förvirrande, så det här verktyget gör det synligt i stället för att dölja det: ett tal utanför det valda breddsintervallet sveper fortfarande på samma sätt som verklig hårdvara gör det — denna svepning är det korrekta tvåkomplementmönstret, inte en bugg — men de påverkade raderna är också markerade och räknade i sammanfattningen, så en oavsiktlig överbesparing i en bunt värden undgår inte märkning. Stäng av denna markering om du avsiktligt utforskar överbespringsbeteende och inte vill att det ska markeras.
Klistra in en hel kolumn med tal eller bitmönster på en gång; varje rad konverteras oberoende och tomma rader behålls så att resultatet förblir justerat med ingången. Allt körs lokalt i din webbläsare — ingenting som du skriver eller klistrar in, inklusive proprietära konstanter eller firmware-värden, överförs någonsin någonstans.