Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СОДЕРЖАНИЕ 3 (2).doc
Скачиваний:
46
Добавлен:
31.08.2019
Размер:
6 Мб
Скачать
☆
      1. Округление действительных чисел

Округление действительного числа выполняется, если количество разрядов в его дробной части превышает требуемое. Если значение сокращаемых младших разрядов исходного числа равно нулю, их просто отбрасывают. Значение числа не изменяется, результат округления точный. Если значение сокращаемых разрядов не равно нулю, исходное точное число заменяют одним из двух ближайших к нему чисел с требуемой разрядностью. Результат округления приближенное число , где и – числа с требуемой разрядностью ближайшие к .

Если количественный эквивалент исходного числа (будем считать его точным)

(3-18)

где – код знака числа;

– цифра в разряде i;

m – индекс младшего разряда;

k – индекс младшего разряда результата округления;

то количественные эквиваленты ближайших к нему чисел

(3-19)

(3-20)

Из сопоставления (3-18) с (3-19) и (3-20) следует, что значение можно вычислить простым отбрасыванием в сокращаемых разрядов, а значение – прибавлением к единицы с весом младшего сохраняемого разряда, что сделать существенно сложнее.

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

  1. Направленные округления.

  2. Округления до ближайшего числа.

Направленные округления. На числовой оси исходному числу соответствует точка, размещенная на отрезке между точками соответствующими числам и . При округлении переменной происходит замещение ее значения числами или . При этом значение переменной x смещается на числовой оси вправо или влево, и, это то же самое, – в направлении к или к . Если принадлежит положительной полуоси рис.3-7a, то смещение влево направлено к точке ноль, а смещение вправо – в сторону от точки ноль. Если точка размещена на отрицательной полуоси рис.3-7b, то напротив – смещение вправо направлено к нулю, а влево – от нуля. Такая интерпретация округления определяет 4 варианта направленного округления:

  • к нулю;

  • от нуля;

  • к ;

  • к .

При округлении к нулю из двух чисел ближайших к выбирают ближайшее к нулю.

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

При округлении к (до ближайшего большего или по избытку) из двух чисел ближайших к выбирают число расположенное справа.

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

Округление к нулю достигается простым отбрасыванием сокращаемых разрядов исходного числа (3-19).

Округление от нуля реализуется отбрасыванием сокращаемых разрядов и увеличением значения сохраняемых разрядов на 1 с весом младшего сохраняемого разряда (3-20).

При округлении к сокращаемые разряды отбрасывают, и, если , значение сохраняемых разрядов увеличивают на 1 с весом младшего сохраняемого разряда.

При округлении к сокращаемые разряды отбрасывают, и, если , значение сохраняемых разрядов увеличивают на 1 с весом младшего сохраняемого разряда.

Округления до ближайшего числа. При всех вариантах округления до ближайшего числа из двойки , выбирают то число, которое расположено на числовой оси ближе к округляемому числу . Если число находится точно посередине между числами и , то округление выполняют по специальным правилам. Множество вариантов специальных правил определяет множество вариантов способов округления до ближайшего числа, которое можно разбить на две группы: детерминированные и вероятностные.

При детерминированном округлении одно и то же значение всегда округляется до одного и того же значения N.

При вероятностном округлении одно и то же значение может быть округлено до разных значений или с некоторой вероятностью.

Варианты детерминированного округления. Если число находится точно посередине между числами и , то его округляют

  • ближайшим четным;

  • ближайшим нечетным;

  • к нулю;

  • от нуля;

  • к ;

  • к .

Варианты вероятностного округления. Если число находится точно посередине между числами и , выполняют

  • случайное округление – в большую или меньшую сторону с равной вероятностью;

  • чередующееся округление – в большую или меньшую сторону поочередно.

Табл.3.2 и табл.3.3 иллюстрируют способы округления.

Таблица 3.2

Исходное

число

Результат направленного округления

К нулю

От нуля

К

К

+43,6457

+43,64

+43,65

+43,65

+43,64

+43,6450

+43,64

+43,65

+43,65

+43,64

+43,6420

+43,64

+43,65

+43,65

+43,64

+43,6400

+43,64

+43,64

+43,64

+43,64

±00,0000

±00,00

±00,00

