Kod U2 (uzupełnienie do dwóch) to najczęściej stosowany sposób zapisu liczb całkowitych ze znakiem w systemie binarnym. Pozwala reprezentować zarówno liczby dodatnie, jak i ujemne, a jednocześnie upraszcza działania arytmetyczne wykonywane przez procesor.
Jak rozpoznać znak liczby w U2?
Najważniejszy jest najstarszy bit, czyli pierwszy bit z lewej strony:
0oznacza liczbę nieujemną,1oznacza liczbę ujemną.
Przykład dla 8 bitów:
00001011=11,11110101= liczba ujemna, bo zaczyna się od1.
Jak zamienić liczbę ujemną z U2 na dziesiętną?
Dla liczby zapisanej w U2, np. 11110101, można użyć metody odwrócenia bitów:
- Sprawdź pierwszy bit:
1, więc liczba jest ujemna. - Odwróć wszystkie bity:
11110101→00001010. - Dodaj
1:00001010 + 1 = 00001011. - Zamień wynik na system dziesiętny:
00001011=11. - Dodaj znak minus: wynik to
-11.
Metoda wag bitowych
W zapisie 8-bitowym najstarszy bit ma wagę -128, a kolejne: 64, 32, 16, 8, 4, 2, 1.
Dla 11110101:
-128 + 64 + 32 + 16 + 4 + 1 = -11
Ważne na egzaminie
Nie wolno traktować liczby 11110101U2 jak zwykłej liczby binarnej bez znaku. Bez znaku byłoby to 245, ale w kodzie U2 jest to liczba ujemna, czyli -11.