Реферат: Выполнение операций алгебраического сложения и сдвига в ЭВМ

[b]д =00,0011001

[c]д =11,1000101

Так как мантисса результата денормализована вправо на 1 разряд, то ее необходимо сдвинуть на 1 разряд влево и при этом вычесть из порядка 1.

[С]д =0 100 11,000101; [С]пр =0 100 11,111011;

Пример 2.

[А]пр =0 101 1,10101;

[B]пр =0 100 1,11001; Найти С=А+В

порядок мантисса

[B’]пр =0 101 1,011001;

[a]д =11,010110

[b]д =11,100111

[с]д =10,111101

Так как мантисса результата денормализована влево, то ее необходимо сдвинуть на 1 разряд вправо и при этом порядок увеличить на 1.

[С]д =0 110 11,0111101; [С]пр =0 110 11,1000011.


3.Округление чисел в ЭВМ

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

Источниками погрешностей при сложении в машине с плавающей запятой являются сдвиг вправо мантиссы одного из исходных чисел при выравнивании порядков, сдвиг вправо мантиссы при нормализации результата, а также искусственная установка нуля в качестве результата при отрицательном переполнении порядков. Поэтому при нормальной форме представления чисел сама операция алгебраического сложения является источником погрешностей.

Таким образом, причинами погрешностей вычислений в ЭВМ могут быть:

1) неточное задание исходных данных, участвующих в выполнении операции (либо из-за ограничений разрядной сетки машины, либо из-за погрешностей перевода информации из одной системы счисления в другую);

2) использование приближенных методов вычислений, что само по себе дает методическую погрешность (например, использование метода прямоугольников, трапеций при интегрировании);

3) округление результатов элементарных операций, что в свою очередь может привести к появлению накопленных погрешностей.

3.1 Округление чисел в прямом коде

Если предположить, что исходная информация не содержит никаких ошибок и все вычислительные процессы выполняются абсолютно точно, то всегда существует третий тип ошибок — ошибки округления, которые возникают при переводе чисел из одной системы счисления в другую и последующем представлении их в разрядной сетке машины, а также при получении внутри машины чисел, разрядностью большей, чем это допустимо, например, при умножении. В этом случае число А округляют, т. е. заменяют его машинным числом [A] заданной разрядности. Округление (обозначим его знаком ¨) называется оптимальным, если для любого машинного числа [A] справедливо ¨А=[A]. Пусть [A]1 и [A]2 - два последовательных машинных числа, тогда при оптимальном округлении вещественное число A такое, что [A]1 ‹A‹ [A]2 заменяется либо числом [A]1 , либо числом [A]2 . Если ¨А≤A, то говорят об округлении по недостатку, если ¨А ≥A, то говорят об округлении по избытку. Округление называют симметричным, когда ¨А= -¨(-А). Различают три вида симметричного округления.

1. Округление в направлении к нулю, когда вещественное число округляется до ближайшего к нулю машинного числа.

2. Округление в направлении от нуля, когда округление производится до машинного числа, лежащего дальше от нуля, чем вещественное число А.

3. Округление по дополнению, когда округление производится до ближайшего машинного числа.

В качестве параметров, по которым будут сравниваться способы округления, целесообразно использовать максимальную величину модуля погрешности, т. е. max , где = А-[A], и математическое ожидание погрешности округления .

Округление к нулю или усечение.

Для конкретности считаем, что числа в машине представлены в прямом коде с запятой, фиксированной перед старшим разрядом, [A]= а-1 ... a - n (правильная дробь). Пусть в результате каких-либо действий над машинными числами внутри машины сформировалось число [А]', имеющее k = n + t разрядов. Очевидно, что самый простой способ округления состоит в отбрасывании хвоста числа [А]', который состоит из лишних разрядов, т.е. разрядов с номерами а- n -1 , a - n -2 , ... , a - n - t .

Если считать, что появление чисел с абсолютной величиной А, но разных знаков равновероятно и равновероятны все значения хвоста чисел одного знака, то математическое ожидание погрешности в данном случае равно нулю, т.е. = 0.

Обычно вероятность появления чисел разного знака при выполнении определенной программы не одинакова, поэтому представляет интерес округление абсолютных величин, т. е. фактически чисел одного знака.

К-во Просмотров: 380
Бесплатно скачать Реферат: Выполнение операций алгебраического сложения и сдвига в ЭВМ