Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основы компьютерной арифметики и логики.doc
Скачиваний:
79
Добавлен:
10.11.2019
Размер:
6.48 Mб
Скачать

1.5. Коды двоичных чисел

В ЭВМ в силу определенных схемотехнических ограничений операция сложение реализуется значительно проще, чем операция вычитание. Поэтому операцию вычитание заменяют операцией сложение специально подобранных кодов, которыми изображаются двоичные числа, являющиеся правильными дробями (положительными или отрицательными).

На практике чаще всего применяются следующие коды: прямой, обратный, дополнительный, модифицированный обратный и модифицированный дополнительный.

Изображения положительных чисел - правильных дробей - совпадает во всех трех кодах (прямом, обратном и дополнительном), а изображения отрицательных чисел - правильных дробей - в соответствующих кодах различается.

1.5.1. Прямой код

Пусть - правильная двоичная дробь (положительная или отрицательная). В частном случае равно нулю.

Прямым кодом числа называется число, обозначаемое символом , получаемое по следующей формуле:

Иными словами, если где , то .

Если , то .

Следовательно, прямой код двоичного числа совпадает по изображению с записью самого числа, при этом в знаковом разряде для положительных чисел записывается 0, а для отрицательных 1.

Пример.

X = + 0,1100111011; [X]np = [+ 0,1100111011]np = 0,1100111011;

X= –0,1100111011; [X]np =[–0,1100111011]np =1–(–0,1100111011)=1,1100111011.

Из определения прямого кода вытекает, что нуль имеет два отвечающих ему значения прямого кода:

[0]np = [+ 0,00…0…0]np = 0,000…0…0;

[0]np = [– 0,00…0…0]np = 1,000…0…0.

1.5.2. Обратный код

Пусть – правильная двоичная дробь, в частности .

Обратным кодом числа называется число, обозначаемое символом , получаемое по следующей формуле:

где - количество цифр (разрядов) дробной части числа ; 10 – означает два.

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

.

Для отрицательного обратный код образуется следующим образом:

,

где , если ,

, если .

Иными словами, обратный код отрицательного двоичного числа получается следующим образом: в знаковый разряд записывается 1, а значения всех двоичных цифр дробной части инвертируются, т.е. заменяются на противоположные (нуль – на единицу, а единица – на нуль).

Пример.

X = + 0,110011101; [X]ob =[+ 0,1100111011]ob =0,1100111011;

X = – 0,110011101; [X]ob =[– 0,1100111011]ob = 1,0011000100.

Для перевода обратного кода отрицательного числа в прямой код необходимо значение всех цифровых разрядов инвертировать, оставив знаковый разряд без изменения.

Согласно определению обратного кода следует, что для изображения нуля возможны два значения кода:

[0]ob = [ + 0,00…0…0]ob = 0,00…0…0;

[0]ob = [– 0,00…0…0]ob = 1,11…1…1.

1.5.3. Модифицированный обратный код

Модифицированный обратный код правильной двоичной дроби обозначается и определяется по той же формуле, что и обратный код, с тем лишь отличием, что на изображение знака числа, включая положительный и отрицательный нуль, отводятся два разряда.

Пример.

X = + 0,110011101; [X] = 00,110011101;

X = – 0,110011101; [X] = 11,001100010.

[0] = [+0] = 00,00…0…0;

[0] = [–0] = 11,11…1…1.