СОБЛЮДЕНИЕ ФОРМАТА IEEE 754
*ЩНг Предложения по стандартному двоичному формату для чисел с плавающей запятой датируются 1979 годом. Официально этот формат был стандартизован в 1985 году, и сейчас он широко реализуется в программном обеспечении, большинстве языков программирования и в микропроцессорах.
Формат содержит три поля для кодирования значения с плавающей запятой: поле для дробной части значения, поле для экспоненты, в которую возводится дробь, и одноразрядное поле знака.
Преимущество формата IEEE 754 заключается в том, что, используя экспоненту, он позволяет представить как очень маленькие, так и очень большие дробные значения. Форматом не только поддерживаются действительные числа, но к тому же диапазон поддерживаемых им значений больше, чем диапазон целых чисел в формате с фиксированной запятой. Форматом с двойной точностью поддерживается еще больший диапазон значений. Таким образом, эти форматы удобны для научных приложений.
Однако дробные числовые значения, возможно, наиболее широко используются для представления денежных сумм. Нет необходимости использовать формат IEEE 754 для денег, поскольку масштабированный десятичный формат, описываемый в данной главе, позволяет обрабатывать значения денежных сумм так же просто и с большей точностью.
Хорошими источниками дополнительных сведений о данном формате являются ;/)¦ статья в Википедии len.wikipedia.org/wiki/IEEE_754-1985] и статья Давида Голь-дберга (David Goldberg] «What Every Computer Scientist Should Know About Floating-Point Arithmetic» [8].
Статья Гольдберга также представлена по адресу www.validlab.com/goldberg/ paper.pdf.
Файлприм epa:_Rounding- Errors/anti/select-rate.sql
SELECT hourly_rate FROM Accounts WHERE account_id = 123; Возвращает: 59,95.
Но фактическое значение, хранящееся в столбце FLOAT, может быть не равно точно данному значению. Если увеличить значение в миллион раз, будет видно различие:
Файл npw^bpa\ Rounding-Errors/anti/magmfy-rate.sql
SELECT hourly_rate * 1000000000 FROM Accounts WHERE account_id = 123;
Возвращает: 59950000762,939.
Опубликовал vovan666
July 26 2013 08:13:36 ·
0 Комментариев ·
5127 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.