Язык программирования Форт



         

Глава 4. Еще об арифметических операциях - часть 15


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

Числа с плавающей запятой: за и против

Многие преимущества чисел с плавающей запятой вам уже должны быть понятны. Основные из них: 1) при вычислениях с числами с плавающей запятой обеспечивается отслеживание положения десятичной запятой и величины числа практически без участия программиста; 2) представление чисел с плавающей запятой с указанием порядка позволяет работать как с очень большими, так и очень малыми числами; 3) арифметика с плавающей запятой позволяет задавать точность или погрешность с достаточным количеством знаков; 4) представление чисел с плавающей запятой распространено в мире инженеров и ученых, не склонных доверять представлению результатов измерений в реальном мире с помощью целых чисел. Хотя последняя причина в первую очередь психологическая, она имеет значение для принятия языка большинством практиков.

Многие (но не все) преимущества целочисленной арифметики вам также должны быть понятны: 1) целые числа обеспечивают большую точность при заданном объеме памяти, для 16-разрядных чисел диапазон -32768 - 32767 или - 2147483648 до 2147483647 для 32-разрядных; 2) с помощью целых чисел можно представить как собственно целые, так и действительные числа, имеющие целую и дробную части, например 12.55 = 12 + 55/100; 3) с помощью целых 32-разрядных чисел представляются целые числа и дроби в диапазоне от 1Е-10 и более чем 1Е+10, при этом с точностью на 4 знака больше, чем с помощью 32-разрядных чисел с плавающей запятой.

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


Содержание  Назад  Вперед