Во всех примерах будут использоваться 8-разрядные числа.
Чтобы получить представление отрицательного числа в дополнительном коде, надо:
- Взять представление этого числа со знаком +
- Инвертировать все цифровые разряды
- Прибавить 1 в младший разряд
Пример: найдем представление числа -108 в дополнительном коде.
1. Запишем число 108 в двоичном представлении:
01101100
2. Инвертируем все разряды:
10010011
3. Прибавляем 1 в младший разряд:
10010011 +00000001 --------- 10010100
Число -108 в дополнительном коде будет выглядеть так: 10010100
Правило перевода можно упростить:
- Взять представление числа со знаком +
- Инвертировать все цифровые разряды до младшей единицы. Младшая единица и следующие за ней нули остаются неизменными
В самом деле, это легко заметить, если рассмотреть представления чисел 108 и -108:
108 = 01101100ДК -108 = 10010100ДК
Некоторые 8-битные числа в дополнительном коде:
| Число | ДК |
| -128 | 1000 0000 |
| -127 | 1000 0001 |
| -126 | 1000 0010 |
| -125 | 1000 0011 |
| ... | ... |
| -3 | 1111 1101 |
| -2 | 1111 1110 |
| -1 | 1111 1111 |
| 0 | 0000 0000 |
| 1 | 0000 0001 |
| 2 | 0000 0010 |
| 3 | 0000 0011 |
| ... | ... |
| 125 | 0111 1101 |
| 126 | 0111 1110 |
| 127 | 0111 1111 |
Комментариев нет:
Отправить комментарий