#define ALIGNMENT 4 #define CHAR_BIT 8 #define D_BIT (D_SIZE * CHAR_BIT) #define D_EXP_BIAS ((1 << (D_EXP_BIT - 1)) - 1) #define D_EXP_BIT 11 #define D_EXP_INFINITE ((1 << D_EXP_BIT) - 1) #define D_EXP_MASK (((1 << D_EXP_BIT) - 1) << D_EXP_SHIFT) #define D_EXP_SHIFT (REG_BIT - (1 + D_EXP_BIT)) #define D_FRAC_BIT 53 #define D_FRAC_MASK (D_NORM_MASK - 1) #define D_HIGH 4 #define D_HUGE_HIGH (D_EXP_MASK - 1) #define D_HUGE_LOW 0xFFFFFFFF #define D_LOW 0 #define D_NORM_BIT (D_FRAC_BIT - 1 - REG_BIT) #define D_NORM_MASK (1 << D_NORM_BIT) #define D_SIGN_BIT 63 #define D_SIGN_MASK (1 << (D_SIGN_BIT - REG_BIT)) #define D_SIZE 8 #define F_BIT (F_SIZE * CHAR_BIT) #define F_EXP_BIAS ((1 << (F_EXP_BIT - 1)) - 1) #define F_EXP_BIT 8 #define F_EXP_INFINITE ((1 << F_EXP_BIT) - 1) #define F_EXP_MASK (((1 << F_EXP_BIT) - 1) << F_EXP_SHIFT) #define F_EXP_SHIFT (REG_BIT - (1 + F_EXP_BIT)) #define F_FRAC_BIT 24 #define F_FRAC_MASK (F_NORM_MASK - 1) #define F_HIGH 0 #define F_HUGE_HIGH (F_EXP_MASK - 1) #define F_NORM_BIT (F_FRAC_BIT - 1) #define F_NORM_MASK (1 << F_NORM_BIT) #define F_SIGN_BIT 31 #define F_SIGN_MASK (1 << F_SIGN_BIT) #define F_SIZE 4 #define FREE_D_SIGN_BIT_TEST (D_SIGN_BIT % REG_BIT == REG_BIT - 1) #define GENREG_SIZE 4 #define INT_BIT 32 #define INT_MAX 0x7FFFFFFF #define INT_MIN (-0x7FFFFFFF - 1) #define PC_SIZE 4 #define REG_BIT 32 #define SHORT_BIT 16 #define UINT_MAX 0xFFFFFFFF