
- •Представление двоичных чисел в прямом, обратном и дополнительном кодах
- •Алгебраическое сложение
- •6. А и в отрицательные, сумма абсолютных величин а и в больше, либо равна 2n-1. Вариант переполнения.
- •2. А положительное, b отрицательное и по абсолютной величине больше, чем а.
- •3. А положительное, b отрицательное и по абсолютной величине меньше, чем а.
- •Двоично-десятичные коды
- •Двоично-десятичный код (2/10) – код прямого замещения; код 8421
- •Преобразование числа в обратный код
- •Преобразование числа в дополнительный код
- •Правила выполнения арифметических операций
- •Двоично-десятичный код 8421 с избытком 3
- •Преобразование числа в обратный код
- •Преобразование числа в дополнительный код
- •Правила выполнения арифметических операций
Преобразование числа в обратный код
Запись отрицательного числа в прямом коде
Добавление тетрады + 0110 во все тетрады числа из п.1 - Сложение
Инверсия полученной в п.2. суммы - Это и есть результат – число в обратном коде.
Преобразование числа в дополнительный код
Выполнить операции 1-3 из преобразования в обратный код
В младшую тетраду добавить + 0001 - Результат сложения – число в дополнительном коде.
При преобразовании в обратный или дополнительный код результат не корректируется.
Преобразование в прямой код из обратного или дополнительного кода происходит аналогично.
Например: -5689; - 1542; – в обр.код -9948; - 1237 – в доп.код
5689
-1542
-3567
-1237
Правила выполнения арифметических операций
Коррекция результата потетрадного сложения путем добавления поправки + 0110 требуется в случае, если :
Был перенос в старшую тетраду
Возникают запрещенные комбинации
При коррекции разрешен межтетрадный перенос.
Например: 279 + 581 = 860
Сначала выполняется сумма, а потом, если требуется – коррекция
пример, где требуется коррекция при возникновении переноса и запрещенных комбинаций одновременно.
689+579=1268
Примеры:
934 – 1239 выполнить алгебр. сложение в обратном коде
- 568- 329 выполнить алгебр. сложение в обратном коде
4529 – 8966 выполнить алгебр. сложение в дополнительном коде
- 9588 – 29 выполнить алгебр. сложение в дополнительном коде
Решение:
Двоично-десятичный код 8421 с избытком 3
10 код |
2/10 код |
10 код |
2/10 код |
Остальные комбинации - запрещенные |
0 |
0011 |
5 |
1000 |
|
1 |
0100 |
6 |
1001 |
|
2 |
0101 |
7 |
1010 |
|
3 |
0110 |
8 |
1011 |
|
4 |
0111 |
9 |
1100 |
Преобразование числа в обратный код
Запись отрицательного числа в прямом коде
Инверсия полученного в п.1. числа – результат – число в обратном коде.
Преобразование числа в дополнительный код
Выполнить операции 1-2 из преобразования в обратный код
В младшую тетраду добавить + 0001 - Результат сложения – число в дополнительном коде.
Например: -4619; - 2843; – в обр.код
-5648; - 1237 – в доп.код
Правила выполнения арифметических операций
Если при сложении не было переноса из анализируемой тетрады, то в нее надо добавить + 1101.
Если был перенос в старшую тетраду, то в нее надо добавить + 0011.
Если получена неправильная тетрада, то в нее надо добавить + 0110.
Поправки вводятся при блокировке межтетрадного переноса.
Например: 283 + 749=1032
Примеры:
926 – 1097 выполнить алгебр. сложение в обратном коде
-756 – 359 выполнить алгебр. сложение в обратном коде
- 254-1 выполнить алгебр. сложение в дополнительном коде
- 1000 0011 0101 + 1001 0100 0110 выполнить алгебр. сложение в дополнительном коде
Решение:
Домашнее задание.
Выполнить алгебраическое сложение в двоичной системе счисления. Результат представить в 10 с/с. Разрядная сетка 8 бит. Указать на переполнение разрядной сетки, если есть.
9-2 |
Обратный код |
-20-19 |
Обратный код |
-120-15 |
Обратный код |
2-9 |
Дополнительный код |
50-25 |
Дополнительный код |
-126-1 |
Дополнительный код |
-5-7 |
Обратный код |
127-1 |
Обратный код |
-101+43 |
Обратный код |
-4-10 |
Дополнительный код |
-75-12 |
Дополнительный код |
-73+45 |
Дополнительный код |
Выполнить арифметическое и алгебраическое сложение в коде прямого замещения (8421) и коде 8421 с избытком 3
операнды представлять в дополнительном коде
операнды представлять в обратном коде
-60-678 операнды представлять в дополнительном коде
6754+1234 операнды представлять в дополнительном коде
9876+4656 операнды представлять в обратном коде
-28-27 операнды представлять в обратном коде