//レジスタを示す定数 #define REG_EAX 1 #define REG_EBX 2 #define REG_ECX 3 #define REG_EDX 4 #define REG_ESP 5 #define REG_EBP 6 #define REGISTER_OPERAND(reg) (reg&0x07) #define REG_NON -1 #define REG_RAX 0x00 //reg:000 #define REG_RCX 0x01 //reg:001 #define REG_RDX 0x02 //reg:010 #define REG_RBX 0x03 //reg:011 #define REG_RSP 0x04 //reg:100 #define REG_RBP 0x05 //reg:101 #define REG_RSI 0x06 //reg:110 #define REG_RDI 0x07 //reg:111 #define REG_R8 0x08 //reg:000(REXプリフィックス) #define REG_R9 0x09 //reg:001(REXプリフィックス) #define REG_R10 0x0A //reg:010(REXプリフィックス) #define REG_R11 0x0B //reg:011(REXプリフィックス) #define REG_R12 0x0C //reg:100(REXプリフィックス) #define REG_R13 0x0D //reg:101(REXプリフィックス) #define REG_R14 0x0E //reg:110(REXプリフィックス) #define REG_R15 0x0F //reg:111(REXプリフィックス) #define REG_XMM0 0x10 //reg:000 #define REG_XMM1 0x11 //reg:001 #define REG_XMM2 0x12 //reg:010 #define REG_XMM3 0x13 //reg:011 #define REG_XMM4 0x14 //reg:100 #define REG_XMM5 0x15 //reg:101 #define REG_XMM6 0x16 //reg:110 #define REG_XMM7 0x17 //reg:111 #define REG_XMM8 0x18 //reg:000 #define REG_XMM9 0x19 //reg:001 #define REG_XMM10 0x1A //reg:010 #define REG_XMM11 0x1B //reg:011 #define REG_XMM12 0x1C //reg:100 #define REG_XMM13 0x1D //reg:101 #define REG_XMM14 0x1E //reg:110 #define REG_XMM15 0x1F //reg:111 #define IS_XMM_REG(reg) (reg&0x10) //Mod(モード) #define MOD_BASE (char)0x00 #define MOD_DISP32 (char)0xFF #define MOD_BASE_DISP8 (char)0x40 #define MOD_BASE_DISP32 (char)0x80 #define MOD_REG (char)0xC0 #define USE_OFFSET 1 #define NON_OFFSET 0