решений систем ЛАУ при вычислениях с удвоенной точностью на языке
Си). Аналитически данная проблема не имеет решения, например, теорети-
чески умножение квадратной матрицы с постоянными коэффициентами на
обратную равно единичной матрице, но для плохо обусловленных матриц
при вычислении на компьютере единичную матрицу мы не получим. Только
многолетние вычислительные эксперименты позволили решить эту проблему
в программах-решателях систем ЛАУ библиотеки SADEL на основе перечи-
сленных методов вычислений с повышенной точностью.
При разработке математических программ на языке Си необходимо также
учитывать особенности программирования арифметических операций с ве-
щественными числами с плавающей точкой, так как именно такие операции
используют упомянутые ПМК и библиотеки математических программ при
решении систем ОДУ-ДАУ и ЛАУ. Институт инженеров по электротехнике и
электронике (Institute of Electrical and Electronic Engineers, IEEE) разработал
международные стандарты, которые описывают представление веществен-
ных чисел с плавающей точкой:
— стандарт ANSI/IEEE 754:1985 определяет требования к реализации
двоичной плавающей арифметики;
— стандарт ANSI/IEEE 754:2008 обобщает стандарт ANSI/IEEE 754:1985,
допуская дополнительно, кроме двоичного, десятичное основание предста-
влений мантиссы и экспоненты и произвольную длину машинного слова.
Данные стандарты, кроме форматов представления, описывают также
основные арифметические действия, операции вычисления остатка от де-
ления, квадратного корня, преобразования, округления и т.п. В современных
платформах, таких как Intel, и в большинстве RISC-систем, aппapaтно реали-
зована плавающая арифметика, соответствующая этим стандартам. Другие
стандарты на практике не используются.
Стандарты IEEE754 определяют следующие основные форматы предста-
вления вещественных чисел с плавающей точкой.
1. С одинарной точностью (соответствует типам SINGLE PRECISION (32
двоичных разряда) или REAL*4 в языке Фортран и float в языке Си).
2. С удвоенной точностью (соответствует типам DOUBLE PRECISION
(64 двоичных разряда) или REAL*8 в языке Фортран и double в языке Си),
этот тип представления принят по умолчанию во всех упомянутых ПМК и
стандартных библиотеках математических программ.
3. С расширенной точностью (условно говоря, соответствует типам
REAL*10 (80 двоичных разрядов) в языке Фортран и long double в язы-
ке Си).
Формат с учетверенной точностью QUAD PRECISION (128 двоичных
разряда) или REAL*16 в языке Фортран стандарт IEEE754 отдельно не опре-
деляет, поэтому в языке Си следует создавать специальные форматы для
данного представления вещественных чисел.
26 ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2014. № 4