Формат с плавающей точкой (для вещественных чисел)

Система вещественных чисел в математических вычислениях предполагается непрерывной и бесконечной, т.е. не имеющей ограничений на диапазон и точность представления чисел. Однако в компьютерах числа хранятся в регистрах и ячейках памяти с ограниченным количеством разрядов. Вследствие этого система вещественных чисел, представимых в машине, является дискретной (прерывной) и конечной.

Формат чисел с плавающей точкой основывается на экспоненциальной форме записи чисел, в котором любое вещественное число X, представленное в системе счисления с основанием Q, можно записать в виде:

,где m -мантисса числа (правильная дробь, модуль которой меньше 1), n- порядок числа, Q – основание системы счисления.

 

Представление числа в форме с плавающей точкой неоднозначно. Например, справедливы следующие равенства:

25,32410=2,5324*101=0,25324*102=0,0025324*104=253,24*10-1=2532,4*10-2

В компьютере используется нормализованное представление числа с плавающей точкой. Мантисса должна удовлетворять условию: 0,1£ m £ 1, т.е. мантисса меньше единицы и первая значащая цифра – не ноль.

В памяти компьютера мантисса представляется как целое число, содержащее только значащие цифры (0 целых и запятая не хранятся). Следовательно, внутреннее представление вещественного числа сводится к представлению двух целых чисел: мантиссы и порядка.

В разных типах компьютерах применяются различные варианты представления чисел в форме с плавающей точкой.

Число в форме с плавающей точкой занимает в памяти четыре (число обычной точности) байта или восемь (число с двойной точностью) байта.

 
 

 

Из рисунка видно, что в старшем бите 1-го байта хранится знак числа – 0(плюс) или 1(минус). Оставшиеся 7 битов первого байта содержат машинный порядок. В следующих трех байтах хранятся значащие цифры мантиссы (24 разряда).

В семи разрядах машинного порядка помещаются двоичные числа в диапазоне от 000 00002 (010) до 111 11112 (12710). Таким образом, всего 128 значений. Так как порядок может быть положительным и отрицательным, то эти 128 значений разделим поровну между положительными и отрицательными значениями порядка: от -64 до 63 – математический порядок.

Машинный порядок смещен относительно математического и имеет только положительные значения. Смещение выбирается так, чтобы минимальному математическому значению порядка соответствовал нуль.

Связь между машинным порядком (Мр) и математическим порядком (р) в рассматриваемом случае выражается формулой:

Мр = р+6410

В двоичной системе формула имеет вид: Мр 2= р2+100 00002

 

Числа с плавающей запятой чаще всего имеют формат двойное или учетверенное слово.

 

Для записи внутреннего представления вещественного числа необходимо:

1. перевести модуль данного числа в двоичную систему счисления с 24-значащами цифрами;

2. нормализовать двоичное число;

3. найти машинный порядок в двоичной системе счисления;

4. учитывая знак числа, выписать его представление в 4-байтовом машинном слове.

 

 

Например. Записать внутреннее представление числа 250,1875 в форме с плавающей точкой.

1.Переведем его в двоичную систему счисления с 24 значащими цифрами:

1111 1010, 0011 0000 0000 00002.

2.Запишем в форме нормализованного двоичного числа с плавающей точкой:

0, 1111 1010 0011 0000 0000 0000 * 1010002. Здесь основание 210 = 102 и порядок 810 = 10002

3.Вычислим машинный порядок в двоичной системе счисления:

Мр = 1000+ 100 000 = 100 1000.

4.

 
 

Запишем представление числа в 4-х байтовой ячейке памяти с учетом знака:

Шестнадцатеричная форма: 48FA3000

 

 









Дата добавления: 2015-10-19; просмотров: 1240;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

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

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.005 сек.