Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


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



 

Различают две формы записи чисел: естественную и экспоненциальную.

Например, длина некоторого отрезка в зависимости от единиц измерения может быть представлена в естественной форме записи следующим образом: 478 000 микрон; 0, 478 м.

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

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

Любые правильная дробь и целое число в двоичной системе счисления имеют соответственно вид:

Анализ этих формул показывает:

1) минимальное положительное число Amin равно 0, 00...1 для дробных и единице для целых чисел; числа, по абсолютной величине меньшие Amin (единицы младшего разряда n-разрядной машинной сетки), называются машинным нулем;

2) максимальное положительное число Amax равно 0, 11...1 (1–2n) для дробных чисел (во всех разрядах должны быть записаны единицы) и 11...1 (2n – 1) для целых чисел;

3) общее количество чисел, которое можно записать в n-раз-рядную сетку, равно М = 2n.

Обычно целые числа занимают в памяти ЭВМ 1, 2 или 4 байта. Один, как правило, старший бит отводится под знак числа. Знак положительного числа «+» кодируется нулем, а знак отрицательного числа «–» — единицей.

Целые числа без знака в двухбайтовом формате могут принимать значения от 0 до 216–1 (до 65535), а со знаком «–» от –215 до +215–1, т. е. от –32768 до 32767.

ЭВМ производит операции над числами параллельно, сразу во всех разрядах, поэтому во всех разрядах всегда должно быть что-то записано, даже если это «незначащий» ноль. Число располагается так, что его самый младший двоичный разряд записывается в крайний правый бит разрядной сетки.

Например, десятичное число 19 (100112) в 16-разрядной
машине записывается так:

 

знак числа

 

Числа с плавающей точкой

 

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

Длину отрезка в экспоненциальной форме записи можно представить так: 478 × 103 микрон; 4, 78 × 10–1 м.

Точность числа определяется не его длиной, а количеством верных значащих цифр. Задание же всех величин с точностью до 256 бит (или примерно 76 десятичных цифр) — дело не только нереальное, но и бессмысленное, хотя бы потому, что многие из этих величин получаются в результате измерений не очень точными приборами. Не случайно в практических расчетах редко используют более трех значащих цифр, соответствующим образом округляя промежуточные результаты.

Для хранения в памяти ЭВМ чисел с небольшим количеством значащих цифр целесообразно представлять их в экспоненциальной форме. В приведенном выше примере это представление может иметь вид:

4, 72 × 105 микрон; 472 × 103 микрон; 4720 × 102 микрон;

4, 72 × 10-4 км; 47, 2 × 10-5 км; 472 × 10-6 км.

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

Любое число А в экспоненциальной форме представляется в виде

А = mA × qp,

где mA мантисса числа; q — основание системы счисления, р —порядок числа.

Для однозначности представления чисел с плавающей точкой используется нормализованная форма, при которой мантисса отвечает условию:

Это означает, что мантисса должна быть правильной дробью и иметь после запятой цифру, отличную от нуля.

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

Запись числа «нуль» является нормализованной, если и мантисса и порядок равны нулю. Число в форме с плавающей точкой занимает в памяти ЭВМ 4 или 8 байт. При записи числа с плавающей точкой выделяются разряды для хранения знака мантиссы, знака порядка, порядка и мантиссы.

31 30 24 23 0

 

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

Оценим диапазон представления чисел по максимальному значению:

где ;

Тогда

Если для размещения порядка выделяется 7 разрядов, то

и

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

 


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-05-28; Просмотров: 1090; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.013 с.)
Главная | Случайная страница | Обратная связь