А положительное, 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; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!