Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
К_Глава 3_Представление данных.doc
Скачиваний:
30
Добавлен:
19.05.2015
Размер:
156.16 Кб
Скачать

2. Представление рациональных чисел

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

Представление с фиксированной точкой.

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

Целая часть Дробная часть

=1355+3/16

15 4 3 0

Число с двоичной фиксированной точкой

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

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

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

Для сокращения записи больших значений, измеренных с относительно небольшой точностью, в научной и инженерной литературе используется экспоненциальная запись чисел: незначащие (в данном случае — лежащие внутри границ ошибки) младшие десятичные отбрасываются, и после числа добавляется 10N, где N — количество отброшенных цифр. Обычно рекомендуют нормализовать такую запись, перемещая десятичную запятую на место после старшей цифры (смещение запятой на одну позицию влево соответствует увеличению показателя степени множителя на единицу). В соответствии с этими правилами величина 2128506 ± 20 преобразуется к виду 2,12850х106(обратите внимание, что младший ноль в данном случае является значащим).

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

Порядок Мантисса