Ugrás a tartalomhoz
100% helyi

Kettes komplement konverter

Konvertálja az egész számot a kettes komplement bitreprezentációjára a választott bitszélességgel, vagy dekódolja a biteket vissza számmá.

Bemenet
Kimenet

Kettes komplement konverter

A számítógépek a negatív számokat kettes komplement segítségével tárolják, nem egyszerű mínusz jellel — ugyanaz a bitminta eltérő értéket jelent attól függően, hogy előjeles vagy előjel nélküli számként olvassuk-e. Ez az eszköz mindkét irányban konvertál: írjon egy egész számot soronként és az eszköz elkészíti a megfelelő kettes komplement bitmintázatot a választott szélességgel, vagy váltson irányra és illasszon be bitmintákat az egyes által képviselt előjeles (vagy előjel nélküli) tizedesérték eléréséhez.

Válasszon 8, 16, 32 vagy 64 bites szélességet — ezek azok a méretek, amelyeket a valódi processzorok és programozási nyelvek ténylegesen használnak egy bájt, rövid szám, egész szám és hosszú szám számára — és tiszta bináris vagy hexadecimális kimeneti formátumot. Az „Előjeles” lehetőség vezérli az érték értelmezésének módját: ha be van kapcsolva, a bitmintázat kettes komplementként kerül értelmezésre (így a felső bit a negatívumot jelent) és a számnak az adott szélességre vonatkozó előjeles tartományba kell esnie; ha ki van kapcsolva, mindkét irány ugyanezeket a biteket normál előjel nélküli egész számként kezeli. Az irány váltása felcseréli a kódolást a dekódolással anélkül, hogy elveszítené a bemenetet, így az oda-vissza konverzió ellenőrzése egyetlen kattintásnyira van.

A túlcsordulás az a pont, ahol a kettes komplement zavaróvá válik, ezért ez az eszköz láthatóvá teszi azt, ahelyett hogy elrejtené: egy a választott szélességtartomány kívüli szám még mindig úgy csordulnak túl, ahogyan a valódi hardver teszi — ez a túlcsordulás a helyes kettes komplement mintázat, nem hiba — de az érintett sorok meg vannak jelölve és az összegzésben számlálva, így egy nem szándékos túlcsordulás számok tömbjében nem marad észrevétlen. Kapcsolja ki ezt a jelölést, ha szándékosan vizsgálja a túlcsordulási viselkedést és nem szeretné jelölni.

Illasszon be egy teljes oszlop számot vagy bitmintázatot egyszerre; minden sor egymástól függetlenül konvertálódik és az üres sorok megmaradnak, így az eredmény a bemenettel igazodott marad. Minden lokálisan futtatódik a böngészőjében — semmi, amit beillaszt, beleértve a szabadalmazott állandókat vagy belső vezérlőprogram értékeket, soha nem kerül feltöltésre sehova.

Gyakori kérdések

Mi az a kettes komplement, röviden?
Ez az a szokásos módszer, amellyel a számítógépek a negatív egész számokat bináris formában képviselik: ugyanazok a bitek, amelyek előjel nélküli számként olvasva egy nagy pozitív számot jelentenek, előjeles számként a felső bit előjelként való olvasásakor egy negatív számot jelentenek, és a két értelmezés pontosan 2^szélességgel tér el egymástól.
Miért jelölik a "tartomány kívüli" értéket egyszerű hiba helyett?
A túlcsordulás a helyes kettes komplement viselkedés egy tartomány kívüli értéknél, nem hiba, ezért az eszköz továbbra is előállítja a túlcsordult biteket. Jelöli az érintett sorokat, így a számok listájában a nem szándékos túlcsordulás könnyen észrevehető; kapcsolja ki a "Tartomány kívüli értékek megjelölése" lehetőséget, ha nem szeretné ezt az értesítést.
Mit módosít az "Előjeles" beállítás?
Ha be van kapcsolva, a dekódolás a felső bitet előjelként kezeli (szokásos kettes komplement) és a kódolás megköveteli, hogy a szám megfeleljen egy előjeles tartománynak, például -128..127 8 bitnél. Ha ki van kapcsolva, ugyanezek a bitek normál előjel nélküli számként kerülnek olvasásra 0-tól 2^szélességig - 1-ig.
Konvertálhatok egy teljes számlistát egyszerre?
Igen. Illasszon be egy számot (vagy bitmintázatot dekódoláskor) soronként és minden sor egymástól függetlenül kerül konvertálásra, ugyanabban a sorrendben, az üres sorok megtartásával.
Feltöltésre kerülnek az adataim valahova?
Nem. A konverzió teljes egészében a böngészőjében futtatódik — semmi, amit begépel vagy beillaszt, soha nem kerül szerverre küldésre.