Главная arrow Двоичный код arrow Арифметические операции
Как начинался компьютер
Компьютерная революция
Двоичный код
Разработки военных лет
Интегральные микросхемы
Микрокомпьютер
Персоны
Сеть
Язык компьютера
Развитие ПО
Гибкие системы
Средства разработки
Информатика
Вычислительная наука
Операционные системы
Искусственный интеллект
Предыстория
Поиск
Знания и рассуждения
Логика
Робототехника
 

 
Арифметические операции Печать

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

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

Правила сложения

Таблица сложения двоичных цифр имеет вид (желтым цветом выделены значения суммы):

 

0

1

0

0

1

1

1

10

Пример 1. Сложить двоичные числа 1101 и 11011.

Запишем слагаемые в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:

5

4

3

2

1

слагаемые:

 

1

1

0

1

1

1

0

1

1

Процесс образования суммы по разрядам описан ниже:

а) разряд 1: 12 + 12 = 102; 0 остается в разряде 1, 1 переносится в разряд 2;

б) разряд 2: 02 + 12 + 12 = 102, где вторая 12 – единица переноса; 0 остается в разряде 2, 1 переносится в разряд 3;

в) разряд 3: 12 + 02 + 12 = 102, где вторая 12 – единица переноса; 0 остается в разряде 3, 1 переносится в разряд 4;

г) разряд 4: 12 + 12 + 12 = 112, где третья 12 – единица переноса; 1 остается в разряде 4, 1 переносится в разряд 5;

д) разряд 5: 12 + 12 = 102; где вторая 12 – единица переноса; 0 остается в разряде 5, 1 переносится в разряд 6.

Таким образом:  1 1 0 12 +1 1 0 1 12 = 10 1 0 0 02.

Проверим результат. Для этого определим полные значения слагаемых и суммы (см. Перевод целых чисел):

11012 = 1*23 +1*22 + 0*21 + 1*20 = 8 + 4 + 1 = 13;

110112 = 1*24 + 1*23 + 0*22 + 1*21 + 1*20 = 16 + 8 + 2 + 1 = 27;

1010002 = 1*25 + 0*24 + 1*23 + 0*22 + 0*21 + 0*20 = 32 + 8 = 40.

Поскольку 13 + 27 = 40, двоичное сложение выполнено верно.

Таблица сложения некоторых шестнадцатеричных чисел имеет вид (обозначения строк и столбцов соответствуют слагаемым):

 

0

1

2

3

4

5

6

7

8

9

А

В

С

D

E

F

10

0

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

10

1

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

10

11

2

2

3

4

5

6

7

8

9

A

B

C

D

E

F

10

11

12

3

3

4

5

6

7

8

9

A

B

C

D

E

F

10

11

12

13

4

4

5

6

7

8

9

A

B

C

D

E

F

10

11

12

13

14

5

5

6

7

8

9

A

B

C

D

E

F

10

11

12

13

14

15

6

6

7

8

9

A

B

C

D

E

F

10

11

12

13

14

15

16

7

7

8

9

A

B

C

D

E

F

10

11

12

13

14

15

16

17

8

8

9

A

B

C

D

E

F

10

11

12

13

14

15

16

17

18

9

9

A

B

C

D

E

F

10

11

12

13

14

15

16

17

18

19

A

A

B

C

D

E

F

10

11

12

13

14

15

16

17

18

19

1A

B

B

C

D

E

F

10

11

12

13

14

15

16

17

18

19

1A

1B

C

C

D

E

F

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

D

D

E

F

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

1D

E

E

F

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

1D

1E

F

F

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

1D

1E

1F

10

10

11

12

13

14

15

16

17

18

19

1A

1B

1C

1D

1E

1F

20

 

Пример 2. Сложить шестнадцатеричные числа 1С и 7В.

Запишем слагаемые в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

 

номера разрядов:

2

1

слагаемые:

1

С

7

В

 

Процесс образования результата по разрядам с использованием приведенной таблицы описан ниже :

а) разряд 1: С16 + В16 = 1716; 7 остается в разряде 1; 1 переносится в разряд 2;

