Учебное пособие Самара 2015 + 004. 43 Ббк 32. 973 Н 19
Download 1.98 Mb.
|
Lekcii AiSD 2015
Вещественные числа
Система вещественных чисел, применяемая в обычных ма- тематических (ручных) вычислениях, предполагается бесконеч- ной и непрерывной. Это означает, что не существует никаких or- раничений на диапазон используемых чисел и на точность (коли- чество значащих цифр) их представления. Для любого вещест- венного числа имеется бесконечно много чисел, которые больше и меньше его, а между любыми двумя вещественными числами также находится бесконечно много чисел. Реализовать такую систему чисел в технических устройст- вах нельзя. Во всех компьютерах размеры регистров и ячеек па- мяти фиксированы, что ограничивает систему представимых чи- сел. Ограничения касаются как диапазона, так и точности пред- ставления чисел, т.е. система машинных чисел оказывается ко- нечной и дискретной, образуя подмножество системы вещест- венных чисел. Обычно вещественные числа хранятся и используются в ЭВМ в формате с плавающей точкой. Для вещественных чисел применяется формат с плавающей точкой в вариантах обычной (или одинарной), двойной и расши- ренной точности (ОТ, ДТ, PT). Значащие цифры числа находятся в поле мантиссы (или дроби), поле порядка (или экспоненты) по- казывает фактическое положение точки в разрядах мантиссы, а бит знака S определяет знак числа. Мантисса представлена в пря- мом коде. Порядок Е задается в смещенной форме; он равен истинно- му порядку, увеличенному на значение смещения. Смещенный 24 порядок называется также характеристикой или экспонентой, ее можно считать целым положительным или беззнаковым числом. Задание порядка в форме со смещением упрощает операцию сравнения чисел с плавающей точкой, превращая ее в операцию сравнения целых чисел, а выполнение остальных операций прак- тически не усложняется. Так как операции с целыми числами вы- полняются значительно быстрее операций над числами с пла- вающей точкой, сравнение чисел с плавающей точкой произво- дится быстрее, что важно в алгоритмах с большим числом срав- нений, например в алгоритмах сортировки. Значения смещений для основных форматов следующие: ОТ 127, ДТ — 1023, PT 16383. Смещенные порядки 000...00 и 111...11 зарезервированы для специальных значений. Числа с плавающей точкой длиной 32 и 64 бита применяют- ся во многих компьютерах и обычно называются числами с оди- нарной и двойной точностью. Как правило, порядок имеет фик- сированную длину, определяя один и тот же диапазон предста- вимых чисел, а для повышения точности вводятся дополнитель- ные биты мантиссы. При этом схемы арифметико-логических устройств в процессоре усложняются незначительно. Однако при удвоении длины числа предпочтительнее часть бит отвести для расширения порядка. Такой порядок обеспечивает, в частности, получение точного произведения без переполнения и антипере- полнения, когда сомножители представлены в формате ОТ. Пa- раметры для трех форматов вещественных чисел приведены на рисунке 2.1. 25
i 1
31 22 0 Двойной точности — double i 1
63 51 0 Расширенной точности long double
79 64 63 0 i — позиция скрытой десятичной точки Рис. 2.1 Форматы вещественных чисел Отметим наличие в мантиссе бита F0 единиц. В форматах чисел с плавающей точкой большинства компьютеров бит F0 от- сутствует, и мантисса оказывается правильной дробью. Мантисса обычно представляется в нормализованной форме, т.е. старший бит равен 1. Следовательно за исключением числа нуль мантисса состоит из целой части и дроби в следующем виде F}F2Fз . Fy, где F, равно 0 или 1. Благодаря нормализации достигается одно- значное представление чисел и устраняются старшие нули в чис- лах, меньше единицы, что максимизирует количество значащих цифр мантиссы при ее фиксированной длине. В форматах ОТ и ДТ бит F0 при передачах чисел и хранении их в памяти не используется. Это так называемый скрытый или неявный бит, который в нормализованных числах содержит 1. Следовательно, в этих форматах невозможно представить числа, которые не нормализованы (за исключением нулевого порядка). Кроме того, скрытый бит не позволяет представить в этих форма- 26 тах нуль и он должен кодироваться как специальное значение. Скрытый бит можно реализовать только при основании, на сте- пень которого умножается мантисса, равным 2. Числа в формате PT имеют явный бит F0. Такой формат по- зволяет несколько повысить скорость выполнения операций и обеспечить некоторые преимущества, благодаря простоте пред- ставления чисел, не являющихся нормализованными. Отличия в форматах представления вещественного числа показаны на ри- сунке 2.2 для значения —247,375
Рис. 2.2 — Пример двоичного представления вещественного числа Числа в форматах ОТ и ДТ существуют только в памяти. При загрузке числа в одном из этих форматов в регистр арифме- тического устройства оно автоматически преобразуется в 80- битный формат PT. Аналогично данные из регистров можно пре- образовать в форматы ОТ и ДТ для сохранения их в памяти. Формат PT также допускает сохранение в памяти и обычно при- меняется для промежуточных результатов. В процессорах Intel принято хранение многобайтных эле- ментов по принципу «младшее — по меньшему адресу». Логиче- ски во всех форматах левый байт является старшим, а правый младшим ( big-endian). В физической памяти архитектуры х86 первым, т.е. по меньшему адресу, хранится младший байт (этот адрес считается и адресом всего числа), а последним, т.е. по большему адресу, старший байт (little-endian). Передача дан- ных всегда начинается с младшего адреса. 27
Download 1.98 Mb. Do'stlaringiz bilan baham: |
ma'muriyatiga murojaat qiling