Основы объектно-ориентированного программирования на языке C# book | Page 101
6.7 Зображення дiйсних чисел
ε 1 , визначену як найменше машинне число, результат додавання яко-
го до 1 буде машинним числом бiльше 1. Нагадаємо, що для дiйсних
типiв float , double кiлькостi бiтiв, що вiдводяться пiд характеристи-
ку, дорiвнюють 8, 11. При цьому зсув дорiвнює вiдповiдно 127 i 1023.
Мантиса має сховану одиницю. Цi данi нам знадобляться для подаль-
ших обчислень. Величина порядку p = 1...1 вiдведена пiд спецiальнi
(нечисловi) значення. Таким чином, найменшi за модулем додатне й
вiд’ємне числа мають вигляд (трикрапка зазначає, що подiбне зобра-
ження має мiсце для двох розглянутих дiйсних типiв)
0 0...01 0...0
1 0...01 0...0
Вiдповiдно, ε 0 для дiйсних типiв float , double дорiвнює 2 −126 , 2 −1022 .
Праворуч вiд ε 0 розташовується множина точок, що йдуть одна за
одною з кроком 2 p min −n де n – кiлькiсть бiтiв для зображення мантиси
конкретного дiйсного типу. Чим правiше числа, тим бiльше буде крок
мiж ними. Наприкiнцi дiапазону зображення вiдстань мiж двома су-
сiднiми точками досягає 2 p max −n . При цьому максимальнi за модулем
додатне й вiд’ємне числа мають вигляд
0 1...10 1...1
1 1...10 1...1
Вiдповiдно, ε ∞ дорiвнює 2 −128 , 2 −1024 .
Знайдемо значення ε 1 . Зображення числа 1 має вигляд
float
double
0
01111111
0...0
0 01111111111 0...0
а найближче до 1 зверху машинне число –
float
double
0
01111111
0...01
0 01111111111 0...01
Вiдповiдно, ε 1 дорiвнює 2 −24 , 2 −53 та 2 −64 .
Важливою характеристикою комп’ютера є спiввiдношення ε 0 , ε 1 , ε ∞ .
Означення 6.1. Характеристики точностi називаються збалан-
сованими, якщо виконуються нерiвностi ε 0 < ε 21 , ε ∞ > ε −2
1 . Якщо цi
умови не виконанi, то при реалiзацiı̈ обчислювальних задач необхi-
дно використовувати спецiальнi прийоми.
Описанi особливостi машинного зображення дiйсних чисел приво-
дять до того, що не для всiх його елементiв вiрнi такi спiввiдношення:
101