На главную Назад
Добро пожаловать, уважаемый посетитель!

Для изображения как положительных, так и отрицательных чисел 8088

применяет арифметику двоичного дополнения.В такой знакопеременной

арифметике самый левый бит целого числа указывает на его знак.По-

ложительные числа имеют 0 в старшем бите, а отрицательные - 1.По-

ложительные числа имеют одинаковое значение в знаковой и без-

знаковой арифметике.У отрицательных же значение иное.Для того

чтобы сделать число отрицательным, изменить его знак на минус, оно

дополняется и результат увеличиваетя на единицу.В 4-х битовом

примере 5 имеет значение 0101B, в то время как -5 равно 1011B.

Пример на Фиг.2.4 показывает этот метод.

 

Пример на Фиг.2.5 показывает единственность нуля в арифметике

двоичного дополнения.То есть -0 равен 0.Для любого n-битового

числа в системе с двоичным дополнением наибольшее значение сос-

тавляет 2**(n-1)-1, а наименьшее -2**(n-1).Ноль - единственен.В

4-х битовой системе наибольшее число, как показано на Фиг.2.6,

равно 7, а наименьшее -8.

 

_________________________

5=0101B

 

Для изменения знака:

Дополняем1010B

Добавляем 10001B

-----__________________________________

-5=1011B0=0000B

 

Для изменеия знака: Для изменения знака:

Дополняем0100BДополняем1111B

добавляем 10001BДобавляем 10000B

----------

5=0101B-0=0000B=0

___________________________________________________________

Фиг. 2.4 Двоичное допол-Фиг. 2.5То же самое с нулем

нение 5

 

Как мы увидим позднее, процессор 8088 может работать с одним и

тем же целым как со значением имеющим или не имеющим знак.Выбор

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

программа работает в арифметике со знаком, процессор 8088 применяет

при проведении операций двоичное дополнение.

 

ДесятичноеДвоичноеДесятичноеДвоичное

-------------------------------------------------

70111-1 1111

60110-2 1110

50101-3 1101

40100-4 1100

30011-5 1011

20010-6 1010

10001-7 1001 Фиг. 2.6 Числа

00000-8 1000сдвоичным

-------------------------------------------------дополнением


 

Mail.ru