Інформація зберігання дійсних чисел в пам'яті ЕОМ - студопедія

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

Існують два типи подання дійсних чисел:

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:

Схожі статті