Главная > Математика > Вычислительные основы линейной алгебры
<< Предыдущий параграф
Следующий параграф >>
<< Предыдущий параграф Следующий параграф >>
Макеты страниц

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

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

Округлением числа до разрядов в заданной системе счисления называется операция замены этого числа таким числом, все разряды которого в той же системе

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

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

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

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

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

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

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

Числа, имеющие нулевые разряды, начиная с образуют на вещественной оси равномерную сетку с шагом Среди этих чисел есть число , наиболее близкое к Ясно, что

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

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

Естественным является желание объединить достоинства обоих способов округления. Покажем, что этого

можно добиться путем использования специальных систем счисления.

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

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

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

Для выполнения условия (2.3) необходимо и достаточно, чтобы все числа вида

были по модулю не более Для этого в свою очередь необходимо и достаточно выполнение условия

Любая р-ичная система счисления должна иметь различных базисных чисел. Но неравенство (2.4) имеет различных целочисленных решений относительно лишь при нечетном при этом сами определяются однозначно. Именно,

Таким образом, если искомая система счисления существует, то она должна иметь нечетное основание и базисные

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

Теорема 2.1. Если — нечетное и базисные числа образуют совокупность — то любое вещественное число может быть представлено в виде ряда (1.1).

Доказательство. Будем снова считать для определенности, что число положительное. Доказательство этой теоремы также основано на последовательном определении всех коэффициентов ряда (1.1) и в идейном плане почти не отличается от доказательства теоремы 1.1. Единственное отличие состоит в следующем. При получении ряда (1.1) в теореме 1.1 конечные дроби всегда приближали число с недостатком. Теперь же коэффициенты ряда (1.1) находятся из условия, чтобы соответствующая конечная дробь наилучшим образом приближала число т. е. допускается как приближение с недостатком, так и с избытком. Мы не будем останавливаться на доказательстве более подробно, оставляя проведение его читателю в качестве упражнения.

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

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

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

УПРАЖНЕНИЯ

(см. скан)

(см. скан)

<< Предыдущий параграф Следующий параграф >>
Оглавление