Двоичная арифметика

  • docx
  • 18.11.2021
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Л2-002041.docx

Двоичная арифметика

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

Таблица. сложения      Таблица. вычитания        Таблица. Умножения

заем

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


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