logo
Лабораторна 4_1_семестр

3.5. Бінарні формати стандарту іеее Std 754-2008.

Бінарні формати нового стандарту такі ж, як і в старому стандарті, за винятком деяких нових. Основними, базовими форматами є одинарний (Single, 32 біти), подвійний (Double, 64 біти) та четверний (Quadruple, 128 бітів). Будь-який бінарний формат складається з уже відомих нам трьох полів:

Рисунок 4.2. Загальний формат бінарних чисел з плаваючою комою.

Окрім базових форматів стандарт ІЕЕЕ754-2008 добавляє іще формат половинної точності (Half, 16 бітів) та сімейство множинних форматів, загальна довжина яких W = 32∙k, де k - будь-яке натуральне число > 4. Таким чином можливі такі довжини форматів: 32∙5 = 160 бітів, 32∙6 = 192 біти, 32∙7 = 224 біти, 32∙8 = 256 бітів тощо. Однак формату 32∙3 = 96 бітів не існує. В табл. 4.1. приведено можливі формати бінарних чисел з плаваючою комою.

Параметр

Бінарний 16 бітів

Бінарний 32 біти

Бінарний 64 біти

Бінарний 128 бітів

Бінарний W бітів (W > 128)

W, загальна довжина формату

16

32

64

128

W кратне 32 бітам

m, довжина експоненти

5

8

11

15

round(4×log2(W))-13

n, довжина залишку мантиси

10

23

52

112

W - m - 1

точність представлення в десяткових розрядах

≈ 3

≈ 7

≈ 16

≈ 34

≈ round((n+1)×lg2))

emax, максимальна експонента та зміщення bias

15

127

1023

16383

2(W-n-2)-1

максимальне число Аmax

≈ 104

≈ 1038

≈ ±10308

≈±104932

≈ 10round((emax+1)×lg2)

Функція round округляє аргумент до найближчого цілого числа.

Таблиця 4.1. Параметри бінарних форматів ІЕЕЕ754-2008-чисел.

Принципи представлення нуля, нескінченності, субнормальних чисел, не-чисел (NaN) залишаються ті ж, що і для стандарту 1985 р.:

а) Якщо Е = 2m -1 (тобто всі біти експоненти рівні 1) і M' ≠ 0, то маємо випадок не-чисел (NaN). Однак, на відміну від стандарту 1985 р., розрізняють qNaN (якщо перший біт залишку мантиси рівний 1, а решта - будь-який набір бітів) та sNaN (якщо перший біт залишку мантиси рівний 0, а решта - будь-який ненульовий набір бітів).

б) Якщо Е = 2m -1 (тобто всі біти експоненти рівні 1) і M' = 0, то маємо випадок ± ∞ (нескінченність, знак якої визначається першим бітом представлення s).

с) Якщо 1 ≤ Е ≤ 2m -2, тоді маємо числа з плаваючою комою A = (-1)s × (1 + M' × 2-n) × 2E-bias.

д) Якщо Е = 0 і M' ≠ 0, тоді маємо випадок субнормальних чисел A = (-1)s × (0 + M' × 2-n) × 2-bias.

е) Якщо Е = 0 і M' = 0, то такий набір бітів представляє ± 0 в залежності від величини першого біту представлення s.

Крім описаних вище форматів передбачається також ряд додаткових розширених бінарних форматів, які за браком часу ми розглядати не будемо. Бажаючих поглиблено вивчити це питання відсилаємо до [5], розділ 3.7.

Таким чином стандарт ІЕЕЕ754-2008 описує широкий набір бінарних форматів. які можуть використовуватися для організації обчислень з різною точністю та діапазоном представлення чисел.