- •Методичні вказівки
- •1. Завдання №1
- •1.1 Основні теоретичні відомості
- •Представлення цілих чисел
- •Перевід правильних дробів
- •Представлення неправильних дробів
- •1.2 Порядок виконання завдання
- •1.3 Контрольні запитання
- •2.Завдання №2 Арифметичні операції в позиційних системах числення
- •2.1 Основні теоретичні відомості
- •Методичні вказівки
- •2.2 Порядок виконання завдання
- •2.3 Контрольні запитання
- •Івано-Франківський національний технічний університет нафти і газу
- •Домашня робота №1
1.3 Контрольні запитання
1. Які системи числення використовуються для запису чисел в мікропроцесорі і чому?
2. Яким чином представляється число в різних системах числення? (розгорнута і коротка форма запису).
3. Правила переводу цілих в дробових чисел в різні системи числення (скласти і записати алгоритм переводу).
2.Завдання №2 Арифметичні операції в позиційних системах числення
2.1 Основні теоретичні відомості
У всіх позиційних системах числення справедливі одні і ті ж закони арифметики і арифметичні операції виконуються по однакових правилах відповідно до складених таблиць додавання і множення. Найбільш простими є таблиці складання і множення в двійковій системі числення.
Таблиця 2.1 - Складання і множення в двійковій системі числення
+ |
0 |
1 |
|
х |
0 |
1 |
0 |
0 |
1 |
|
0 |
0 |
0 |
1 |
1 |
10 |
|
1 |
0 |
1 |
На підставі даних таблиць можна скласти правила виконання додавання, віднімання і множення над двійковими числами. Операція ділення виконується за допомогою операцій множення і віднімання.
Таблиця 2.2 - Правила виконання арифметичних операцій над двійковими числами
Двійкове складання |
Двійкове віднімання |
Двійкове множення |
0+0=0 0+1=1 1+0=1 1+1=10 |
0–0=0 1–0=1 1–1=0 10–1=1 |
00=0 01=0 10=0 11=1 |
Аналогічним чином можна скласти таблиці складання і множення і виписати правила виконання арифметичних дій для будь-якої р-вой системи числення.
Таблиця 2.3 - Таблиця складання в шістнадцяткової системі числення
+ |
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 |
Кожен елемент складання дорівнює попередньому в рядку або в стовпці, збільшеному на одиницю.
Таблиця 2.4 - Таблиця множення в шістнадцяткової системі числення
х |
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 |
Обчисленням елементів р-вої таблиці множення є збільшення базової цифри стовпця до числа, що стоїть на одну клітку вище. Очевидно, що будь-яка таблиця складання (множення) через закон комутативності симетрична щодо головної діагоналі.
Будь-яка інформація (дані, команди) представляється вмікропроцесорі у вигляді двійкових кодів. Окремі елементи двійкового коду, що мають значення 0 або 1, називають розрядами або бітами. Тому кожен з однорідних елементів елементу пам'яті комп'ютера, що знаходиться в одному з двох стійких станів і що зберігає один біт двійкової коди називається розрядом. Структурною одиницею представлення двійкової коди є: 8-розрядний формат – байт, 32-розрядний формат – машинне слово, 16-розрядний формат – півслово і 64-розрядний формат – подвійне слово.
Існує два основні типи представлення чисел в комп'ютері – з фіксованою і плаваючою крапкою (комою). Для представлення цілих чисел зазвичай використовується формат з фіксованою крапкою, в якому положення крапки зафіксоване після найправішого розряду. До достоїнств використання формату з фіксованою крапкою відносяться простота виконання арифметичних операцій і висока точність зображення чисел. До недоліків – невеликий діапазон представлення чисел.
В цілях спрощення виконання арифметичних операцій застосовують спеціальні коди для представлення чисел в комп'ютері. Використання код дозволяє звести операцію віднімання чисел до арифметичного складання коду цих чисел. Застосовуються прямий, зворотний і додатковий коди чисел. Прямий код використовується для представлення позитивних і негативних чисел в пристрої комп'ютера, що запам'ятовує. Зворотний і додатковий коди використовуються для заміни операції віднімання операцією складання, що спрощує пристрій арифметичного блоку ЕОМ.
Прямий код двійкового числа збігається по зображенню із записом двійкового числа. Знаковим розрядом зазвичай є старший розряд в розрядній сітці, значення якого для позитивних чисел дорівнює 0, а для негативних чисел 1. Прямий код числа 53 = 1101012 у восьмирозрядному знаковому уявленні має вигляд:
Таблиця 2.5 - Однобайтовий знаковий формат представлення числа
7 розряд (знаковий) |
6 розряд |
5 розряд |
4 розряд |
3 розряд |
2 розряд |
1 розряд |
0 розряд |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
Домовляємось, що при записі коду знаковий розряд відокремлювати від інших розрядів комою. Наприклад, якщо для запису коду виділений один байт, то для позитивного двійкового числа 1101 прямий код відповідає запису 0,0001101, а для негативного двійкового числа –1101 прямий код 1,0001101.
Операція віднімання процесором комп'ютера замінюється операцією складання зменшуваного числа з додатковим кодом від'ємника. Для отримання додаткової k-розрядного коду негативного числа необхідно:
-
модуль числа представити прямим кодом в k двійкових розрядах;
-
інвертувати значення всіх біт і таким чином отримати зворотний код початкового числа;
-
до отриманого зворотного коду додати одиницю в молодший розряд і тим самим отримати додатковий код початкового числа.
Зворотний і додатковий код позитивного числа збігається з прямим кодом. Додатковий код чисел в 8-розрядному знаковому уявленні буде наступним:
Початкове число |
+13 |
–13 |
Прямий код |
0,0001101 |
1,0001101 |
Прямий код модуля числа |
0,0001101 |
0,0001101 |
Зворотний код |
0,0001101 |
1,1110010 |
Додатковий код |
0,0001101 |
1,1110011 |
Комп'ютерна операція складання цілих чисел виконується через елементарні операції, які реалізовані апаратно, такі як аналіз парності числа, збільшення одиниці, множення і ділення на 2.
Число є парним, якщо молодший розряд дорівнює нулю і непарним – інакше, що справедливо і для запису числа в додатковому коді. Множення двійкового числа на 2 відповідає зміщенню його вліво на один розряд, а цілочисельне ділення на 2 – зміщенню управо.