б) разряд 2: 116 + 716 + 116 = 916, где вторая 116 – единица переноса.

Таким образом:  1 С16         +  7 В16 =  9 716.        

Проверим результат. Для этого определим полные значения слагаемых и результата (см. Перевод целых чисел):

1С16 = 1*161 + 12*160 = 16 + 12 = 28;

7В16 = 7*161 + 11*160 = 112 + 11 = 123;

9716 = 9*161 + 7*160 = 144 + 7 = 151.

Поскольку 28 + 123 = 151, сложение выполнено верно.

Правила вычитания

При вычитании используются таблицы сложения, приведенные ранее.

Пример 3. Вычесть из двоичного числа 101 двоичное число 11.

Запишем алгебраические слагаемые в столбик в порядке “уменьшаемое – вычитаемое” и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:

3

2

1

уменьшаемое:

1

0

1

вычитаемое:

 

1

1

Процесс образования результата по разрядам описан ниже:

а) разряд 1: 12 – 12 = 02;

б) разряд 2: поскольку 0 < 1 и непосредственное вычитание невозможно, занимаем для уменьшаемого единицу в старшем разряде 3. Тогда разряд 2 результата рассчитывается как 102 – 12 = 12;

в) разряд 3: поскольку единица была занята в предыдущем шаге, в разряде 3 остался 0.

Таким образом:  1 0 12 - 1 12  =   1 02.

Проверим результат. Для этого определим полные значения слагаемых и результата. По таблице (или с помощью Перевод целых чисел)имеем:

1012 = 5; 112 = 3; 102 = 2.

Поскольку 5 – 3 = 2, вычитание выполнено верно.

Пример 4. Вычесть из шестнадцатеричного числа 97 шестнадцатеричное число 7В.

Запишем алгебраические слагаемые в столбик в порядке “уменьшаемое – вычитаемое” и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:

2

1

уменьшаемое:

9

7

вычитаемое:

7

В

Процесс образования результата по разрядам описан ниже:

а) разряд 1: поскольку 716 < В16 и непосредственное вычитание  невозможно, занимаем для уменьшаемого единицу в старшем разряде 2. Тогда 1716 – В16 = С16;

б) разряд 2: поскольку единица была занята в предыдущем шаге, разряд 2 уменьшаемого стал равным 816. Тогда разряд 2 результата рассчитывается как 816 – 716 = 116.

Таким образом:  9 716 - 7 В16 = 1 С16.

Для проверки результата используем данные из примера 2.

Таким образом, вычитание выполнено верно.

Правила умножения

Таблица умножения двоичных цифр приведена ниже (обозначения строк и столбцов соответствуют слагаемым):

 

0

1

0

0

0

1

0

1

Пример 5. Перемножить двоичные числа 101 и 11.

Запишем множители в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:

3

2

1

сомножители:

1

0

1

 

1

1

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

а) умножение множимого на разряд 1 множителя дает результат: 1012 * 12 = 1012;

б) умножение множимого на разряд 2 множителя дает результат: 1012 * 12 = 1012 ;

в) для получения окончательного результата складываем результаты предыдущих шагов:

слагаемые:

 

1

0

1

1

0

1

 

сумма:

1

1

1

1

Для проверки результата найдем полные значения сомножителей и произведения:

1012 = 5; 112 = 3; 11112 = 15.

Поскольку 5 * 3 = 15, умножение выполнено верно: 1012 * 112 = 11112.

Пример 6. Перемножить шестнадцатеричные числа 1С и 7В.

Используем таблицу умножения шестнадцатеричных чисел (обозначения строк и столбцов соответствуют слагаемым):

 

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

0

1

0

1

2

3

4

5

6

7

8

9

A

B

C

D

E

F

2

0

2

4

6

8

A

C

E

10

12

14

16

18

1A

1C

1E

3

0

3

6

9

C

F

12

15

18

1B

1E

21

24

27

2A

2D

4

0

4

8

C

10

14

18

1C

20

24

28

2C

30

34

38

3C

5

0

5

A

F

