Двоичная арифметика
Правила арифметических операций во всех позиционных системах одинаковы и основываются на таблицах сложения, вычитания и умноже- ния одноразрядных чисел. В силу наибольшей распространенности дво- ичной системы более детально остановимся на ней.
Таблица. сложения Таблица. вычитания Таблица. Умножения
заем
0 + 0 = 0 10 – 1 = 1 0 * 0 = 0
0 + 1 = 1 1 – 1 = 0 0 * 1 = 0
1 + 0 = 1 0 – 0 = 0 1 * 0 = 0
1 + 1 =10 перенос
1 – 0 = 1 1 * 1 = 1
Сложение двоичных чисел. Выполняется поразрядно, начиная с младшего разряда. В сложении участвуют одноименные разряды слагаемых и перенос в текущий разряд. Ре- зультатом является сумма в текущем разряде
1 1 1 0 1
. 0 1 Þ 29.25
+ 1 0 1 1 . 1 0 Þ 11.5
1 0 1 0 0 0 . 1 1 Þ 40.75
и перенос в следующий разряд. В зависимости от значения слагаемых перенос будет равен 0 (нет переноса) или 1 (есть перенос). ЭВМ имеет специальное устройство, предназначенное для сложения двоичных чи- сел. Это устройство называется сумматором. Сумматор реализует сложе-
ние через комбинацию логических операций. Логические операции будут рассмотрены позже.
Вычитание двоичных
чисел. Выполняется поразрядно, начиная с младшего. При необходимости выполняется
заем двойки из соседнего старшего разряда. ЭВМ обычно не имеет специального вычи- тающего устройства. За счет применения специальных кодов операция вычитания за- меняется на операцию сложения.
1 1 0 1 1 . 1 0 Þ 27.5
![]()
- 1 1 0 1 . 0 1 Þ 13.25
1 1 1 0 . 0 1 Þ 14.25
Умножение двоичных чисел. Выполняется путем последовательного ум- ножения цифр множителя на множимое и сложение частичных сумм. Ко- личество цифр в дробной части результата равно суммарному количест- ву цифр в дробных частях сомножителей. Пример умножения приведен на Рис.1. В ЭВМ умножение реализуется путем сдвига множимого и при- бавление его к сумме, если цифра множителя равна единице.
1 0 1 . 1 0 Þ 5.5
* 1 0 . 0 1 Þ 2.25
+ 1 0 1 1 0
+ 0 0 0 0 0
+ 0 0 0 0 0
1 0 1 1 0
1100.011 : 101.1 = 11000.11 : 1011 = 10.01
![]()
![]()
![]()
![]()
12.375 : 5.5 123.75 :
55 2.25
_11000.11 1011
1011 10.01
_1011
1 1 0 0.
Þ 12.375
2+2 = 4 цифры
Рис. 1
1011
0
Рис. 2
Деление двоичных чисел. Реализуется путем последовательных умноже- ний цифр результата на делитель и вычитания из делимого. Пример де- ления приведен на Рис.2.
При выполнении операций сложения и вычитания вручную удобнее пользоваться восьмеричной или шестнадцатеричной системой. Рассмот- рим особенности выполнения операций в этих системах счисления.
Если при сложении одноименных разрядов и переноса получено число N<S, то оно берется в качестве суммы разряда, а перенос в сле- дующий разряд равен 0. Если получено число N³S, то в качестве суммы берется разность N-S и формируется единица переноса в следующий разряд. При сложении нескольких чисел сумма одноименных разрядов может превысить основание системы счисления в несколько раз. В этом
Пример: 267[8]+136[8]=425[8]
2 6 7 Þ 183[10]
+1 3 6 Þ 94[10]
4
2 5 Þ 277[10]
13-8=5
10-8=2
Пример: 2FA[16]+3B2[16]=6AC[16]
2 F A Þ 762[10]
+ 3 B 2 Þ 946[10]
6 A C Þ 1708[10]
![]()
16 26-16=10
случае необходимо пользоваться общим правилом: в качестве суммы бе- рется остаток от целочисленного деления N/S, а значение переноса в следующий разряд есть целая часть от деления N/S.
При вычитании разрядов при необходимости берется заем из стар- шего разряда. Вычитание производится из суммы S+Ai, где Ai – значение i-го разряда вычитаемого. Значение разряда, из которого производился заем, уменьшается на 1.
Пример: 231[8]-67[8]=142[8]
2 3 1 Þ 153[10]
- 6 7 Þ 55[10]
1
4 2 Þ 277[10]
(8+1)-7=2
(8+2)-6=4
Пример: 243[16]-1FA[16]=49[16]
2 4 3 Þ 579[10]
- 1 F A Þ 506[10]
4 9 Þ 73[10]
(16+3)-10=9
(16+3)-15=4
Операции умножения и деления в этих системах менее удобны для ручного выполнения, так как требуют знания таблиц умножения для восьмеричных или шестнадцатеричных чисел.
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.