Інформація зберігання дійсних чисел в пам'яті ЕОМ - студопедія
При записи дробових чисел звертають увагу на точність їх подання, тобто на кількість значаться цифр.
Існують два типи подання дійсних чисел:
1. З плаваючою комою, крапкою - нормальний запис:
Заснований на нормальної (експоненційної) записи чисел. Число представляється у вигляді:
x = ± m # 8729; n p. де m - мантиса, р - порядок, n - підстава.
Подання числа в форматі з плаваючою точкою різному.
Приклад: 12.3456 = 0,123456 * 10 2 = 1234,56 * 10 -2.
Положення точки в мантисі визначається величиною порядку p зі зміною порядку в більшу або меншу сторону точка переміщається вправо або вліво, тобто "Плаває" в зображенні числа.
Нормалізація при введенні числа і в процесі обчислень здійснюється автоматично. При цьому мантиса зсувається вліво на необхідне число розрядів. Відбувається відповідно збільшення порядку. При додаванні нормального числа одного порядку, може виникнути переповнення розрядної сітки (з'являється 1 зліва від коми). Такого роду переповнення виключається зрушенням мантиси вправо на 1 розряд і збільшення порядку на 1 одиницю. Така корекція називається нормалізація вправо.
Мантиса повинна задовольняти умові: 0.1n ≤ m <1, т.е. быть меньше 1 и первая значащая цифра не равна нулю. В памяти компьютера мантисса хранится как целое число, содержащее только значащие цифры. Таким образом, представление вещественного числа сводится к представлению пары целых чисел: мантиссы и порядка.
Приклад. 4 байтовая осередок пам'яті - 24 розряду під мантиссу.
У 1-му байті міститься машинний порядок, в старшому бите зберігається знак числа. На порядок відводиться 7 біт (2 7 = 128). 128 значень може приймати діапазон значень порядку. Порядок може бути позитивним або негативним (-64 ... + 63).
У машинному поданні порядок зміщений відносно математичного і має тільки позитивні значення. Зсув формується так, щоб мінімального математичного значенням порядку відповідав нуль (0) .Связь між машинним і математичним порядком: МР = p + 6410.
Для запису внутрішнього уявлення дійсного числа треба:
1. Перевести модуль даного числа в двійкову систему числення з 24-ма значущими цифрами.
2. Нормалізувати двійковечисло.
3. Знайти машинний порядок.
4. З огляду на знак числа записати його подання до 4-х байтовому машинному слові.
Приклад. 250.187510 - записати внутрішнє уявлення в 4-х байтовой осередку.
1. Переклад в двійкову систему з 24 значущими цифрами 250,187510 = 11111010, +0011000000000000002 (кількість цифр до коми = 810 = 10002).
Запишемо в формі нормалізованого двійкового числа з плаваючою точкою 0,1111 1010 0011 0000 0000 0000 * 10 1000 2.
Тут мантиса, підстава системи числення (210 = 102) і порядок (810 = 10002) записані в двійковій системі.
Обчислимо машинний порядок: М = 10002 +100 00002 = 100 10002
Запишемо в 4-х байтовой осередки з урахуванням знака:
2. З фіксованою комою, крапкою - природна запис:
Всі розряди осередку крім знакового служать для зображення розрядів чисел, кожному розряду осередку відповідає один і той же розряд числа, що і фіксує місце коми перед певним розрядом. Така система спрощує виконання арифметичних дій, але сильно обмежує діапазон чисел, які можуть бути представлені в цьому типі. Діапазон - 1 При роботі з числами треба пам'ятати: 1. При запису чисел виникають помилки, які зростають при операціях. 2. Не розумно порівнювати 2 дійсних числа на точне рівність. 3. В результаті віднімання можлива втрата точності. 4. «+» або «-» малого числа може ніяк не позначитися на результаті. 5. Отримання дуже великих чисел може викликати переповнення порядку, а дуже малі - зникнення числа. Діапазон значень дійсних чисел ширше, ніж у цілих. Найменша за абсолютною величиною число дорівнює 0, а найбільше по модулю, це число з найбільшою мантиссой і з самими великим порядком. Безліч дійсних чисел в форматі з плаваючою точкою є обмеженим і дискретним. Кількість дійсних чисел, точно подаються в пам'яті обчислюється за формулою N = 2 t * (Mp max = Pmin + 1) +1, де T - кількість двійкових розрядів мантиси Mp max - максимальне значення математичного порядку. Pmin - мінімальне значення математичного порядку. Приклад. для 4-х байтовой осередки Mp max = 63, t = 24, Pmin = -64, Точність числа - кількість значущих цифр, яке вдається зберегти в обмеженому числі розрядів. Речові типи даних в Pascal:Схожі статті