Predstavitev negativnih števil v praksi

Dvojiški komplement

Dvojiški komplement je predstavitev števil, s katero se izognemo ​​dvema predstavitvama številke 0, še pomembneje pa je, da olajša računanje z negativnimi številkami.

Pozitivne številke predstavimo z dvojiškim komplementom na način, ki smo ga že spoznali. Če uporabljamo 8 bitov, potem najbolj levi bit predstavlja predzna in je enak 0, s preostalimi 7 biti pa številko predstavimo kot običajno dvojiško število; na primer, številka 1 je 00000001, številka 65 pa 01000001.

Pri predstavitvi negativnih števil z dvojiškim komplementom postanejo stvari bolj zanimive. Za pretvorbo negativnega števila v njegovo predstavitev z dvojiškim komplementom uporabimo naslednji postopek.

  1. Pretvorimo številko v dvojiško število po običajnem postopku (pri tem ne uporabimo bita za predznak in se pretvarjamo, da gre za pozitivno številko).
  2. Obrnemo vse števke (to pomeni, da spremenimo 0 v 1 in 1 v 0).
  3. Obrnjenemu številu prištejemo 1.

Predpostavimo na primer, da želimo pretvoriti številko -118 v dvojiško število, predstavljeno z dvojiškim komplementom. Postopek pretvorbe je prikazan spodaj.

  1. Dvojiško število številke 118 je 01110110.
  2. Ko obrnemo vse števke, dobimo 10001001.
  3. Ko obrnjenemu številu prištejemo 1, dobimo: 10001001 + 1 = 10001010.
Torej je številka -118 predstavljena z dvojiškim komplementom enaka 10001010.


Dvojiško število

0000


Obrnjeno število
(eniški komplement)

 


Komplementarno število
(dvojiški komplement)

 

Pri pretvarjanju v drugo smer moramo vedeti, ali je število pozitivno, ali negativno. Pozitivna števila pretvorimo po običajnem postopku iz dvojiške v desetiško obliko. Negativna števila pa moramo najprej pretvoriti v običajno dvojiško obliko, preden jih lahko pretvorimo v desetiško obliko.

Kako torej vemo, ali je številka pozitivna ali negativna? Izkaže se, da pri predstavitvi z dvojiškim komplementom vse negativne številke začnejo z 1, vse pozitivne številke pa z 0. Če se torej število začne z 1, uporabimo naslednji postopek, da ga pretvorimo v negativno desetiško številko.

  1. Odštejmo 1 od števila.
  2. Obrnemo vse števke.
  3. Pretvorimo obrnjeno število v desetiško številko po običajnem postopku.
  4. Pred številko dodamo predznak minus.