Представление чисел в системах с плавающей запятой характеризуется четырьмя параметрами:
- основанием
, - длиной мантиссы (точностью)
, - пределами изменения показателей
.
Произвольное число в системе с плавающей запятой можно представить в виде:
,
где число в круглых скобках – дробная часть – мантисса, p – порядок числа
.
Система с плавающей запятой называется нормализованной, если для каждого ненулевого числа
.
Действительные компьютерные реализации могут в деталях отличаться, но эти различия несущественны при обсуждении ошибок округления. Множество чисел в системе с плавающей запятой является конечным. Множество положительных и отрицательных чисел с учетом числа ноль в нормализованной системе равно
.
Числа расположены неравномерно на оси чисел. Рассмотрим пример нормализованной системы:
.
Все возможные дробные части системы – числа, имеющие порядок
:
.
Чтобы получить остальные числа системы, нужно умножить эти дроби на
. Получим числа от
до 3.5. Все положительные числа системы показаны на рис. 1.1.
Не любое действительное число может быть представлено в такой системе. Сумма чисел, входящих в систему, может не принадлежать системе, даже если эта сумма меньше максимального числа 3.5. В подобной системе не выполняются законы ассоциативности и дистрибутивности.
Рассмотрим пример. Сложим три числа:
. Рассмотрим два варианта объединения слагаемых:
и
.
1)
; прибавив к этому
, получим точный ответ:
.
2)
. Такого числа нет в системе – требуется округление. Возможны два
варианта: округление до большего и округление до меньшего
а) Округляем до большего:
. Прибавив
, вновь получаем число, которого нет в системе:
. Вновь округляя до большего, получаем неверный ответ: сумма равна 1.0.
б) При округлении до меньшего полагаем
. Прибавив
, опять получим число, которого нет в системе:
. В соответствии с выбранным правилом округления до меньшего отбрасываем последний разряд и вновь получаем неверный результат:
.
Получили, что в нашей системе от перемены мест слагаемых сумма меняется!