Preskoči na sadržaj
100% lokalno

Pretvarač dvojnog komplementa

Pretvorite cijeli broj u njegovu reprezentaciju dvojnog komplementa odabrane bitne širine, ili dekodujte bitove natrag u broj.

Unos
Rezultat

Pretvarač dvojnog komplementa

Računala negativne brojeve čuvaju koristeći dvojni komplement, ne jednostavni minus — isti bitni uzorak znači drugačiju vrijednost ovisno o tome je li pročitan kao broj sa znakom ili bez znaka. Ovaj alat pretvara u oba smjera: unesite jedan cijeli broj po liniji i proizvodi odgovarajući bitni uzorak dvojnog komplementa na odabranoj šišini, ili promijenite smjer i zalijepite bitne uzorke da biste dobili predpisanu (ili nepredpisanu) decimalnu vrijednost koju svaki predstavlja.

Odaberite bitnu šišinu od 8, 16, 32 ili 64 — veličine koje stvarni procesori i jezici za programiranje koriste za byte, short, int i long — i format izlaza čistog binarnog ili heksadecimalnog. Opcija "Sa znakom" kontrolira kako se vrijednost interpretira: kad je uključena, bitni uzorak se čita kao dvojni komplement (pa gornji bit znači negativan) i broj mora stati u predpisani raspon za tu šišinu; kad je isključena, oba smjera tretiraju iste bitove kao običan broj bez znaka. Prebacivanje smjera zamjenjuje kodiranje sa dekodiranjem bez gubitka unosa, pa je provjera povratne konverzije samo jedan klik dalje.

Preplavljenje je gdje dvojni komplement postaje zbunjujući, pa ovaj alat ga čini vidljivim umjesto da ga skriva: broj izvan odabranog raspa šišine se i dalje omotava na način kako to radi pravi hardver — to omotavanje je ispravan uzorak dvojnog komplementa, ne greška — ali utjecane linije su također označene i brojane u pregledu, pa neplanirano preplavljenje u grupi vrijednosti ne prolazi nezapaženo. Isključite ovo označavanje ako namjerno istražujete ponašanje omotavanja i ne želite da bude označeno.

Zalijepite cijeli stupac brojeva ili bitnih uzoraka odjednom; svaka linija se pretvara neovisno i prazne linije se čuvaju tako da rezultat ostaje poravnat sa unosom. Sve se izvršava lokalno u vašem pregledniku — ništa što zalijepite, uključujući vlasničke konstante ili vrijednosti firmware-a, nikada se ne učitava nigdje.

FAQ

Što je dvojni komplement, u jednoj rečenici?
To je standardni način na koji računala predstavljaju negativne cijele brojeve u binarnom obliku: isti bitovi koji predstavljaju veliki pozitivan broj kada se čitaju kao broj bez znaka predstavljaju negativan broj kada se gornji bit čita kao znak, a ta dva čitanja razlikuju se točno za 2^šišinu.
Zašto se vrijednost označava kao "van dosega" umjesto jednostavno greške?
Omotavanje je ispravno ponašanje dvojnog komplementa za vrijednost izvan dosega, ne neuspjeh, pa alat i dalje proizvodi omotane bitove. Označava utjecane linije tako da je neplanirano preplavljenje na popisu brojeva lako vidjeti; isključite "Označi vrijednosti van dosega" ako ne želite obavijest.
Što mijenja opcija "Sa znakom"?
Kad je uključena, dekodiranje tretira gornji bit kao znak (standardni dvojni komplement) i kodiranje zahtijeva da broj stati u predpisani raspon kao -128..127 pri 8 bita. Kad je isključena, isti bitovi se čitaju kao običan broj bez znaka od 0 do 2^šišina - 1.
Mogu li pretvoriti cijeli popis brojeva odjednom?
Da. Zalijepite jedan broj (ili jedan bitni uzorak pri dekodiranju) po liniji i svaka linija se pretvara neovisno, istim redom, sa čuvanim praznim linijama.
Jesu li moji podaci učitavani negdje?
Ne. Konverzija se izvršava u potpunosti u vašem pregledniku — ništa što unesete ili zalijepite nikada se ne šalje na server.