Čeprav se na začetku zdi, da nobenega bita ne uporabljamo za predznak, ima najbolj levi bit dejansko vlogo predznaka. Če uporabljamo 8 bitov, lahko še vedno ustvarimo natančno 256 različnih kombinacij ničel in enic. Če poizkušamo uporabiti 8 bitov za predstavitev pozitivnih števil do 255 in negativnih števil do -255, bomo kmalu spoznali, da se nekatere številke preslikajo v iste kombinacije bitov. Očitno je zato nemogoče vedeti, katero število je dejansko predstavljeno!
V praksi lahko predstavljamo številke v naslednjih obsegih. Obseg nepredznačenih števil prikazuje, koliko številk lahko predstavimo, če dovoljujemo le pozitivne številke (predznak ni potreben), obseg predznačenih števil prikazuje, koliko številk v dvojiškem komplementu lahko predstavimo, če potrebujemo tako pozitivne kot negativne številke.
Te vrednosti lahko izračunamo iz obsega 8-bitnih vrednosti. Če shranjujemo nepredznačena števila, bodo vrednosti med 00000000 in 11111111 (t.j. vrednosti med 0 in 255 v desetiškem številskem sistemu), medtem, ko bodo vrednosti predznačenih števil, predstavljenih z dvojiškim komplementom, v obsegu od 10000000 (najmanjše število, -128 v desetiškem sistemu) do 01111111 (največje število, 127 v desetiškem sistemu). Čeprav se to zdi precej čudno vseeno deluje zelo dobro, saj lahko pri tej predstavitvi uporabljamo običajno dvojiško seštevanje, tudi če seštevamo negativna števila.
Uporabiš lahko tudi pretvornik, pri katerem izbereš število bitov, ki jih boš uporabil(-a) za predstavitev števila. Nato vpišeš še pozitivno ali negativno število ter klikneš gumb »Izračunaj«. Pretvornik bo nato izpisal obseg števil, ki jih lahko predstaviš z izbranim številom bitov ter dvojiško število, ki predstavlja pozitivno število, ali pa dvojiški komplement, ki predstavlja negativno število.
Število bitov | Obseg nepredznačenih števil (pozitivna števila) | Obseg predznačenih števil (dvojiški komplement) |
---|---|---|
8 bitov | 0 do 255 | -128 do 127 |
16 bitov | 0 do 65.535 | -32.768 do 32.767 |
32 bitov | 0 do 4.294.967.295 | −2.147.483.648 do 2.147.483.647 |
64 bitov | 0 do 18.446.744.073.709.551.615 | −9.223.372.036.854.775.808 do 9.223.372.036.854.775.807 |
Obseg števil
Dvojiško število
Obrnjeno število (eniški komplement)
Komplementarno število (dvojiški komplement)