- •Лабораторная работа №1. Действия над приближенными числами
- •Погрешности вычислений
- •Источники погрешностей
- •Абсолютная и относительная погрешности
- •Десятичная запись приближенных чисел. Значащая цифра числа. Верная значащая цифра
- •Представление чисел в эвм
- •Распространение ошибок
- •Правила подсчета цифр (по в.М. Брадису)
- •Общие рекомендации, позволяющие уменьшить погрешность вычислений.
- •Варианты заданий к лабораторной работе № 1.
- •Лабораторная работа № 2. Интерполяция
- •Интерполяция многочленами
- •Кусочно-линейная интерполяция.
- •Лабораторная работа № 3.
- •Применения
- •Интерполяционная формула Ньютона
- •Случай равномерного распределения узлов интерполяции
- •Лабораторная работа № 4.
- •Аппроксимация функций
- •Полином Чебышева
- •Лабораторная работа № 5. Метод наименьших квадратов.
- •Локальное сглаживание данных.
- •Подбор эмпирической формулы.
Представление чисел в эвм
Принципиальное ограничение на выполнение арифметических вычислений накладывает способ представления чисел в памяти ЭВМ. В памяти компьютера действительные числа представляются в нормализованном виде, т.е. первая значащая цифра мантиссы не равна нулю. Записи чисел с одинарной точностью (4 байта) соответствует для компьютеров IBM PC примерно 7 цифр в десятичном представлении мантиссы, а записи с двойной точностью (8 байт) соответствует 14 цифр в мантиссе. Порядок изменяется от –37 до +37 для одинарной точности и от –63 до +63 для двойной точности.
При представлении действительных чисел в памяти ЭВМ возникают ошибки, обусловленные тем, что дробное десятичное число не всегда точно представимо в двоичной системе счисления (Например, дробь 1/10 имеет конечное десятичное представление 0.1, но, будучи переведена в двоичную систему счисления, становится бесконечной дробью 0.000110011001100…). Поэтому в ЭВМ нельзя представить не только все трансцендентные и иррациональные числа, но и даже все рациональные числа. ЭВМ позволяет представить лишь конечное подмножество действительных чисел. При этом особо выделяется множество целых чисел, для которых в ЭВМ, как правило, используется специальный способ представления. Происходит раздвоение множества целых чисел. Одно и то же целое число можно представить как:
машинное целое число;
машинное число с плавающей точкой.
В языках программирования логическое выражение 7=7.0 (Equal) не обязательно является истинным. Это объясняется тем, что в ЭВМ используются различные способы представления целых чисел и чисел с плавающей точкой. Таким образом, один и тот же набор битов может интерпретироваться по-разному. Например, 32 бита для обычных целых и вещественных чисел в Фортране могут интерпретироваться как:
a) машинное целое число: 1 бит обозначает знак числа, а остальные 31 бита отводятся под позиционную запись 31-значного целого числа, в двоичной системе счисления;
b) машинное число с плавающей точкой: 1 бит обозначает знак числа, остальные 31 битов отводятся для записи значения числа, представленного в экспоненциальном виде в двоичной системе счисления, при этом под смещенный порядок отводится 8 битов, а под мантиссу 23.
При использовании двойной точности под запись числа отводится 64 бита. Для целых чисел: 1 бит – знак, остальные 63 бита – позиционная запись числа в двоичной системе счисления. Для чисел с плавающей точкой: 1 бит – знак числа, 63 бита – экспоненциальная запись числа в двоичной системе счисления (11 бит – смещенный порядок, 52 бита – мантисса).
Значение
смещенного порядка числа вычисляется
по формуле
,
где
– порядок числа, а
– количество бит, которое отводится
под запись порядка числа.
Примеры представления нескольких чисел в памяти ЭВМ.
I) Число a=210: 210 =1.*210 =(1.*101010 )2 :
машинное целое 00000000000000000000010000000000;
машинное число с плавающей точкой 01000100100000000000000000000000.
Отметим,
что
.
II)
Число
,
машинное целое 10000000000000000000010000000000;
машинное число с плавающей точкой 11000100100000000000000000000000.
III)
Число
,
(
)
машинное число с плавающей точкой 00111010100000000000000000000000.
IV)
Число
:
,
(
)
машинное число с плавающей точкой 00111100111000000000000000000000.
V)
Число
:
, (
)
машинное число с плавающей точкой 00111110111000000000000000000000.
VI)
Число
:
,
(
)
машинное число с плавающей точкой 00111110111000000000000000000000.
VII)
Число
:
,
(
)
машинное число с плавающей точкой 01000001010001110000000000000000.
