Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Числа із рухомою комою




Не завжди діапазон представлення чисел у форматі з фіксованою комою є достатнім для проведення обчислень. В такому випадку використовується формат представлення чисел із рухомою комою.

У загальному випадку в форматі з рухомою комою число подається у вигляді А = ± m• q±р, де m - мантиса числа, q - основа порядку, ± р - порядок числа. Попередній вираз мож­на записати як А = ± mA · ± рA, де упущено основу порядку, оскільки в комп’ютерах вона не­змінна. В більшості випадків основа порядку дорівнює основі системи числення, тобто 2.

Для однозначного і максимально точного відображення чисел число з рухомою ко­мою представляють у нормалізованому вигляді. Якщо виконується нерівність дo q- 1 < = |m| <1, а у випадку двійкової системи числення 0.5 < = m<1 (старший двійковий розряд мантиси дорівнює 1), то вважається, що число представлене в нормалізованому вигляді.

Таким чином, у двійкового нормалізованого числа у форматі з рухомою комою ман­тиса є правильним дробом і у старшому розряді мантиси завжди стоїть 1. Операцію приведення числа до нормалізованого вигляду називають нормалізацією. Нормалізація чисел у комп’ютері виконується або апаратно, або ж спеціальною програмою.

Для представлення двійкового числа у форматі з рухомою комою у розрядній сітці, наданій для цієї мети, виділяється:

- по одному розряду для представлення знаку числа Sm (поле знаку числа) і знаку порядку Sр;

- певне число розрядів для представлення значення порядку р;

- розряди для представлення значення модуля мантиси m (поле мантиси). Наприклад, можливий такий варіант, коли формат числа складається з чотирьох по­лів (рис. 2.5) тобто, [А] = SpрАSmmА.

 
 

 

 


Рис. 2.5. Число з рухомою комою

 

Зазвичай у форматі з рухомою комою замість порядку р використовують так звану характеристику ("зміщений порядок") r = ± р + І, де 1 - надлишок (зсув), значення якого підбирається таким чином, щоб у разі зміни значення показника від деякого мінімально­го значення — |рmin| до максимального +|рmax|і характеристика r змінювалася від 1 до rmax. Отже, характеристика не змінює свого знаку. У цьому випадку відпадає необхідність у відображенні знаку порядку Для цього приймається, що 1 = 2k-1, де k - число розрядів, виділених для представлення порядку числа у форматі з рухомою комою.

Тоді формат числа з рухомою комою можна подати так, як показано на рис. 2.6 (з ви­користанням трьох полів), тобто, [А] = SmрАmA.

 
 

 

 


Рис. 2.6. Число з рухомою комою із зміщеним порядком

Одиниця старшого розряду нормалізованої мантиси зазвичай не відображається у форматі числа, тобто є уявною. Розряд слова, в якому повинна була бути відображена ця одиниця, використовується як молодший розряд характеристики, або старший розряд мантиси, що дозволяє збільшити діапазон представлення чисел у форматі з рухомою комою, або точність обчислень.

Таким чином, мантиса в такому варіанті відображається, починаючи з розряду, що йде після старшого. Це слід враховувати під час виконання будь-якої операції з ман­тисою числа, і перед початком операцій відновлювати старший розряд мантиси. Після завершення операцій формування нормалізованого результату у відведеній для нього розрядній сітці, старша одиниця мантиси знову відкидається. Порядок із к-розрядним полем може змінюватися в межах від -2k-1 + 1 до + 2k-1 - 1 (табл. 2.5, k = 3).

 

Показник порядку Прямий код показника Характеристика (показник + 4) Примітки
+3     3+4=7
+2     2 + 4 = 6
+ 1     1+4 = 5
      0 + 4 = 4
-1 . 101   -1 + 4 = 3
-2     -2 + 4 = 2
-3     -3 + 4=1
      Ознаку нуля

 

