Tworzenie książki (wyłącz)
 Dodaj tę stronę do książki Pokaż książkę (0 stron) Proponowane strony

Kod uzupełnień do jedności

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, szukaj

Kod uzupełnień do jedności to sposób zapisu liczb całkowitych oznaczany jako ZU1 lub U1. Liczby dodatnie zapisywane są jak w naturalnym kodzie binarnym, przy czym najbardziej znaczący bit – traktowany jako bit znaku – musi mieć wartość 0. Do reprezentowania liczb ujemnych wykorzystywana jest bitowa negacja danej liczby, co sprawia, że bit znaku ma wartość 1. Wynika z tego również występowanie dwóch reprezentacji zera: +0 (00000000U1) i -0 (11111111U1). W związku z tym liczby zapisane w ZU1 na n bitach pochodzą z zakresu:

[- 2^{n-1}-1\quad ,\quad 2^{n-1}-1]

co daje zakres identyczny jak w reprezentacji znak-moduł. Dla 8 bitów (bajta) są to liczby od -127 do 127.

Spis treści

[edytuj] Porównanie U1 z U2

Dla reprezentacji bitowej, w której najstarszy bit jest równy 0 (0xxxxxx...x), nie ma znaczenia, czy jest to reprezentacja U1 czy U2 – wartość liczby jest taka sama. Reprezentacje z najstarszym bitem równym 1 oznaczają ujemne liczby lub -0 w U1 oraz ujemne liczby w U2, stąd jeśli reprezentację bitową 1xxxxx...x potraktować jako zapis U1, liczba będzie o 1 większa, niż gdyby potraktować go jako U2[1].

[edytuj] Dodawanie i odejmowanie

Dodawanie liczb w U1 jest podobne do dodawania liczb binarnych, z tą różnicą że powstałe przeniesienie poza najstarszy bit należy dodać do wynikowej sumy. Na przykład obliczając wartość wyrażenia 7 + (–3) oczekujemy wyniku 4. Dodając binarnie te liczby zapisane w kodzie U1, dostaniemy liczbę 3 oraz przeniesienie, które dodajemy do otrzymanej liczby aby otrzymać ostateczny wynik 4:

  111111            (przeniesienia na poszczególnych bitach)
   00000111U1   710
 + 11111100U1  -310
 ----------
  100000011
   00000011U1   310 (wynik obcięty do zakresu liczby)
 + 00000001U1   110 (dodajemy przeniesienie)
 ----------
   00000100U1   410 (ostateczny wynik)

Aby wykonać odejmowanie wystarczy odwrócić bity drugiej liczby i tak powstałe liczby dodać.

Przypisy

[edytuj] Zobacz też

Źródło „http://pl.wikipedia.org/w/index.php?title=Kod_uzupełnień_do_jedności&oldid=30023127
Osobiste
Przestrzenie nazw

Warianty
Działania
Nawigacja
Dla czytelników
Dla wikipedystów
Narzędzia
Drukuj lub eksportuj
W innych językach

Polecamy: Pozycjonowanie, wózki dziecięce, Kino domowe, Viagra, Kredyty