КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Вещественные типы данных в языке Си
Вещественные типы всегда имеют знак. Для однозначной записи вещественных чисел используется нормализованная форма. Определение 3. Нормализованной формой ненулевого числа x называется запись x = M ×10 p, где M – мантисса, 0,1 £ ½ M ½ < 1, Нормализованная форма представления числа единственна. Для различных систем счисления нормализованные формы, естественно, различны. Пример. 50 = 0,5·102 = 0,110012 · 26. Стандартные вещественные типы представлены в табл. 4. Таблица 4 Вещественные типы данных
Определение 4. Машинным нулем для данного вещественного типа называется минимальное положительное число того же типа: m 0 = min { x: x > 0}. Определение 5. Машинным эпсилон для данного вещественного типа называется минимальное число того же типа, для которого 1 + x > 1: m e = min { x: 1 + x > 1}. Определение 6. Машинной бесконечностью для данного вещественного типа называется максимальное число того же типа: m ¥ = max { x }. По диапазону типа можно определить m 0, m ¥. Машинный эпсилон определяется размером мантиссы в десятичных знаках. Так, например, для типа float имеем m 0 = 3,4×10-38, m ¥ = 3,4×1038, m e» 10-8. Определение 7. “Правым соседом” числа x данного вещественного типа назовем минимальное число y того же типа, для которого x < y: “Правый сосед” х = min { y: x < y }. “Правый сосед” числа х больше самого х на величину, равную m e × 10порядок числа х . Приближенно можно считать, что “правый сосед” числа х» х + m e × x. Например, для типа float “правый сосед” числа 1010 » 1010 + 10-8 × 1010 = 1010 + 100. Таким образом, вещественные числа заданного типа расположены на числовой прямой неравномерно: чем больше числа, тем больше расстояние между соседними числами. Этот факт следует учитывать при организации циклов: шаг цикла должен быть больше, чем расстояние между соседними числами. Покажем, каким образом параметры типа из табл. 4 связаны между собой. Задача. Несуществующий вещественный тип doom занимает Решение. Порядок со знаком занимает 30 бит, поэтому минимальное двоичное значение порядка равно -229. Для перевода этого числа к десятичному основанию решим показательное уравнение х = 29 × lg 2» 29 × 0,3010 = 8,729. Таким образом, m 0 равен = » 0,5 × 10-161290865,49 » 1,54 × 10-161290865. Мантисса в двоичной системе счисления занимает 90 бит, из которых один бит определяет знак мантиссы. Первые знаки двоичной мантиссы равны 0,12 и в силу ограничения 0,1 £ ½ M ½ < 1 всегда одинаковы. Поэтому память под 0,1 не отводится. Остальные 89 бит мантиссы занимают разряды с номерами от -2 до -90. “Правый сосед” единицы равен 0,100…0012 × 21, где последняя единица стоит в -90-м разряде. Тогда m e = 2-89 = 10-89 × lg(2) = 10-26,79 = 6,17 × 10-26. Таким образом, у типа doom размер мантиссы в десятичных знаках 26-27, диапазон типа в положительной части от 1,54 × 10-161290865 до 1,54 × 10161290865.
Дата добавления: 2014-01-05; Просмотров: 1424; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |