Правила выполнения арифметических операций в двоичной системе



Сложение. Операция сложения выполняется так же, как и в деся­тичной системе. Переполнение разряда приводит к появлению едини­цы в следующем разряде:

0+0=0, 0+1=1, 1+1=10;

+11110011

111011

Вычитание. Поскольку большинство современных компьютеров располагает только одним аппаратным сумматором, с помощью кото­рого реализуются все арифметические операции, вычитание сводится к сложению с отрицательным числом:

15 – 8 = 15 + (–8).

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

1) преобразовать отрицательное число из формы со знаком в до­полнительный код;

2) выполнить операцию двоичного сложения над всеми разрядами, включая знаковый, игнорируя единицу переноса из самого высокого разряда;

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

 

13 – 15 = 13 + (–15)

1) –1510 = 10001111 ® 1110000 + 1 ® 1110001 ® 11110001

2)

+00001101

11110001

3) 1111 1110 ® 000 0001 + 1 ® 1000 0010 = –210

 

Таким образом, при выполнении операций сложения и вычитания арифметико-логическому устройству процессора приходится выпол­няй, поразрядное сложение с переносом, инвертирование и проверку на знак двоичных чисел.

И тех случаях, когда необходимо произвести арифметические <я над числами больше 127, они размещаются уже не в одном, а в двух и более регистрах.

 

Умножение. Если наряду с перечисленными операциями выполнить операции сдвига, то с помощью сумматора можно выполнить и умножение, которое сводится к серии повторных сложений. Если цифра в нулевой позиции множителя равна 1, то множимое переписывается под соответствующими разрядами, умножение на последующие единицы приводят к сдвигу слагаемого влево на одну позицию. Если цифра множителя равна 0, то следующее слагаемое смещается на две позиции влево.

 

1510 · 1310 = 19510 = 110000112 = 1·27 + 1·26 + 1·21 + 1·2° = 19510

 

*00001111

00001101

+00001111

00001111.

00011000011

 

Деление. При выполнении операции деления несколько раз производится операция вычитания. Поэтому предварительно следуем найти код делителя. Деление выполняется путем повторного вычшания и сдвига. Для примера выполним деление числа 195 на 15 или в двоичной системе 110000112 на 11112. Дополнительный код числа 1111 ® 11110001. Поскольку по правилам деления каждое про­межуточное делимое должно быть больше делителя, выбираем в каче­стве первого делимого число 11000, т.е. первые пять разрядов и добав­ляем слева три нуля, дополняя делимое до 8 разрядов. Затем произво­дим сложение его с дополнительным кодом делимого и заносим в ре­зультат единицу. Если следующее делимое после сноса очередной цифры будет меньше делителя, то в результат заносится нуль и в де­лимое сносится еще одна цифра из исходного делимого.

Делимое 111 на третьем шаге после сложения и сноски очередного разряда меньше делителя, поэтому записываем в результат 0 и сносим еще один разряд из оставшихся в делимом. После третьего шага результат сложения равен 0, деление закончено.

Ответ: 000011012 = 1310.


Дата добавления: 2015-12-17; просмотров: 20; Мы поможем в написании вашей работы!

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






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