Zapis predznačenih števil
V računalništvu je zapis predznačenih števil način za predstavitev celih števil v binarnem zapisu, kjer se za zapis števila uporablja določeni način predstavitve, kot je eniški komplement, dvojiški komplement, zapis z odmikom ali pa zapis s predznakom in velikostjo.[1] V vsakem primeru je cilj zagotoviti način za predstavitev tako pozitivnih kot negativnih števil.
Ni splošnega merila, ki bi določalo, katera predstavitev celih števil je univerzalno boljša. Večina sodobnih računalniških naprav za predstavitev celih števil uporablja dvojiški komplement.
Pri zapisu predznačenih števil se binarni zapis običajno deli na dva dela: prvi (najbolj levi) bit je rezerviran za predznak, preostali biti pa predstavljajo vrednost števila. Predznak 0 pomeni, da je število pozitivno, medtem ko predznak 1 označuje, da je število negativno.
Zapisi
[uredi | uredi kodo]Zapis s predznakom in velikostjo
[uredi | uredi kodo]Zapis, kjer prvi (najbolj levi) bit določa predznak, preostali biti pa vrednost.
- +3: 0011
- −3: 1011
Eniški komplement
[uredi | uredi kodo]Zapis, kjer pozitivna števila ostanejo enaka, negativna pa dobimo z inverzijo (1 → 0, 0 → 1).
- +3: 0011
- −3: 1100
Dvojiški komplement
[uredi | uredi kodo]Zapis, kjer pozitivna števila ostanejo enaka, negativna pa dobimo z inverzijo (eniški komplement) in prištevanjem 1.
- +3: 0011
- −3: 1101
Zapis z odmikom
[uredi | uredi kodo]Zapis, kjer se številu najprej prišteje konstanta, s katero se zagotovi, da je vrednost vedno pozitlvna. Število se nato predstavi kot pozitivno. Konstanti pravimo odmik (bias) in je pri -bitnem številu običajno enaka (lahko tudi ).[1] Spodnja primera imata odmik enak .
- +3: 1011 ()
- −3: 0101 ()
Primerjalna tabela
[uredi | uredi kodo]Naslednja tabela prikazuje pozitivna in negativna cela števila, ki jih lahko predstavimo s štirimi biti.
Število | Nepredznačeno | Znak-velikost | Eniški komplement | Dvojiški komplement | Z odmikom |
---|---|---|---|---|---|
16 | — | — | — | — | — |
15 | 1111 | — | — | — | — |
14 | 1110 | — | — | — | — |
13 | 1101 | — | — | — | — |
12 | 1100 | — | — | — | — |
11 | 1011 | — | — | — | — |
10 | 1010 | — | — | — | — |
9 | 1001 | — | — | — | — |
8 | 1000 | — | — | — | — |
7 | 0111 | 0111 | 0111 | 0111 | 1111 |
6 | 0110 | 0110 | 0110 | 0110 | 1110 |
5 | 0101 | 0101 | 0101 | 0101 | 1101 |
4 | 0100 | 0100 | 0100 | 0100 | 1100 |
3 | 0011 | 0011 | 0011 | 0011 | 1011 |
2 | 0010 | 0010 | 0010 | 0010 | 1010 |
1 | 0001 | 0001 | 0001 | 0001 | 1001 |
0 | 0000 | 0000 | 0000 | 0000 | 1000 |
−0 | 1000 | 1111 | |||
−1 | — | 1001 | 1110 | 1111 | 0111 |
−2 | — | 1010 | 1101 | 1110 | 0110 |
−3 | — | 1011 | 1100 | 1101 | 0101 |
−4 | — | 1100 | 1011 | 1100 | 0100 |
−5 | — | 1101 | 1010 | 1011 | 0011 |
−6 | — | 1110 | 1001 | 1010 | 0010 |
−7 | — | 1111 | 1000 | 1001 | 0001 |
−8 | — | — | — | 1000 | 0000 |
−9 | — | — | — | — | — |
−10 | — | — | — | — | — |
−11 | — | — | — | — | — |
Sklici
[uredi | uredi kodo]- ↑ 1,0 1,1 Kodek, Dušan (2008). Arhitektura in organizacija računalniških sistemov. Šenčur: Bi-tim. ISBN 978-961-6046-08-4.