±00,00

±00,00

–43,6400

–43,64

–43,64

–43,64

–43,64

–43,6420

–43,64

–43,65

–43,64

–43,65

–43,6450

–43,64

–43,65

–43,64

–43,65

–43,6457

–43,64

–43,65

–43,64

–43,65

Исходное десятичное число с четырьмя разрядами после запятой округляется до двух разрядов после запятой.

Таблица 3.3

Исходное

число

Результат округления до ближайшего числа

Четного

Нечетного

К нулю

От нуля

К

К

+43,6457

+43,65

+43,65

+43,65

+43,65

+43,65

+43,65

+43,6450

+43,64

+43,65

+43,64

+43,65

+43,65

+43,64

+43,6420

+43,64

+43,64

+43,64

+43,64

+43,64

+43,64

+43,6400

+43,64

+43,64

+43,64

+43,64

+43,64

+43,64

±00,0000

±00,00

±00,00

±00,00

±00,00

±00,00

±00,00

–43,6400

–43,64

–43,64

–43,64

–43,64

–43,64

–43,64

–43,6420

–43,64

–43,64

–43,64

–43,64

–43,64

–43,64

–43,6450

–43,64

–43,65

–43,64

–43,65

–43,64

–43,65

–43,6457

–43,65

–43,65

–43,65

–43,65

–43,65

–43,65

+43,6350

+43,64

+43,63

+43,63

+43,64

+43,64

+43,63

–43,6350

–43,64

–43,63

–43,63

–43,64

–43,63

–43,64

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

Здесь приведены не все возможные варианты округления. Например, в [3] определены округления без распространения переноса.

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

Абсолютная погрешность округления

. (3-21)

Если , то из (3-19) и (3-20) следует, что

. (3-22)

Если , то из (3-19) и (3-21) следует, что

. (3-23)

Знак абсолютной погрешности зависит от знака числа и от значения N.

При направленном округлении

(3-24)

не превышает веса младшего разряда округленного числа N. Предельная относительная погрешность округления, выраженная в процентах

(3-25)

Ее знак определяется знаком . При относительная погрешность теряет смысл.

При округлении до ближайшего числа

(3-26)

и случается когда N равноудалено от и . Предельная относительная погрешность округления

(3-27)

Погрешности при округлении до ближайшего числа почти вдвое меньше чем при направленных округлениях, поэтому округления до ближайшего числа предпочтительны. Однако это не исключает применение направленных округлений. В некоторых случаях без направленных округлений нельзя обойтись. Например, пусть Вы вычисляете количество землекопов, которых необходимо нанять для рытья траншеи с завершением работы к 12 часам послезавтра и получаете в ответе 3,2. Но количество землекопов должно быть числом целым, а поэтому результат нужно округлить. Если округлить до ближайшего числа получим 3 и решим задачу неправильно, так как 3 землекопа не успеют вырыть траншею к заданному времени. Очевидно, что следует применить направленное округление к или от нуля. Результат будет 4. В первом случае погрешность округления 0,2, а во втором – 0,8.

Систематическое округление промежуточных результатов к нулю приводит к занижению результатов вычислений.

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

При округлении к знак погрешности всегда отрицательный.

При округлении к знак погрешности всегда положительный.

Способы округления до и применяют при реализации методов вычислений получившей название Арифметика интервалов [5,6,7]. Если какая-либо граница интервала, которому принадлежит точное значение, не может быть представлена в данном формате, ее значение округляют до (верхнюю границу) или до (нижнюю границу), чтобы точное значение не могло выйти за границы интервала из-за ошибки округления. Разработано множество способов, позволяющих формировать достаточно узкие интервалы результатов вычислений и, следовательно, получать высокую точность результата.

Стандарт IEEE 754 1985г “Двоичная арифметика с плавающей точкой” [10] рекомендует применять в системах четыре варианта округления:

  • к нулю;

  • к ;

  • к ;

  • до ближайшего числа и, если округляемое число точно посередине, то выбирать ближайшее четное.

Стандарт IEEE 754 редакции 2008г [11] расширяет перечень вариантов округления, рекомендуя дополнительно применять округление до ближайшего числа и, если округляемое число точно посередине, выбирать отстоящее дальше от нуля.

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