Bit znaku o wadze ujemnej
Liczby całkowite ze znakiem: kod uzupełnieniowy do dwóch - Informatyka - liceum klasa 1, zakres rozszerzony (Python)
Komputer zapisuje liczby całkowite ze znakiem w **kodzie uzupełnieniowym do dwóch (U2)**. W liczbie `n`-bitowej najstarszy bit ma wagę **ujemną** `-2ⁿ⁻¹`, pozostałe zwykłe dodatnie. W bajcie (8 bitów) wagi to `-128, 64, 32, 16, 8, 4, 2, 1`, więc: - `00000101` = 5, `01111111` = 127 (największa), - `11111111` = -128 + 127 = -1, `10000000` = -128 (najmniejsza). Najstarszy bit mówi o znaku: 1 to liczba ujemna. Zakres liczb `n`-bitowych to od `-2ⁿ⁻¹` do `2ⁿ⁻¹ - 1`.
for bits in ["00000101", "01111111", "11111111", "10000000", "11111010"]:
value = -128 * int(bits[0]) + int(bits[1:], 2)
print(bits, value)Ładowanie interaktywnego edytora... Jeśli się nie pojawi, włącz JavaScript.
Wszystkie lekcje kursu Informatyka - liceum klasa 1, zakres rozszerzony·Zaloguj się, aby zapisać postęp na koncie.