Intermediate

Papildomojo kodo skaičiuoklė

Keiskite tarp ženklintų dešimtainių sveikųjų skaičių ir jų fiksuoto pločio papildomojo kodo dvejetainės bei šešioliktainės formos.

Moda

Enter a signed decimal integer.

Bit width

Signed decimal
−42

Value interpreted from the bit pattern

Two’s-complement binary
1101 0110
Signed decimal
-42
Hexadecimal
0xD6
Bit width
8-bit
Set bits
5
Representable range
-128 .. 127
-128-96.1-64.3-32.4-0.531.463.395.1127Decimal value within the representable range
Rezultatai yra apytiksliai ir skirti tik bendrai informacijai, jie nėra profesionalus patarimas — prieš jais remdamiesi visada savarankiškai patikrinkite svarbius rezultatus. Skaityti visą atsakomybės apribojimą.
Greitas atsakymas

Kaip veikia ši skaičiuoklė?

Papildomojo kodo skaičiuoklė paverčia ženklintąjį dešimtainį sveikąjį skaičių į jo fiksuoto pločio dvejetainį ir šešioliktainį kodavimą arba atkoduoja bitų raštą atgal į dešimtainį. Neneigiamos reikšmės atvaizduojamos tiesiogiai; neigiamos saugomos kaip v + 2^w. Su w bitų diapazonas yra nuo −2^(w−1) iki 2^(w−1) − 1, o viršutinis bitas duoda ženklą.

Formulė
Užkoduoti: raštas = v (jei v ≥ 0) arba v + 2^w (jei v < 0), apribota iki w bitų. Atkoduoti: reikšmė = u − 2^w jei MSB = 1, kitaip u. Diapazonas = −2^(w−1) .. 2^(w−1) − 1
How this is calculated

Papildomasis kodas yra standartinis būdas kompiuteriams saugoti ženklintuosius sveikuosius skaičius fiksuotame bitų skaičiuje (w). Režimo parinkiklis pasirenka kryptį: Dešimtainis → Dvejetainis ima ženklintą dešimtainę reikšmę, o Dvejetainis → Dešimtainis ima neapdorotą bitų raštą. Reikšmės laukas priima ženklintą dešimtainį sveikąjį skaičių arba 0 ir 1 eilutę, o Bitų plotis nustato w į 8, 16, 32 ar 64.

Norint užkoduoti dešimtainį v, neneigiamos reikšmės užrašomos tiesiogiai dvejetaine sistema ir užpildomos nuliais iki w bitų. Neigiamos reikšmės užkoduojamos kaip v + 2^w, kas prilygsta |v| − 1 bitų apvertimui (apvertimo ir vieneto pridėjimo taisyklė); rezultatas nukerpamas iki w bitų. Norint atkoduoti w bitų neženklintą nuskaitymą u, reikšmingiausias bitas yra ženklas: jei jis 1, tikroji reikšmė yra u − 2^w, kitaip reikšmė tiesiog yra u. Šešioliktainė išvestis yra tas pats neženklintas bitų raštas, užrašytas 16 pagrindu.

w bitų laukas vaizduoja sveikuosius skaičius nuo −2^(w−1) iki 2^(w−1) − 1; skaičiuoklė atmeta dešimtainius už šio diapazono ir atmeta bitų raštus, ilgesnius už w. Kadangi 64 bitų reikšmės viršija JavaScript saugaus sveikojo skaičiaus ribą, matematika atliekama su BigInt tiksliai dvejetainei ir šešioliktainei išvesčiai, nors pagrindinė dešimtainė kortelė rodydama gali apvalinti labai didelius 64 bitų dydžius.

Dažnai užduodami klausimai

Papildomajame kode neigiama reikšmė saugoma kaip v + 2^w, todėl −1 8 bituose tampa 0xFF, o 32 bituose tampa 0xFFFFFFFF. Priekiniai bitai yra vienetai, vaizduojantys ženklą, o ne milžinišką teigiamą dydį.

Su w bitų išreiškiamas ženklintasis diapazonas yra nuo −2^(w−1) iki 2^(w−1) − 1. 8 bitams tai yra nuo −128 iki 127, o 16 bitams – nuo −32768 iki 32767. Reikšmių už šio diapazono užkoduoti negalima.

Pažiūrėkite į reikšmingiausią (kairiausią) bitą. Jei jis 1, skaičius neigiamas ir lygus u − 2^w; jei jis 0, skaičius neneigiamas ir lygus u tiesiogiai.

Taip pat žinomas kaip

dviejų papildinys
ženkliuotas dvejetainis
papildomasis kodas
neigiamas dvejetainis
twos complement
dviejų papildinio keitiklis
ženkliuoto skaičiaus kodavimas

APA

TG we-Calculate Editorial Team. (2026). Papildomojo kodo skaičiuoklė [Online calculator]. TG we-Calculate. https://we-calculate.com/lt/calculator/twos-complement-calculator

Chicago

TG we-Calculate Editorial Team. "Papildomojo kodo skaičiuoklė." TG we-Calculate. 2026. https://we-calculate.com/lt/calculator/twos-complement-calculator.

IEEE

TG we-Calculate Editorial Team, "Papildomojo kodo skaičiuoklė," TG we-Calculate, 2026. [Online]. Available: https://we-calculate.com/lt/calculator/twos-complement-calculator

BibTeX

@misc{wecalculate_twos_complement_calculator, title = {Papildomojo kodo skaičiuoklė}, author = {{TG we-Calculate Editorial Team}}, howpublished = {\url{https://we-calculate.com/lt/calculator/twos-complement-calculator}}, year = {2026}, note = {TG we-Calculate} }

Ar ši skaičiuoklė jums padėjo?