Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
al_fixed(3)		    Library Functions Manual		     al_fixed(3)

NAME
     al_fixed - Allegro 5 API

SYNOPSIS
	    #include <allegro5/allegro.h>

	    typedef int32_t al_fixed;

DESCRIPTION
     A fixed point number.

     Allegro  provides	some  routines for working with fixed point numbers, and
     defines the type al_fixed to be a signed 32-bit integer.  The high word  is
     used for the integer part and the low word for the fraction, giving a range
     of  -32768  to  32767 and an accuracy of about four or five decimal places.
     Fixed point numbers can be assigned, compared, added,  subtracted,  negated
     and shifted (for multiplying or dividing by powers of two) using the normal
     integer  operators, but you should take care to use the appropriate conver-
     sion routines when mixing fixed point with integer or floating  point  val-
     ues.   Writing fixed_point_1 + fixed_point_2 is OK, but fixed_point + inte-
     ger is not.

     The only advantage of fixed point math routines is that you don't require a
     floating point coprocessor to use them.  This was great in the time  period
     of  i386  and i486 machines, but stopped being so useful with the coming of
     the Pentium class of processors.  From Pentium onwards, CPUs have increased
     their strength in floating point operations, equaling  or	even  surpassing
     integer  math  performance.  However, many embedded processors have no FPUs
     so fixed point maths can still be useful there.

     Depending on the type of operations your program may need,  using	floating
     point  types may be faster than fixed types if you are targeting a specific
     machine class.

Allegro reference manual					     al_fixed(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=al_fixed&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help