|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Числа в форме с плавающей точкойНедостатки проведения вычислений с числами с фиксированной точкой привели к необходимости использования чисел с плавающей точкой. В форме представления с плавающей точкой число изображается в виде двух групп цифр: мантисса, порядок. Абсолютная величина мантиссы должна быть меньше единицы, а порядок - целым числом. В общем виде число представляется как N = ± m * S p где, m –мантисса числа N (дробная часть), S – основание системы счисления, P – целое число (порядок числа, показывает положение точки в числе). Все числа с плавающей точкой хранятся в машине в так называемом нормализованном виде, при котором старший разряд мантиссы больше 0. Подобное представление чисел объясняется тем, что была выявлена следующая закономерность: если плавающая точка расположена перед первой значащей цифрой мантиссы, то при фиксированном количестве разрядов, отведенных под мантиссой, обеспечивается максимальная точность представления числа в машине, следовательно, мантисса должна быть правильной дробью. Дробь, у которой первая цифра после запятой отлична от нуля, называется правильной. Примеры записи чисел в нормализованном виде: -10.3510 = -0.103510 *10+2; 0.000072458 = 0.7245*8-4 ; FED4.6A16 = 0.FED46A16 *16+4. На рис. 2.6 приведена форма представления чисел с плавающей точкой, использовавшаяся в первых ВМ с данный форматом чисел.
Диапазон и точность представления чисел с плавающей точкой зависят от числа разрядов, отводимых под порядок и мантиссу, от основания используемой системы счисления. Для упрощения операций над порядками в большинстве ВМ применяют так называемый смещенный порядок или экспоненту. Для этого к истинному порядку добавляется целое положительное число – смещение. Обычно смещение выбирается равным половине представимого диапазона порядков. В настоящее время для всех ВМ рекомендуемым является формат представления чисел с плавающей точкой, определенный стандартом IEEE 754. Этот стандарт был разработан для обеспечения переносимости программ с одного процессора на другие, он применяется практически во всех процессорах и математических сопроцессорах. На рис. 2.7 приведены основные форматы IEEE 754 для одинарной и двойной точности. 0 1 8битов 8 9 23 бита 31
а) одинарный; 0 1 11 битов 11 12 52 бита 63
б) двойной
Знак мантиссы занимает 1 разряд, принимает значения 0 для плюса, 1 для минуса. Смещенный порядок (экспонента) занимает 8 (11) разрядов, знака не имеет. Минимальная экспонента 0, максимальная - 255 для одинарной точности и 2047 для удвоенной точности. Экспонента не используется для ненормализованных чисел. Значение экспоненты 1 соответствует -126 (-1024). Значение экспоненты равное 0 соответствует единичному значению старшего разряда экспоненты или 100000002 для одинарной точности и 100000000002 для удвоенной точности. Мантисса, значащая часть числа, занимает 24 для одинарной точности и 53 бита для двойной точности. В стандарте IEEE 754 под мантиссу отводится 23 (52) бита, но так как мантисса является нормализованной и ее первый разряд всегда должен быть равен 1, то при записи в память первый единичный разряд отбрасывается и под мантиссу отводится на 1 разряд меньше. На рис. 2.8 приводится пример записи числа -19310 =-110000012 в разрядную сетку ВМ для форматов с фиксированной и плавающей точкой. 110000012=0. 1 10000012* 28 - нормализованный вид числа -19310. Экспонента порядка 8 равна 1 00010002. Первая единица разряда поля порядок означает, что порядок положительный. Первая «1» мантиссы в памяти не хранится.
а) формат с фиксированной точкой
б) формат с плавающей точкой
Стандарт предусматривает два расширенных формата (одинарный и двойной), фактический вид которых зависит от конкретной реализации. Расширенные форматы предусматривают увеличение диапазона порядка и мантиссы. Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.005 сек.) |