ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.12.2021
Просмотров: 6778
Скачиваний: 22
59
Результат: 30071.
2. Переведення
дробової частини числа у вісімкову
систему:
0,67x8
= 5,36;
0,36x8 = 2,88; 0,88 х 8 = 7,04; 0,04x8 = 0,32. Наближений результат: 0,5270... .
-
Отримання повного результату шляхом об'єднання результатів, отриманих в п. 1 та п. 2. Результат: 30071,5270... .
-
Переведення результату у двійкову та шістнадцяткову системи числення (табл. 2.2). Поділ двійкового числа на тріади та тетради починається від коми ліворуч і праворуч. Результат: 12345,6710=30071,52708=11000000111001,1010101112=3039,АВ816.
Таблиця 2.2
2.3. Переведення
чисел із системи числення з основою к
у
десяткову систему
Один із методів переведення чисел із системи числення з основою k у десяткову систему числення ґрунтується на використанні кількісного еквівалента числа. Для переведення необхідно записати число у його кількісному еквіваленті, замінивши цифри системи числення з основою k та основу k їхніми десятковими еквівалентами, а потім обчислити вираз за правилами десяткової арифметики.
Приклад 1. Переведемо двійкове число 1011,1001 у десяткову систему числення.
Таким чином, 1011,1001,= 11,5625...
Приклад 2. Переведемо вісімкове число 105,71 у десяткову систему числення.
Результат: 105,718 = 69,890625і0.
Приклад 3. Переведемо шістнадцяткове число 2KD,0A до десяткової системи числення.
Результат: 2ED,0A,6= 849,0390625,(..
2.4. Переведення
чисел із десяткової системи у
систему
числення з основою k
Розглянемо переведення чисел із десяткової системи числення у іншу однорідну позиційну систему числення з основою к, коли дії виконуються в десятковій системі. У разі цього переведення окремо виконується переведення цілої частини числа й окремо - дробової; результати потім додаються.
60
Цілу частину десяткового числа X10ділять на основу системи числення k за правилами десяткової арифметики до отримання залишку, який буде десятковим еквівалентом цифри молодшого розряду результату. Якщо частка від ділення не дорівнює 0, то вона стає діленим і процес ділення на k продовжується. Як тільки чергова частка стане рівною 0, процес ділення на k припиняється. Залишок, який отримали у результаті першого ділення на к, є цифрою розряду результату з вагою k0, залишок у результаті другого ділення - цифрою з вагою ki і т. д. Останній залишок є цифрою старшого розряду результату.
Дробова частина десяткового числа X10множиться на k за правилами десяткової арифметики. В отриманому добутку від'єднується ціла частина, яка може дорівнювати 0, а дробова частина знову множиться на k із наступним від'єднанням цілої частини. Ця операція повторюється або до отримання нульової дробової частини добутку, або до отримання необхідної кількості розрядів числа Xk. Цифра старшого розряду результату переведення (тобто, перша після коми) збігається з першою від'єднаною цілою частиною, цифра другого розряду результату переведення - із другою від'єднаною цілою частиною і т.д. При цьому від'єднані цілі частини необхідно представити в системі числення з основою к.
Приклад. Переведемо десяткове число 11,5625 у двійкову систему числення з точністю до п'яти розрядів після коми.
Переведення цілої частини:
11:2 = 5, залишок 1 (молодший розряд результату),
5:2 = 2, залишок 1,
2:2= 1, залишок 0,
1:2 = 0, залишок 1 (старший розряд результату).
Результат: 1110= 10112.
Процедура переведення дробової частини наведена у табл. 2.3.
|
|
|
|
Таблиця 2.3 |
|
Крок |
Дріб |
Результат множення на к = 2 |
Ціла частина результату множення, яка вилучається |
Вага двійкового розряду |
|
1 |
0.5625 |
1.125 |
1 |
Старший (перший після коми) |
|
2 |
0.125 |
0.25 |
0 |
|
|
3 |
0.25 |
0.5 |
0 |
|
|
4 |
0.5 |
1.0 |
1 |
Молодший |
|
5 |
0.0 |
0.0 |
0 |
|
|
Результат: 0.562510 =0,100102.
Повний результат: 11,562510 = 1011 + 0,10010 = 1011,100102.
2.5. Представлення чисел зі знаком
Для позначення знаку числа в звичайній арифметиці використовують символи «-» та «+». Як зазначалося, у комп'ютерній техніці використовують елементи з двома станами, які можуть зберігати двійкову цифру (0 чи 1). Зрозуміло, що цю цифру доцільно використати і для позначення знаку числа, коли 0 відображає знак «+», а 1 - знак «-».
67
Для спрощення виконання арифметичних операцій додатні та від'ємні числа (тобто числа зі знаком) відображаються спеціальними кодами: прямим, оберненим та доповняльним.
2.5.7. Прямий код
Прямий код двійкового n-розрядного числа G визначається як
У прямому коді лівий (його ще називають старшим) розряд позначає знак числа, а решта розрядів - саме число (рис. 2.1).
де А - величина, рівна вазі старшого разряду розрядної сітки (для дробових чисел А = 1, а для цілих чисел А = 2n). Діапазон представлення чисел в прямому коді 0 < \G\ < A. Додатні числа представляються кодами 0 < Gnp < А, а від'ємні 0 < Gnp < 2А
Ознакою представлення додатних або від'ємних чисел є наявність нуля або одиниці відповідно в старшому розряді, який називається знаковим. Цифрові розряди прямого коду представляють модуль числа, що забезпечує наочність представлення чисел в прямому коді
Наведемо кілька прикладів
510 =00101прямий код 510 =10101прямий код
2510 =011001прямий код -2510 =111001прямий код
2.5.2. Обернений код
В оберненому коді, як і у прямому, старший розряд позначає знак числа (0 - додатне число, а 1 - від'ємне). Розряди додатного числа записуються у звичайному вигляді, а від'ємного - в інвертованому вигляді (замість 0 пишеться 1 і навпаки). На рис. 2.2 показано обернений код двійкового числа.
62
Обернений код n-розпялного двійкового числа G визначається як
де В - величина найбільшого числа без знаку, яке може бути розміщене в п- розрядній сітці (для дробових чисел В = 2 - 2-(п-1), а для цілих чисел В = 2п-1). Діапазон зміни чисел в оберненому коді 0 < \G\ < А. Додатні числа представляються кодами в діапазоні 0 < Gnp < A, а від'ємні - в діапазоні А < GПР< 2А. За визначенням обернений код від'ємного числа є доповненням модуля вихідного числа до найбільшого числа без знаку, яке може бути розміщене в розрядній сітці. В зв'язку з цим отримання оберненого коду двійкового від'ємного числа зводиться до отримання інверсії n-розрядного коду модуля цього числа
Знову варто навести кілька прикладів
510 =00101обернений код -510 = 10101обернений код,
102510 =011001обернений код -2510= 111001обернений код
102.5.3. Доповняльний код
Доповняльний код будується на основі оберненого. Якщо число додатне, то не проводиться жодних дій, якщо від'ємне - після інвертування до молодшого розряду числа додається одиниця (рис. 2.3).
Доповняльний код n-розрядного дв-ійкового числа G визначається як
де С - величина, рівна вазі розряду, який іде за старшим розрядом використаної розрядної сітки (для дробових чисел С = 2, а для цілих чисел С = 2n+1). Діапазон зміни чисел у прямому коді 0 < \G < А. Цифровими розрядами доповняльного коду додатного числа виражається модуль цього числа. Як уже було зазначено, доповняльний код від'ємного числа зручно отримувати через обернений код шляхом додавання 1 до молодшого розряду оберненого коду
Розглянемо приклади
510 =00101допольняльний код - 510=11011допольняльний код
2510=011001допольняльний код -2510=100111допольняльний код
1210=01100допольняльний код -1210=10100допольняльний код
1Найчастіше серед розглянутих кодів в комп'ютерах використовується доповняльний код. Це зумовлено більшою зручністю проведення арифметичних операцій над числами, представленими в такому коді, оскільки при його застосуванні операція алгебраїчного додавання зводиться до додавання арифметичного.
63
2.6. Формати даних
2.6.1. Способи представлення чисел
Розряд двійкового числа представляється в комп'ютері деяким технічним пристроєм, наприклад тригером, двом різним станам якого приписують значення 0 та 1. Один двійковий розряд який може набувати ці два значення, є найменшою одиницею інформації, названої бітом. Набір відповідної кількості таких пристроїв слугує для представлення багаторозрядного двійкового числа (або в загальному випадку - двійкового коду слова). Розрядність слова може бути від 1 біта до довільної кількості п бітів. Слово із 8 бітів називають байтом. Як правило, коли йдеться про комп'ютерну техніку, всі виміри кількості розрядів наводяться в бітах або байтах Часто словом іще називають число із 32 бітів, а число із 16 бітів - півсловом.
Коли деяке число має 32 біти, то говорять, що воно представлене з одинарною точністю, якщо ж 64 біти - з подвійною точністю
Числові дані в комп'ютері зазвичай представляються трьома способами
-
як цілі або дробові числа з фіксованою комою, які складаються із деякої кількості бітів;
-
як числа з рухомою (ще деколи вживають "плаваючою") комою, кожне з яких має порядок та мантису
-
як двійково кодовані десяткові, де байт (чи півбайта) представляє одну десяткову цифру, а послідовність байтів (чи півбайтів) представляє число.
Якщо певне число більше за максимальне, яке може бути представлене певною кількістю розрядів, то значення числа може втрачатися. Таку ситуацію називають переповненням Розробники комп'ютера або програми повинні передбачити, числа якої величини будуть використовуватись, і виділити для 'їх представлення таку кількість розрядів, щоб значення числа не втрачалось
Сучасні персональні комп'ютери використовують слова розрядністю від одного до 16 байтів. Спеціалізовані комп'ютери можуть використовувати слова й іншої розряд-ності, наприклад 128 байтів
Для кодування символів використовуються спеціальні коди, серед яких найпоширеніший у персональних комп'ютерах - американський стандартний код інформаційного обміну ASCII, а в мейнфреймах - розширений двійково-кодований десятковий код обміну EBCDIC Зазвичай для представлення одного символа використовується один байт
2.6.2. Числа з фіксованою комою
У разі використання чисел із фіксованою комою, представлення коми не виконується, але вважається, що вона є на певній наперед відомій позиції відносно розрядів числа. Найчастіше вважається, що кома стоїть після молодшого розряду числа (таким чином представляються цілі числа) або перед старшим розрядом числа (таким чином представляються дробові числа), хоча можливе застосування і змішаного варіанту. У такому форматі представляються числа з діапазону - 1 < число < 1 (якщо є знаковий розряд) або 0 < число < 1 (якщо знакового розряду немає).