14

19

1E

23

28

2D

32

37

3C

41

46

4B

6

0

6

C

12

18

1E

24

2A

30

36

3C

42

48

4E

54

5A

7

0

7

E

15

1C

23

2A

31

38

3F

46

4D

54

5B

62

69

8

0

8

10

18

20

28

30

38

40

48

50

58

60

68

70

78

9

0

9

12

1B

24

2D

36

3F

48

51

5A

63

6C

75

7E

87

A

0

A

14

1E

28

32

3C

46

50

5A

64

6E

78

82

8C

96

B

0

B

16

21

2C

37

42

4D

58

63

6E

79

84

8F

9A

100

C

0

C

18

24

30

3C

48

54

60

6C

78

84

90

9C

108

114

D

0

D

1A

27

34

41

4E

5B

68

75

82

8F

9C

109

116

123

E

0

E

1C

2A

38

46

54

62

70

7E

8C

9A

108

116

124

132

F

0

F

1E

2D

3C

4B

5A

69

78

87

96

100

114

123

132

141

Запишем множители в столбик и пронумеруем разряды, присвоив младшему разряду номер 1:

номера разрядов:

2

1

сомножители:

1

С

7

В

Процесс образования результата по шагам умножения множимого на каждый разряд множителя с последующим сложением показан ниже (для простоты записи у чисел не показан атрибут шестнадцатеричной системы счисления):

а) умножение на разряд 1 дает результат:

1С*В = (10+C) * B = 10*B+C*B = (1*B)*10+C*B = B0+84 = 134;

б) умножение на разряд 2 дает результат:

1С*70 = (10+C)*7*10 = 10*7*10+C*7*10 = 700+540 = С40;

в) для получения окончательного результата складываем результаты предыдущих шагов:

134+ С40 = D74.

Для проверки результата найдем полное значение сомножителей и произведения, воспользовавшись результатами примера 2 и правилами формирования полного значения числа:

1С16 = 28; 7В16 = 123;

D7416 = 13*162 + 7*161 + 4*160 =  3444.

Поскольку 28 * 123 = 3444, умножение выполнено верно: 1С16 * 7В16 = D7416.

Сложение по модулю

Важной операцией в информатике является сложение по модулю. Это операция арифметического сложения, при котором единица переноса в старший разряд, если таковая образуется при поразрядном сложении, отбрасывается. Обычно при выполнении этой операции конкретизируют, о каком модуле идет речь, например, по модулю 10, или по модулю 2, или по модулю 16. Обозначается эта операция .

Таблица сложения двоичных чисел по модулю 2 приведена ниже (обозначения строк и столбцов соответствуют слагаемым):

 

0

1

0

0

1

1

1

0

Пример 7. Сложить по модулю 2 двоичные числа 10 и 11.

Сложение выполним поразрядно:

1) разряд единиц: 01 = 1;

2) разряд десятков: 11 = 0.

Таким образом, 102112 = 012. Чтобы  подчеркнуть, что в сложении участвовали двухразрядные слагаемые, в результате оставляются обе цифры.

Таблица сложения десятичных чисел по модулю 10 приведена ниже (обозначения строк и столбцов соответствуют слагаемым):

 

0

1

2

3

4

5

6

7

8

9

0

0

1

2

3

4

5

6

7

8

9

1

1

2

3

4

5

6

7

8

9

0

2

2

3

4

5

6

7

8

9

0

1

3

3

4

5

6

7

8

9

0

1

2

4

4

5

6

7

8

9

0

1

2

3

5

5

6

7

8

9

0

1

2

3

4

6

6

7

8

9

0

1

2

3

4

5

7

7

8

9

0

1

2

3

4

5

6

8

8

9

0

1

2

3

4

5

6

7

9

9

0

1

2

3

4

5

6

7

8

Пример 8. Сложить по модулю 10 десятичные числа 59 и 152.

Сложение выполним поразрядно:

1) разряд единиц: 92 = 1;

2) разряд десятков: 55 = 0;

3) разряд сотен: 01 = 1.

Таким образом, 59152 =101.