00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef _SWORD_BASE_LIMITS_
00020 #define _SWORD_BASE_LIMITS_
00021
00022
00023
00024 #define word8_IS_SIGNED false
00025 #define word8_IS_EXACT true
00026 #define word8_IS_INTEGER true
00027 #define word8_RADIX 2
00028 #define word8_DIGITS 8
00029 #define word8_DIGITS10 3
00030 #define word8_MIN _U8_(0)
00031 #define word8_MAX _U8_(255)
00032
00033
00034
00035 #define word16_IS_SIGNED false
00036 #define word16_IS_EXACT true
00037 #define word16_IS_INTEGER true
00038 #define word16_RADIX 2
00039 #define word16_DIGITS 16
00040 #define word16_DIGITS10 5
00041 #define word16_MIN _U16_(0)
00042 #define word16_MAX _U16_(65535)
00043
00044
00045
00046 #define word32_IS_SIGNED false
00047 #define word32_IS_EXACT true
00048 #define word32_IS_INTEGER true
00049 #define word32_RADIX 2
00050 #define word32_DIGITS 32
00051 #define word32_DIGITS10 10
00052 #define word32_MIN _U32_(0)
00053 #define word32_MAX _U32_(4294967295)
00054
00055
00056
00057 #define word64_IS_SIGNED false
00058 #define word64_IS_EXACT true
00059 #define word64_IS_INTEGER true
00060 #define word64_RADIX 2
00061 #define word64_DIGITS 64
00062 #define word64_DIGITS10 20
00063 #define word64_MIN _U64_(0)
00064 #define word64_MAX _U64_(18446744073709551615)
00065
00066
00067
00068 #define int8_IS_SIGNED true
00069 #define int8_IS_EXACT true
00070 #define int8_IS_INTEGER true
00071 #define int8_RADIX 2
00072 #define int8_DIGITS 8
00073 #define int8_DIGITS10 3
00074 #define int8_MIN _I8_(-127)-1
00075 #define int8_MAX _I8_( 127)
00076
00077
00078
00079 #define int16_IS_SIGNED true
00080 #define int16_IS_EXACT true
00081 #define int16_IS_INTEGER true
00082 #define int16_RADIX 2
00083 #define int16_DIGITS 16
00084 #define int16_DIGITS10 5
00085 #define int16_MIN _I16_(-32767)-1
00086 #define int16_MAX _I16_( 32767)
00087
00088
00089
00090 #define int32_IS_SIGNED true
00091 #define int32_IS_EXACT true
00092 #define int32_IS_INTEGER true
00093 #define int32_RADIX 2
00094 #define int32_DIGITS 32
00095 #define int32_DIGITS10 10
00096 #define int32_MIN _I32_(-2147483647)-1
00097 #define int32_MAX _I32_( 2147483647)
00098
00099
00100
00101 #define int64_IS_SIGNED true
00102 #define int64_IS_EXACT true
00103 #define int64_IS_INTEGER true
00104 #define int64_RADIX 2
00105 #define int64_DIGITS 64
00106 #define int64_DIGITS10 20
00107 #define int64_MIN _I64_(-9223372036854775807)-1
00108 #define int64_MAX _I64_( 9223372036854775807)
00109
00110
00111
00112 #define float32_IS_SIGNED true
00113 #define float32_IS_EXACT false
00114 #define float32_IS_INTEGER false
00115 #define float32_RADIX 2
00116 #define float32_DIGITS 32
00117 #define float32_DIGITS10 6
00118 #define float32_MIN 1.17549435e-38F
00119 #define float32_MAX 3.40282347e+38F
00120 #define float32_INFINITY 0.0F
00121 #define float32_EPSILON 1.19209290e-07F
00122 #define float32_QUIETNAN 0.0F
00123 #define float32_NAN 0.0F
00124 #define float32_MAXEXPONENT 128
00125 #define float32_MAXEXPONENT10 38
00126 #define float32_MINEXPONENT -125
00127 #define float32_MINEXPONENT10 -37
00128
00129
00130
00131 #define float64_IS_SIGNED true
00132 #define float64_IS_EXACT false
00133 #define float64_IS_INTEGER false
00134 #define float64_RADIX 2
00135 #define float64_DIGITS 64
00136 #define float64_DIGITS10 15
00137 #define float64_MIN 2.2250738585072014e-308
00138 #define float64_MAX 1.7976931348623157e+308
00139 #define float64_INFINITY 0.0F
00140 #define float64_EPSILON 2.2204460492503131e-16
00141 #define float64_QUIETNAN 0.0F
00142 #define float64_NAN 0.0F
00143 #define float64_MAXEXPONENT 1024
00144 #define float64_MAXEXPONENT10 308
00145 #define float64_MINEXPONENT -1021
00146 #define float64_MINEXPONENT10 -307
00147
00148 #endif // _SWORD_BASE_LIMITS_