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

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

Число́ одина́рной то́чности (англ. Single precision, Single) — широко распространенный компьютерный формат представления вещественных чисел, занимающий в памяти 32 бита (4 байта). Как правило, под ним понимают формат числа с плавающей запятой стандарта IEEE 754.

Числа одинарной точности с плавающей запятой обеспечивают относительную точность 7-8 десятичных цифр в диапазоне от 10^{-38} до примерно 10^{38}

В современных компьютерах вычисления с числами с плавающей запятой поддерживаются аппаратным сопроцессором (FPU — Floating Point Unit). Однако во многих вычислительных архитектурах нет аппаратной поддержки чисел с плавающей запятой и тогда работа с ними осуществляется программно.

Знак
Экспонента Мантисса
0 0 1 1 1 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0  = 0,15625
31 24 23 16 15 8 7 0

Для вычисления показателя степени из восьмиразрядного поля экспоненты вычитается смещение экспоненты равное 12710 = 7F16 = 011111112, (то есть, 011111002 - 011111112 = 12410 - 12710 = -310). Так как в нормализованной двоичной мантиссе целая часть всегда равна единице, то в поле мантиссы записывается только её дробная часть. Для вычисления мантиссы к единице добавляется дробная часть мантиссы из 23-х разрядного поля дробной части мантиссы 1,010000000000000000000002. Число равно произведению мантиссы со знаком на двойку в степени экспоненты = 1,012*210-310 = 1012*210-510 = 510*210-510 = 0,1562510.

Содержание

Общий шаблон для побитового доступа

union
{
  float fl;
  DWORD dw;
} f;
int s = ( f.dw >> 31) ? -1 : 1;
int e = ( f.dw >> 23) & 0xff;
int m = ( e == 0) ? ( f.dw & 0x7fffff) << 1 : ( f.dw & 0x7fffff) | 0x800000;       
    e = (e - 127);

Результирующая формула расчёта будет s * m * 2 ^ e.

Примеры чисел одинарной точности

Эти примеры представлены в шестнадцатеричном виде чисел с плавающей запятой. Они включают знаковый бит, экспоненту и мантиссу.

3f80 0000   = 1
c000 0000   = −2

7f7f ffff   ≈ 3.4028234 × 1038  (Максимальное одинарной точности)

0000 0000   = 0
8000 0000   = −0

7f80 0000   = infinity
ff80 0000   = −infinity
                                
3eaa aaab   ≈ 1/3

По умолчанию, 1/3 округляется вверх, в отличие от чисел двойной точности.

См. также

Ссылки



Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Полезное


Смотреть что такое "Число одинарной точности" в других словарях:

  • Число двойной точности — (Double precision, Double) компьютерный формат представления чисел, занимающий в памяти две последовательных ячейки (компьютерных слова; в случае 32 битного компьютера 64 бита или 8 байт). Как правило, обозначает формат числа с плавающей запятой… …   Википедия

  • Число половинной точности — (англ. half precision)  компьютерный формат представления чисел, занимающий в памяти половину компьютерного слова (в случае 32 битного компьютера  16 бит или 2 байта). Диапазон значений ± 2−24(5.96E 8)  65504. Приблизительная… …   Википедия

  • Число четверной точности — (англ. Quadruple precision) компьютерный формат представления чисел с плавающей запятой, занимающий в памяти четыре последовательных ячейки (компьютерных слова; в случае 32 битного компьютера 128 бит или 16 байт). Как правило, обозначает… …   Википедия

  • Число с плавающей запятой — Число с плавающей запятой  форма представления действительных чисел, в которой число хранится в форме мантиссы и показателя степени. При этом число с плавающей запятой имеет фиксированную относительную точность и изменяющуюся абсолютную.… …   Википедия

  • Число с фиксированной запятой — Число с фиксированной запятой  формат представления вещественного числа в памяти ЭВМ в виде целого числа. При этом само число x и его целочисленное представление x′ связаны формулой , где z  цена (вес) младшего разряда. Простейший… …   Википедия

  • Фиксированная запятая — Число с фиксированной запятой  формат представления вещественного числа в памяти ЭВМ в виде целого числа. При этом само число x и его целочисленное представление x′ связаны формулой , где z  цена (вес) младшего разряда. Простейший… …   Википедия

  • Фиксированная точка — Число с фиксированной запятой формат представления вещественного числа в памяти ЭВМ в виде целого числа. При этом само число x и его целочисленное представление x′ связаны формулой , где z цена младшего разряда. Простейший пример арифметики с… …   Википедия

  • Числа с фиксированной точкой — Число с фиксированной запятой формат представления вещественного числа в памяти ЭВМ в виде целого числа. При этом само число x и его целочисленное представление x′ связаны формулой , где z цена младшего разряда. Простейший пример арифметики с… …   Википедия

  • Числа с плавающей запятой — Плавающая запятая  форма представления действительных чисел, в которой число хранится в форме мантиссы и показателя степени. При этом число с плавающей запятой имеет фиксированную относительную точность и изменяющуюся абсолютную. Наиболее… …   Википедия

  • Запятая плавающая — Плавающая запятая форма представления дробных чисел, в которой число хранится в форме мантиссы и показателя степени. При этом число с плавающей запятой имеет фиксированную относительную точность и изменяющуюся абсолютную. Наиболее часто… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»