- •Лабораторна робота 1 Арифметичні основи комп'ютерів
- •Лабораторна робота №2 Основи алгебри логіки Теоретичні відомості
- •Лабораторна робота №3 Синтез схем
- •Лабораторна робота № 4 алгоритми лінійної структури,
- •Теоретична частина
- •Завдання до лабораторної роботи
- •Лабораторна робота № 5
- •Блок-схема
- •Лабораторна робота № 6
- •Лабораторна робота №7 Робота з вказівниками
- •1.Теоретична частина
- •Лабораторна робота №8
- •Теоретичні відомості
- •Завдання до лабораторної роботи
- •Лабораторна робота №9 основні поняття об’єктно-орієнтованого програмування
- •1.Теоретична частина
- •2. Завдання до лабораторної роботи
Лабораторна робота 1 Арифметичні основи комп'ютерів
Теоретичні відомості
Система числення — це сукупність прийомів і правил, згідно яких числа записуються і читаються.
Існують позиційні і непозиційні системи числення.
У непозиційних системах числення вага цифри (тобто той внесок, що вона вносить у значення числа) не залежить від її позиції в записі числа. Так, у римській системі числення в числі ХХХІІ (тридцять дві) вага цифри Х в будь-якої позиції дорівнює просто десяти.
У позиційних системах числення вага кожної цифри змінюється в залежності від її положення (позиції) у послідовності цифр, що зображують число. Наприклад, у числі 757,7 перша сімка означає 7 сотень, друга — 7 одиниць, а третя — 7 десятих часток одиниці.
Сам же запис числа 757,7 означає скорочений запис виразу
700 + 50 + 7 + 0,7 = 7 . 102 + 5 . 101 + 7 . 100 + 7 . 10—1 = 757,7.
Будь-яка позиційна система числення характеризується своєю основою.
Основа позиційної системи числення — кількість різних цифр, використовуваних для зображення чисел у даній системі числення.
За основу системи можна прийняти будь-яке натуральне число — два, три, чотири і інші. Отже, можлива незліченна множина позиційних систем: двійкова, трійкова і так далі. Запис чисел у кожній із систем числення з основою q означає скорочений запис виразу
an-1 qn-1 + an-2 qn-2 + ... + a1 q1 + a0 q0 + a-1 q-1 + ... + a-m q-m,
де ai — цифри системи числення; n і m — число цілих і дробових розрядів, відповідно.
У кожній системі числення цифри упорядковані відповідно до їх значень: 1 більше 0, 2 більше 1 і т.д.
Просуванням цифри називають заміну її наступною за величиною.
Просунути цифру 1 значить замінити її на 2, просунути цифру 2 значить замінити її на 3 і так далі. Просування старшої цифри (наприклад, цифри 9 у десятковій системі) означає заміну її на 0. У двійковій системі, що використовує тільки дві цифри — 0 і 1, просування 0 означає заміну його на 1, а просування 1 — заміну її на 0.
Цілі числа в будь-якій системі числення породжуються за наступним правилом :
для утворення цілого числа, наступного за будь-яким даним цілим числом, потрібно просунути саму праву цифру числа; якщо яка-небудь цифра після просування стала нулем, то потрібно просунути цифру, що стоїть ліворуч від неї.
Застосовуючи це правило, запишемо перші десять цілих чисел
у двійковій системі: 0, 1, 10, 11, 100, 101, 110, 111, 1000, 1001;
у трійковій системі: 0, 1, 2, 10, 11, 12, 20, 21, 22, 100;
у вісімковій системі: 0, 1, 2, 3, 4, 5, 6, 7, 10, 11.
У комп’ютерах, крім десяткової системи, широко використовуються системи з основою, що є цілим ступенем числа 2, а саме:
двійкова (використовуються цифри 0, 1);
вісімкова (використовуються цифри 0, 1, ..., 7);
шістнадцяткова (для перших цілих чисел від нуля до дев'яти використовуються цифри 0, 1, ..., 9, а для наступних чисел — від десяти до п'ятнадцяти — як цифри використовуються символи A, B, C, D, E, F).
Корисно запам'ятати запис у цих системах числення перших двох десятків цілих чисел:
10-а 2-а 8-а 16-я
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10
17 10001 21 11
18 10010 22 12
19 10011 23 13
З усіх систем числення особливо проста і тому цікава для технічної реалізації в комп'ютерах двійкова система числення.
Комп'ютери використовують двійкову систему тому, що вона має ряд переваг перед іншими системами:
для її реалізації потрібні технічні пристрої з двома стійкими станами (є струм — немає струму, намагнічений — не намагнічений і), а не, наприклад, з десятьма, — як у десятковій;
представлення інформації за допомогою тільки двох станів є надійним і завадостійким;
можливе застосування апарата булевої алгебри для виконання логічних перетворень інформації;
двійкова арифметика набагато простіше десяткової.
Недолік двійкової системи — швидкий ріст числа розрядів, необхідних для запису чисел
Переведення чисел з десяткової системи в двійкову і навпаки виконує машина. Однак, щоб професійно використовувати комп'ютер, варто навчитися розуміти слово машини. Для цього і розроблені вісімкова і шістнадцяткова системи
Щоб перевести число з двійкової системи у вісімкову або шістнадцяткову, його потрібно розбити вліво і вправо від коми на тріади (для вісімкової) або тетради (для шістнадцяткової) і кожну таку групу замінити відповідною вісімковою (шістнадцятковою) цифрою.
Для переводу цілого десяткового числа N у систему числення з основою q необхідно N розділити з залишком ("націло") на q , записане в тій же десятковій системі. Потім неповну частку, отриману від такого ділення, потрібно знову розділити з залишком на q , до тих пір, поки остання отримана неповна частка не стане рівною нулеві. Представленням числа N у новій системі числення буде послідовність залишків ділення, зображених однією q-ою цифрою і записаних у порядку, зворотному порядку їх одержання.
Для переводу правильного десяткового дробу F у систему числення з основою q необхідно F помножити на q , записане в тій же десятковій системі, потім дробову частину отриманого добутку знову помножити на q, і до тих пір, поки дробова частина чергового добутку не стане рівною нулеві, або не буде досягнута необхідна точність представлення числа F у q-ій системі. Представленням дробової частини числа F у новій системі числення буде послідовність цілих частин отриманих добутків, записаних у порядку їхнього одержання і зображених однією q-ою цифрою. Якщо необхідна точність переводу числа F складає k знаків після коми, то гранична абсолютна похибка при цьому дорівнює q -(k+1) / 2.
Для чисел, що мають як цілу, так і дробову частини, переведення з десяткової системи числення в іншу здійснюється окремо для цілої і дробової частин за правилами, зазначеним вище.
Переведення у десяткову систему числа x, записаного в q-ій cистемі числення (q = 2, 8 або 16) у виді xq = (anan-1 ... a0 , a-1 a-2 ... a-m)q зводиться до обчислення значення багаточлена
x10 = an qn + an-1 qn-1 + ... + a0 q0 + a-1 q -1+ a-2 q-2 + ... + a-m q-m
засобами десяткової арифметики.
Розглянемо тільки ті системи числення, що застосовуються в комп'ютерах — десяткову, двійкову, вісімкову і шістнадцяткову. Для визначеності візьмемо довільне десяткове число, наприклад 46, і для нього виконаємо всі можливі послідовні переведення з однієї системи числення в іншу.
Зведена таблиця переведень цілих чисел
Таблиця1.
Розглянемо основні арифметичні операції: додавання, віднімання, множення і ділення. Правила виконання цих операцій у десятковій системі добре відомі — це додавання, віднімання, множення стовпчиком і ділення кутом. Ці правила застосовуються і до всіх інших позиційних систем числення. Тільки таблицями додавання і множення треба користуватися особливими для кожної системи.
Додавання
Додавання в двійковій системі
Додавання у вісімковій системі
Додавання в шістнадцятковій системі
При додаванні цифри сумуються по розрядах, і якщо при цьому виникає надлишок, то він переноситься вліво.
Приклад 1. Додати числа 15 і 6 у різних системах числення.
Відповідь: 15+6 = 2110 = 101012 = 258 = 1516.
Перевірка. Перетворимо отримані суми до десяткового виду:
101012 = 24 + 22 + 20 = 16+4+1=21,
258 = 2·81 + 5·80 = 16 + 5 = 21,
1516 = 1 · 161 + 5·160 = 16+5 = 21.
Приклад 2. Додати числа 15, 7 і 3.
Відповідь: 15+7+3 = 2510 = 110012 = 318 = 1916.
Перевірка:
110012 = 24 + 23 + 20 = 16+8+1=25,
318 = 3 · 81 + 1 ·80 = 24 + 1 = 25,
1916 = 1 · 161 + 9 ·160 = 16+9 = 25.
Приклад 4. Віднімемо одиницю з чисел 102, 108 і 1016
Приклад 5. Віднімемо одиницю з чисел 1002, 1008 і 10016.
Приклад 6. Віднімемо число 59,75 з числа 201,25.
Відповідь: 201,2510 - 59,7510 = 141,510 = 10001101,12 = 215,48 = 8D,816.
Перевірка. Перетворимо отримані різниці до десяткового виду:
10001101,12 = 27 + 23 + 22 + 20 + 2-1 = 141,5;
215,48 = 2 . 82 + 1 . 81 + 5 . 80 + 4 . 8-1 = 141,5;
8D,816 = 8 . 161 + D . 160 + 8 . 16-1 = 141,5.
Виконуючи множення багатозначних чисел у різних позиційних системах числення, можна використовувати звичайний алгоритм перемножування чисел у стовпчик, але при цьому результати множення і додавання однозначних чисел необхідно запозичати з відповідній розглянутій системі таблиць множення і додавання.
Множення в двійковій системі
Множення у вісімковій системі
Через надзвичайну простоту таблиці множення в двійковій системі, множення зводиться лише до зсувів множеного і додаванням.
Приклад 7. Перемножимо числа 5 і 6.
Відповідь: 5·6 = 3010 = 111102 = 368.
Приклад 8. Перемножимо числа 115 і 51.
Відповідь: 115 · 51 = 586510 = 10110111010012 = 133518.
Ділення у будь-якій позиційній системі числення виконується за тими ж правилами, як і ділення кутом у десятковій системі.
Приклад 9. Розділимо число 30 на число 6.
Відповідь: 30:6 = 510 = 1012 = 58.
Приклад 11. Розділимо число 35 на число 14.
Відповідь: 35:14 = 2,510 = 10,12 = 2,48.
Завдання до лабораторної роботи
1. Перевести в десяткову систему
а) 10110112; |
е) 5178; |
л) 1F16; |
б) 101101112; |
ж) 10108; |
м) ABC16; |
в) 0111000012; |
з) 12348; |
н) 101016; |
г) 0,10001102; |
и) 0,348; |
о) 0,А416; |
д) 110100,112; |
к) 123,418; |
п) 1DE,C816. |
2. Перевести з десяткової системи в двійкову, вісімкову і шістнадцяткову системи числення
а) 123; |
е) 21.16; |
б) 232; |
ж) 56,98; |
в) 87; |
з) 34,74; |
г) 46; |
и) 4,34; |
д) 138; |
к) 123,41; |
3. Перевести з двійкової систему у вісімкову і шістнадцяткову
а) 1001111110111,01112; |
г) 1011110011100,112; |
ж)1011100110111,01112; |
б) 1110101011,10111012; |
д) 10111,11111011112; |
з)10100,11111002; |
в) 10111001,1011001112; |
е) 1100010101,110012. |
и)1101010101,100012 |
4. Додати числа у відповідних системах числення і виконати перевірку результату у десятковій системі
а) 10111012і11101112; |
д) 378і758; |
и) A16іF16; |
б) 1011,1012і101,0112; |
е) 1658і378; |
к) 1916іC16; |
в) 10112, 112і111,12; |
ж) 7,58і14,68; |
л) A,B16іE,F16; |
г) 10112, 11,12і1112; |
з) 68, 178і78; |
м) E16, 916іF16. |
5. Виконати віднімання
а) 1112з 101002; |
д) 158з 208; |
и) 1А16з 3116; |
б) 10,112з 100,12; |
е) 478з 1028; |
к) F9E16з 2А3016; |
в) 111,12з 100102; |
ж) 56,78з 1018; |
л) D,116з B,9216; |
г) 100012з 1110,112; |
з) 16,548з 30,018; |
м) ABC16з 567816. |
6. Виконати множення
а) 1011012и 1012; |
д) 378и 48; |
б) 1111012и 11,012; |
е) 168и 78; |
в) 1011,112и 101,12; |
ж) 7,58и 1,68; |
г) 1012и 1111,0012; |
з) 6,258и 7,128. |
Варіанти
№ |
З.1 |
З.2 |
З.3 |
З.4 |
З.5 |
З.6 |
1 |
а,е,л |
А,е |
А,г,ж |
Г,ж,л |
А,з,и |
Б,е |
2 |
Г,з,м |
Б.ж |
Б,д,з |
В,е,з |
Б,е,к |
В,ж |
3 |
В,з,н |
В,з |
В,е,и |
В,д,и |
Б,д,и |
Г,з |
4 |
Д,о,п |
Г,и |
А,е,з |
а,е,л |
А,д,к |
А,д |
5 |
В,и,о |
Д,к |
Б,в,ж |
Б,е,к |
а,д,м |
Б,з |
6 |
Д,к,л |
А,ж |
Б,д,и |
Б,ж,м |
Г,з,м |
А,ж |
7 |
Г,и,о |
Б,з |
Г,з,м |
В,ж,и |
В,ж,л |
Б,ж |
8 |
а,д,м |
Г,к |
А,д,м |
Г,з,м |
Г,е,л |
А,е |
9 |
Б,ж,л |
Д,е |
В,д,к |
А,з,и |
В,е,з |
Г,е |