5.5. Вычисления с фиксированной запятой

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

небольшие вещественные числа на бумаге). Наиболее распространенные форматы для чисел с фиксированной запятой -

8:8 и 1б:1б. В первом случае на целую и на дробную части числа отводится по одному байту, а во втором - по одному слову. Операции с этими двумя формата­ми можно выполнять, помещая число в регистр - для формата 8:8 и 32-битный - для формата 16:16). Разумеется, можно придумать и использовать совершенно любой формат, например но некоторые операции над такими числами могут усложниться.