====== Numeric limits ====== ACSUtils defines constants that represent minimum and maximum values that can be stored in memory blocks (variables) of various sizes. ===== 32-bit ===== ACS ''int'' is a signed 32-bit integer. Unsigned ints don't exist in ACS, so ''UINT_MAX'' can't be expressed. * ''INT_MIN = -2147483648 (-0x80000000)'' -- minimum value * ''INT_MAX = 2147483647 (0x7fffffff)'' -- maximum value ===== 16-bit ===== 16-bit integers are also known as shorts. * ''SHORT_MIN = -32768'' -- minimum value of signed short * ''SHORT_MAX = 32676'' -- maximum value of signed short * ''USHORT_MAX = 65535'' -- maximum value of unsigned short (minimum is 0) ===== 8-bit ===== 8-bit integers are also known as bytes. * ''BYTE_MIN = -128'' -- minimum value of signed byte * ''BYTE_MAX = 127'' -- maximum value of signed byte * ''UBYTE_MAX = 255'' -- maximum value of unsigned short (minimum is 0) ===== fixed ===== Fixed-point numbers are 32-bit integers and have the same limits as ''int'' (''INT_MIN'' and ''INT_MAX''). But to enable [[strict typing]], there are separate limit constants for ''fixed'': * ''FIXED_MIN = (fixed)-0x80000000'' -- minimum value (-32768.0) * ''FIXED_MAX = (fixed) 0x7fffffff'' -- maximum value (slightly less than 32767.99999)