
- •«Тюменский государственный нефтегазовый университет» Институт кибернетики информатики и связи
- •Архитектура компьютерных систем
- •230115 Программирование в компьютерных системах
- •Аннотация
- •Содержание
- •Пояснительная записка
- •Критерии оценки практических работ
- •Задания к практической работе
- •Контрольные вопросы и задания
- •Практическая работа №2
- •Теоретические сведения
- •Задания к практической работе
- •Контрольные вопросы и задания
- •Практическая работа №3
- •Теоретические сведения
- •Задания к практической работе
- •Контрольные вопросы и задания
- •Список литературы
- •Учебное издание архитектура компьютерных систем
- •Библиотечно-издательский комплекс
- •625000, Тюмень, ул. Володарского, 38. Типография библиотечно-издательского комплекса.
- •625039, Тюмень, ул. Киевская, 52.
Контрольные вопросы и задания
С чем связана необходимость вычисления прямого, обратного и дополнительного кода числа?
Расскажите об общем алгоритме получения прямого, обратного и дополнительного кода целого положительного и отрицательного числа.
Расскажите об алгоритме получения прямого, обратного и дополнительного кода целого двоичного положительного и отрицательного числа.
Опишите способ получения десятичного числа по его дополнительному коду.
Как кодируется информация в памяти ЭВМ?
Что такое машинное слово? От чего зависит его длина?
Рекомендуемая литература: 1[с. 80-93], 2[33-88].
Практическая работа №3
Тема: Сложение, умножение и деление целых чисел в различных системах счисления
Цель:
- закрепление знаний о способах выполнения арифметических операций в двоичной, восьмеричной и шестнадцатеричной системах счисления;
- формирование практических навыков по выполнению арифметических операций с целыми числами в различных системах счисления.
Вид работы: индивидуальный
Время выполнения: 2 часа.
Теоретические сведения
Во всех позиционных системах счисления справедливы одни и те же законы арифметики и арифметические операции выполняются по одинаковым правилам в соответствии с составленными таблицами сложения и умножения. Наиболее простыми являются таблицы сложения и умножения в двоичной системе счисления (таблицы 3.1 и 3.2)
Таблица 3.1 - Сложение в двоичной системе счисления
-
+
0
1
0
0
1
1
1
10
Таблица 3.2 – Умножение в двоичной системе счисления
-
х
0
1
0
0
0
1
0
1
На основании данных таблиц можно составить правила выполнения сложения, вычитания и умножения над двоичными числами. Операция деления выполняется посредством операций умножения и вычитания (таблица 3.3).
Таблица 3.3 - Правила выполнения арифметических операций над двоичными числами
-
Двоичное
сложение
Двоичное
вычитание
Двоичное
умножение
0+0=0
0+1=1
1+0=1
1+1=10
0–0=0
1–0=1
1–1=0
10–1=1
0
0=0
0 1=0
1 0=0
1 1=1
Аналогичным образом можно составить таблицы сложения и умножения и выписать правила выполнения арифметических действий для любой р-ичной системы счисления, например так как в таблицах 3.4 и 3.5.
Таблица 3.4 - Сложение в шестнадцатеричной системе счисления
+ |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
0 |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
1 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
2 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
3 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
4 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
5 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
6 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
7 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
8 |
8 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
9 |
9 |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
A |
A |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
B |
B |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
1A |
C |
C |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
1A |
1B |
D |
D |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
1A |
1B |
1C |
E |
E |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
1A |
1B |
1C |
1D |
F |
F |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
1A |
1B |
1C |
1D |
1E |
Каждый элемент сложения равен предыдущему в строке или в столбце, увеличенному на единицу.
Таблица 3.5 - Умножение в шестнадцатеричной системе счисления
х |
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 |
8E |
9A |
A5 |
C |
0 |
C |
18 |
24 |
30 |
3C |
48 |
54 |
60 |
6C |
78 |
84 |
90 |
9C |
A8 |
B4 |
D |
0 |
D |
1A |
27 |
34 |
41 |
4E |
5B |
68 |
75 |
82 |
8E |
9C |
A9 |
B6 |
C3 |
E |
0 |
E |
1C |
2A |
38 |
46 |
54 |
62 |
70 |
7E |
8C |
9A |
A8 |
B6 |
C4 |
D2 |
F |
0 |
F |
1E |
2D |
3C |
4B |
5A |
69 |
78 |
87 |
96 |
A5 |
B4 |
C3 |
D2 |
E1 |
Вычисление элементов р-ичной таблицы умножения представляет собой прибавление базовой цифры столбца к числу, стоящему на одну клетку выше. Очевидно, что любая таблица сложения (умножения) в силу закона коммутативности симметрична относительно главной диагонали.
В любой р-ичной системе счисления сложение выполняется поразрядно аналогично сложению десятичных чисел на основании таблиц сложения. Если результат сложения двух цифр в данном разряде в р-ичной системе счисления больше, чем р-1, то происходит перенос единицы в старший разряд.
Пример 1: Выполните сложение двоичных чисел X=1101.01, Y=101.11
Решение:
-
1101.01
+ 101.11
10011.00
Пример 2: Выполните сложение восьмеричных чисел X=7340, Y=671
Решение:
-
7340
+ 671
10231
Пример 3: Выполните сложение шестнадцатеричных чисел X=FC2, Y=E7
Решение:
-
FC2
+ E7
10A9
Вычитание в р-ичной системе счисления также выполняется поразрядно столбиком по аналогии с десятичной системой счисления. Если в данном разряде уменьшаемое число меньше вычитаемого, то занимается единица из старшего разряда. В двоичной системе счисления занимаемая единица из старшего разряда равна двум единицам данного разряда.
Пример 4: Заданы двоичные числа X=10010 и Y=101.1. Вычислить X–Y.
Решение:
-
10010.0
– 101.1
01100.1
Пример 5: Заданы восьмеричные числа X=7631 и Y=456. Вычислить X–Y.
Решение:
-
7631
– 456
7153
Пример 6: Заданы шестнадцатеричные числа X=1998 и Y=A1F. Вычислить X–Y.
Решение:
-
1998
–A1F
F79
Умножение двух многозначных чисел в р-ичной системе счисления также выполняется по тем же правилам, что и в десятичной системе с последовательным умножением цифр первого сомножителя на второй сомножитель с помощью таблиц умножения и сложения. Если складывать приходится более трех слагаемых, то сложение целесообразно производить последовательно для избежания ошибок.
Пример 7: Выполните умножение двоичных чисел X=1101.01, Y=101.11;
Решение:
-
110100
х 10110
1101
+ 1101
100111
+ 1101
10001111000
Пример 8: Выполните умножение шестнадцатеричных чисел X=FFA.3, Y=D.E
Решение:
-
FFA.3
x D.E
DFAE A
+ CFB4 7
DDAF.5 A
При делении столбиком в р-ичной системе счисления в качестве промежуточных вычислений выполняются действия умножения и вычитания. Деление двоичных чисел сводится к сравнению этих чисел между собой и вычитанию из большего числа меньшее. Если результат деления не является конечной р-ичной дробью, то необходимо выделить непериодическую часть дроби и ее период.
Пример 9: Выполнить деление двоичных чисел 110001.1 и 1001.
Решение:
-
110001.1
1001
– 1001
101.1
1101
– 1001
100 1
– 100 1
0
Пример 10: Выполните деление двоичных чисел 1010 и 11.
Решение:
-
1010
11
– 11
11.0101…
100
– 11
100
– 11
1
Пример 11: Выполните деление шестнадцатеричных чисел F127 и 8.
Решение:
-
F127
8
– 8
1E24.E
71
– 70
12
– 10
27
– 20
70
– 70
0