
- •1. Системы счисления
- •1.1. Позиционные системы счисления
- •1.2. Преобразование чисел из одной системы счисления
- •2. Двоичная арифметика
- •Проверка
- •3. Представление чисел в эвм
- •3.1. Формы представления чисел в эвм
- •Пример Представление чисел в нормализованной форме.
- •3.2. Целые беззнаковые двоичные числа
- •3.3. Целые знаковые двоичные числа
- •3. 4. Коды представления чисел в эвм
- •3.4.1. Прямой код
- •3.4.2. Обратный код
- •3.4.3. Дополнительный код
- •3.4.4. Прямой, обратный и дополнительный коды целых чисел в любой позиционной системе счисления
- •3.5. Сложение и вычитание чисел в обратном и дополнительном двоичных кодах
- •3.5.1. Сложение чисел в дополнительном коде
- •3.5.2. Сложение чисел в обратном коде
- •3.5.3. Расширение знака
- •3.5.4. Вычитание чисел в дополнительном коде
- •3.5. 5. Вычитание чисел в обратном коде
- •3.6.1. Сложение десятичных чисел в дополнительном коде
- •3.6.2. Сложение десятичных чисел в обратном коде
- •3.6.3. Вычитание десятичных чисел в дополнительном коде
- •3.6.4. Вычитание десятичных чисел в обратном коде
- •4. Двоичные коды
- •4.1. Взвешенные коды
- •4.1.1. Десятичное сложение в коде 8421
- •4.1.2. Десятичное вычитание в коде 8421
- •4.2. Невзвешенные коды
- •Пример. Кодовый набор Грея 1101101011 соответствует двоичному числу 1001001101.
- •Пример. Кодовый набор Грея 10111001 соответствует двоичному числу 11010001.
- •5. Обнаружение и исправление ошибок
- •5.1. Коды с обнаружением ошибок
- •5.2. Коды с исправлением ошибок
- •5.2.1. Основные принципы построения кодов Хэмминга с исправлением ошибок
- •5.2.2. Модификация метода четности-нечетности
- •6. Задачи для самостоятельного решения
- •6.1. Задачи для раздела 1
- •6.2. Задачи для раздела 2
- •6.3. Задачи для раздела 3
- •6.4. Задачи для раздела 4
- •6.5. Задачи для раздела 5
- •Литература
- •3.5. Сложение и вычитание чисел в обратном и дополнительном
3.5.4. Вычитание чисел в дополнительном коде
Рассмотрим 4 возможных случая:
а) Оба числа положительные. n = 5.
Десятичное вычитание |
Двоичное вычитание |
Вычитание в дополнительном коде |
|
+310 - +110 +210 |
+00112 - +00012 +00102 |
000112 000012
|
000112 + 111112 (1)000102 перенос отбрасывается! |
б) Оба числа отрицательные. n = 5.
Десятичное вычитание |
Двоичное вычитание |
Вычитание в дополнительном коде |
|
- 210 - - 410 +210 |
-00102 - -01002 +00102 |
111102 111002
|
111102 + 001002 (1)000102 перенос отбрасывается! |
в) Положительное уменьшаемое. n = 5.
Десятичное вычитание |
Двоичное вычитание |
Вычитание в дополнительном коде |
|
+210 - - 210 +4 10 |
+00102 - -00102 +01002 |
000102 111102
|
000102 + 000102 001002 |
г) Отрицательное уменьшаемое. n = 5.
Десятичное вычитание |
Двоичное вычитание |
Вычитание в дополнительном коде |
|
-1010 - + 210 -12 10 |
-10102 - +00102 -11002 |
101102 000102
|
101102 + 111102 (1)101002 перенос отбрасывается! |
Правило вычитания чисел в дополнительном коде Образуется дополнительный код вычитаемого и затем вычитаемое в дополнительном коде складывается с уменьшаемым без циклического переноса (перенос отбрасывается).
3.5. 5. Вычитание чисел в обратном коде
Рассмотрим 4 возможных случая.
а) Оба числа положительные. n = 5.
Десятичное вычитание |
Двоичное вычитание |
Вычитание в обратном коде |
|
+310 - +110 +210 |
+00112 - +00012 +00102 |
000112 000012
|
000112 + 111102 (1)000012
000102 циклический перенос! |
б) Оба числа отрицательные. n = 5.
Десятичное вычитание |
Двоичное вычитание |
Вычитание в обратном коде |
|
- 210 - - 410 +210 |
-00102 - -01002 +00102 |
111102 111002
|
111012 + 001002 (1)000012
+ 000102 циклический перенос! |
в) Положительное уменьшаемое. n = 5.
Десятичное вычитание |
Двоичное вычитание |
Вычитание в обратном коде |
|
+210 - - 210 +4 10 |
+00102 - -00102 +01002 |
000102 111012
|
000102 + 000102 001002 |
г) Отрицательное уменьшаемое. n = 5.
Десятичное вычитание |
Двоичное вычитание |
Вычитание в обратном коде |
|
-1010 - + 210 -12 10 |
-10102 - +00102 -11002 |
101012 000102
|
101012 + 111012 (1)100102
100112 циклический перенос! |
Правило вычитания чисел в обратном коде Образуется обратный код вычитаемого и затем вычитаемое в обратном коде складывается с уменьшаемым.
3.6. Сложение и вычитание чисел в обратном и дополнительном кодах в системе счисления с любым основанием
Сложение и вычитание чисел в обратном и дополнительном кодах в системе счисления с любым основанием выполняются аналогично тому, как названные операции выполняются в двоичной системе. Рассмотрим их выполнение в десятичной системе.