Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архитектура ЭВМ.doc
Скачиваний:
40
Добавлен:
23.11.2019
Размер:
6.47 Mб
Скачать
    1. Числа с плавающей точкой

В результате изучения данной темы Вы будете:

  • знать о принципах представления чисел с плавающей точкой;

  • понимать, каким образом происходит округление чисел;

  • иметь представление о стандарте арифметики с плавающей точкой IEEE 754.

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

Принципы представления с плавающей точкой

Любое число можно выразить в следующей нормальной форме (такой способ еще называется экспоненциальной формой):

X = m×qe,

где mмантисса числа;

q – основание системы счисления;

eэкспонента (порядок).

Для десятичной системы счисления число будет иметь вид:

X = m×10e

Компьютерная версия такого пред­ставления называется представлением с плавающей точкой. Ниже приведены примеры чисел в такой записи.

3,14 = 0,314×101 = 3,14×100

0,000001 = 0,1×10-5 = 1,0×10-6

1941 = 0,1941×104 = 1,941×103

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

q-1 ≤ |m| < q0 = 1

В общем случае вещественное число можно хранить в памяти компьютера в виде двоичного представления мантиссы и экспоненты (Рис. 1 .1).

Зн m

q-1

q-2

q-r

мантисса числа: m

экспонента числа: e

Рис. 1.1. Общая форма представления чисел в ЭВМ

Последовательность разрядов содержит:

  • разряд для знака мантиссы;

  • r цифровых разрядов для q-ичного модуля мантиссы;

  • разряд для знака порядка;

  • s разрядов для q-ичного модуля экспоненты.

Диапазон представления модулей чисел в нормальной

нормализованной форме определяется неравенством:

В конкретной ЭВМ диапазон представления чисел с плавающей точкой зависит от основания системы и числа разрядов для представления экспоненты.

Примерами применяемых форм чисел с плавающей точкой с различными основаниями системы счисления являются:

X = m×2e, где 1/2 ≤ |m| < 1;

X = m×8e, где 1/8 ≤ |m| < 1;

X = m×16e, где 1/16 ≤ |m| < 1.

Область значений определятся по числу разрядов в экспоненте e, а точность определяется по числу разрядов в мантиссе m.

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

Рассмот­рим представление R с трехразрядной мантиссой со знаком в диапазоне 0,1 ≤ |m| < 1 и двухразрядной экспонентой со знаком, эти числа находятся в диапазоне от -10-99 до +0,999×10+99.

Однако, в представлении R можно выразить ровно 179100 положительных чисел, 179100 отрицательных чисел и 0 (который можно выразить разными способами). То есть из бесконечного числа действительных чисел в этом диапазоне можно выразить всего 358201 чисел. Например, результат деления числа +0,100×103 на 3 нельзя выразить точно в нашей системе представления. Если полученное число нельзя выразить в используемой системе представления, нужно брать ближайшее число, которое представимо в этой систе­ме. Такой процесс называется округлением.

Точность округления зависит от промежутков между смежными числами, которые (промежутки) не постоянны. Промежуток между числами +0,998×10+99 и +0,999×10+99 гораздо больше промежутка между числа­ми +0,998×100 и +0,999×100. Однако если промежутки между числом и его соседом выразить как процентное отношение от этого числа, большой разницы в проме­жутках не будет. Другими словами, относительная погрешность, полученная при округлении, приблизительно равна и для малых, и для больших чисел.

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