Як зазначалося, характеристика r - це порядок р з надлишком 1 = 2k-1. Вона не змінює свого знаку і змінюється від 1 (при р = -2k-1) до 2k-1 (при р = +2k-1 - 1). Винятком є число 0, яке виражається нульовою характеристикою і нульовою мантисою (не обов’язково).

Основною перевагою представлення чисел у форматі з рухомою комою є великий діапазон машинних чисел і висока точність їхнього подання. Діапазон визначається до­вжиною розрядної сітки, виділеної для характеристики, а точність визначається довжи­ною розрядної сітки, виділеної для мантиси.

Особливості виконання операцій над числами з рухомою комою: - збільшення мантиси у 2 рази здійснюється зсувом двійкового значення мантиси ліворуч (у бік старших розрядів);

- зменшення мантиси у 2 рази здійснюється зсувом двійкового значення мантиси праворуч (у бік молодших розрядів);

- величина числа не зміниться, якщо збільшити мантису в 2 рази і одночасно змен­шити порядок на 1;

- величина числа не зміниться, якщо зменшити мантису в 2 рази і одночасно збіль­шити порядок на 1.

Тобто формат з рухомою комою має недолік, який полягає у відсутності унікального представлення для кожного числа. Усі числа, що наводяться на рис. 2.7, є еквівалентни­ми. Слід зауважити, що цього недоліку не мають нормалізовані числа.

   
 
 
 
 
 
 
 

 


Рис. 2.7. Еквівалентні двійкові числа в форматі з рухомою комою

Під час арифметичних операцій над числами з рухомою комою виконуються дії як над порядком, так і над мантисою.

У деяких моделях комп’ютерів одержало поширення відображення чисел із рухомою комою з основою порядку, рівною цілому ступеню числа 2 (s =2r). При цьому порядок р відображається двійковим цілим числом, а мантиса т - числом, в якому групи по r двій­кових розрядів зображають цифри мантиси з основою системи числення s.

Прикладами вживаних основ порядку є числа 8 та 16.

Використання для чисел з рухомою комою недвійкової основи порядку дещо змен­шує точність обчислень (при заданому числі розрядів мантиси), але дозволяє збільшити діапазон чисел, що представляються в машині, і прискорити виконання деяких опера­цій, зокрема нормалізації, за рахунок того, що зсув проводиться відразу на кілька двій­кових розрядів. Крім того, зменшується вірогідність появи ненормалізованих чисел в ході обчислень.

Наприклад, у разі використання шістнадцяткових чисел з рухомою комою число X вважається нормалізованим, якщо старша шістнадцяткова цифра Xi відмінна від 0. Тоб­то у нормалізованому числі три старші двійкові цифри можуть дорівнювати 0. Це дещо зменшує точність представлення чисел при фіксованому числі розрядів мантиси. Якщо r старших шістнадцяткових розрядів мантиси рівні 0, то нормалізація в цьому випадку полягає в зсуві вліво мантиси на r шістнадцяткових розрядів і відповідному зменшенні показника порядку на r одиниць. Зсув на один шістнадцятковий розряд виконується як зсув мантиси відразу на чотири двійкові розряди.

Розглянемо кілька прикладів.

Припустимо, що потрібно подати у форматі з рухомою комою число 17.

Для десят­кової системи 17 = 17.0 х 10° = 1.7 х 101 = 0.17 х 102. Аналогічно в двійковій системі 17І0 = 100012х2° = 1000.1,х21 = 100.01,х22= 10.001,х23= 1.00012х24 = 0.100012х25. Якщо вико­ристати останній запис, то 8-розрядна мантиса числа буде рівною 10001000, а 5-розряд- ний порядок буде рівним 00101. Тоді число 17 в форматі з рухомою комою в двійковій системі має вигляд, показаний на рис. 2.8 а. Використовуючи формат з рухомою комою можна представляти числа в значно ширшому діапазоні, ніж використовуючи формат з фіксованою комою, при тих самих 14 розрядах. Так, на рис. 2.8 Ь) показано число 65536 = 0.1 х 217 у форматі з рухомою комою, для представлення якого у форматі з фіксованою комою потрібно було б 16 розрядів.

 

  0 0 10 1 1 0 0 0 1 0 0 0
 
  1 0 0 0 1 1 0 0 0 0 0 0 0

