Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpory-ekzamen.doc
Скачиваний:
5
Добавлен:
06.08.2019
Размер:
166.4 Кб
Скачать

12. Сущность и назначение машинных кодов – прямой, дополнительный и обратный. Правила образования машинных кодов.

В ЭВМ с помощью применения специальных маш.кодов чисел все арифметические операции над числами сводятся к операциям арифметического сложения и сдвигу их кодов влево/вправо. При этом учитываются знаки чисел, автоматически определяется знак результата и признаки возможного переполнения разрядной сетки. В ЭВМ применяются прямой, дополнительный и обратный коды. Замена операции вычитания на сложение может осуществляться именно с обратным или дополнительным кодами. Сущность их заключается в том, что вычитаемое как отрицательное число представляется в виде дополнения до какой-то константы, при которой выполняется условие const-В>0.

10n – константа образования дополнительного кода;

10n-1 – константа образования обратного кода;

n – количество разрядов представления целых чисел в выбранной СС.

По результатам действий над числами с дополнениями легко определить знак суммы и наличие переполнения разрядной сетки (сумма больше или равна по модулю константы образования дополнительного кода).

Правило образования кодов чисел в двоичной СС.

А=+-3410

Знак числа кодируется 0 или 1 и записывается перед самым старшим разрядом, для наглядности отделяется точкой. Пусть сетка длиной 1 байт (8 двоичных разрядов из которых 1 отведен под знак числа).

А=+-3410 = +-2216 = +- 1000102.

Примем константу дополнительного кода 2n = 28 = 101000 = 100000000.

Тогда константа обратного кода = 100000000 – 1 = 11111111.

Число

Прямой код

Обратный код

Дополнительный код

+100010

0.0100010

0.0100010

0.0100010

-100010

1.0100010

1.1011101

1.1011110

Правила образования машинных кодов чисел:

  1. Прямой код положительного и отрицательного числа отличаются только знаковым разрядом;

  2. Положительное число в прямом, дополнительном и обратном кодах выглядит одинаково;

  3. Обратный код отрицательного двоичного числа образуется из прямого путем замены всех единиц на нули, а нулей на единицы, включая знаковый разряд;

  4. Дополнительный код отрицательного двоичного числа образуется путем добавления единицы к младшему разряду обратного кода этого же числа или заменой в коде положительного числа всех нулей на единицы и единиц на нули исключая последнюю единицу и следующие за ней нули.

Примечание: Числа, представленные в естественной форме, хранятся в памяти ЭВМ в дополнительном коде, а числа в нормальной форме хранятся в памяти ЭВМ в прямом коде.

13.Действия над числами, представленными в естественной форме.

При сложении кодов чисел в ЕФ следует учитывать положения:

  1. Числа хранятся в памяти в дополнительном коде.

  2. В сумматоре числа складываются вместе со знаками, при этом образуется знак результата.

  3. При сложении чисел с разными знаками единица переноса из знакового разряда стирается, так как компенсируется одна константа образования дополнительного кода.

  4. Признаками переполнения разрядной сетки при сложении кодов чисел с одинаковыми знаками могут служить:

  • знак суммы не соответствует знакам слагаемых;

  • переносы из старшего разряда суммы в знаковый разряд и из знакового не согласуются (один из них присутствует, другой отсутствует)

Очевидно, что если переносы согласуются, то переполнения не происходит.

Примеры:

В случае переполнения разрядной сетки ЭВМ выдает запрос на прерывание программы и переходит к действиям с числами в нормальной форме.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]