А положительное, B отрицательное и по абсолютной величине больше, чем А.
Например:
Получен правильный результат в дополнительном коде. При переводе в прямой код биты цифровой части результата инвертируются и к младшему разряду прибавляется единица: 1 0000110 + 1 = 1 0000111 = -710.
А положительное, B отрицательное и по абсолютной величине меньше, чем А.
Например:
Получен правильный результат. Единицу переноса из знакового разряда компьютер отбрасывает.
4. А и В отрицательные. Например:
Получен правильный результат в дополнительном коде. Единицу переноса из знакового разряда компьютер отбрасывает.
Случаи переполнения для дополнительных кодов рассматриваются по аналогии со случаями 5 и 6 для обратных кодов.
Сравнение рассмотренных форм кодирования целых чисел со знаком показывает:
- на преобразование отрицательного числа в обратный код компьютер затрачивает меньше времени, чем на преобразование в дополнительный код, так как последнее состоит из двух шагов — образования обратного кода и прибавления единицы к его младшему разряду;
- время выполнения сложения для дополнительных кодов чисел меньше, чем для их обратных кодов, потому что в таком сложении нет переноса единицы из знакового разряда в младший разряд результата.
ВАЖНО: Результат всегда представляется в том виде, в котором представлены исходные операнды.
Примеры
Числа даны без знаковых разрядов.
10110101 – 10010110 выполнить алгебр. сложение в обратном коде
|
|
- 11010 – 10101 выполнить алгебр. сложение в дополнительном коде, разрядная сетка 8 бит.
- 110011 – 101101 выполнить алгебр. сложение в обратном коде, разрядная сетка 8 бит.
- 101010 + 110001 выполнить алгебр. сложение в дополнительном коде, разрядная сетка 8 бит.
Решение:
1)
Ответ: +11111
2) Сначала числа представляются в прямом коде в разрядной сетке, а затем происходят необходимые преобразования.
Ответ: -101111.
3) Ответ: -1100000.
4) Ответ: +0111.
Двоично-десятичные коды
Числа в кодах такого типа представляются двоичными тетрадами соответствующих десятичных цифр.
Двоично-десятичный код (2/10) – код прямого замещения; код 8421
10 код | 2/10 код | 10 код | 2/10 код |
Остальные комбинации 10 – 15 - запрещенные | 10 код | 2/10 код | 10 код | 2/10 код |
0 | 0000 | 5 | 0101 | 10 | 1010 | 15 | 1111 | |
1 | 0001 | 6 | 0110 | 11 | 1011 | |||
2 | 0010 | 7 | 0111 | 12 | 1100 | |||
3 | 0011 | 8 | 1000 | 13 | 1101 | |||
4 | 0100 | 9 | 1001 | 15 | 1110 |
Преобразование числа в обратный код
1. Запись отрицательного числа в прямом коде
2. Добавление тетрады + 0110 во все тетрады числа из п.1 - Сложение
3. Инверсия полученной в п.2. суммы - Это и есть результат – число в обратном коде.
|
|
Преобразование числа в дополнительный код
1. Выполнить операции 1-3 из преобразования в обратный код
2. В младшую тетраду добавить + 0001 - Результат сложения – число в дополнительном коде.
При преобразовании в обратный или дополнительный код результат не корректируется.
Преобразование в прямой код из обратного или дополнительного кода происходит аналогично.
Например: -5689; - 1542; – в обр.код -9948; - 1237 – в доп.код
5689
-1542
-3567
-1237
Дата добавления: 2019-02-22; просмотров: 429; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!