Рис. 2.8. Числа 17 а) та 65536 b) в двійковому форматі з рухомою комою

Як вже зазначалося, ідея зміщення порядку полягає в перетворенні його значень лише в додатні числа. Зміщення здійснюється шляхом додавання до кожного значення порядку фіксованого числа, рівного середньому значенню величини діапазону можли­вих чисел, яке вибирається для представлення нуля. В приведених вище прикладах як зміщення потрібно взяти число 16, тому що воно є середнім між 0 і 31 (порядок має 5 бітів, тому дозволяє представити 25 = 32 значень). Будь-яке число, більше ніж 16, в полі порядку буде представляти додатне значення, а менше - від’ємне. Зауважимо іще раз, що значення порядку з усіма нулями та одиницями зазвичай резервується для спеціальних випадків (таких як нуль та нескінченість).

Повернемося до попереднього прикладу. Ми обчислили 17 = 0.10001, х 25. Зміщення порядку рівне 16 + 5 = 21, і число має вигляд, показаний на рис. 2.9 а. Аналогічно для

 
 


a)

 
 


b)

 

Рис. 2.9. Числа 17 а) та 0.25 b) в двійковому форматі з рухомою комою із зміщеним порядком

Розглянемо іще один приклад числа з рухомою комою, в даному випадку нормалі­зованого. Виразимо 0.0312510 в форматі з рухомою комою із зміщенням порядку на 16. Тоді 0.0312510 = 0.000012 х 2° = 0.0001 х 2 -1 = 0.001 х 2 -2 = 0.01 х 2 -3 = 0.1 х 2 -4. Додавши до порядку зміщення отримаємо 16 - 4 = 12. Повний вигляд числа показано на рис. 2.10.

 
 


Рис. 2.10. Число 0.03125 в нормалізованому двійковому форматі з рухомою комою із зміщеним порядком

На рис. 2.11 наведено два приклади використовуваного в комп’ютерах формату пред­ставлення чисел з рухомою комою. Зверху наведено формат, який був використаний в комп’ютерах CDC 6600, CDC 7000, та CYBER 170 фірми СКС, а знизу - формат, який був використаний в комп’ютерах системи ІВМ/370 фірми IBM, причому тут основою поряд­ку є число 16, тому мантиса вважається нормалізованою, якщо є хоча б одна одиниця в перших її чотирьох розрядах.

Мантиса в оберненому коді (М)
Порядок, зсунутий на 1023(Е)
Знак мантиси (S)
0 1 11 12 59

 

 

 
 


11 бітів 48 бітів

0 1 7 8 31

 

Знак мантиси (S)
Мантиса в оберненому коді (М)
Порядок, зсунутий на 63 (Е)
7 бітів 24 біти

Рис. 2.11. Формат з рухомою комою комп’ютерів фірм СDС та ІВМ

Існує велика кількість задач, коли обробці підлягають масиви чисел, які змінюються в вузькому діапазоні значень. В цьому випадку з метою більш ефективного використання розрядної сітки для представлення чисел використовують так звану поблоково-рухому кому, коли для всього масиву чисел є лише один порядок. В спеціалізованих комп’ютерах це дозволяє суттєво зменшити витрати обладнання на побудову арифметико-логічного пристрою.

При потребі іще більшого розширення діапазону представлення даних використо­вується так званий формат з рухомою-рухомою комою. Тут використовується два поля порядку, як це показано на рис. 2.12.

 


Рис. 2.12. Формат з рухомою-рухомою комою

Тут значення числа визначається з виразу А = 2е, де е = Р 2Р2.

 




Поделиться с друзьями:


Дата добавления: 2014-11-06; Просмотров: 5466; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.03 сек.