background image

Vol. 2A 2-9

INSTRUCTION FORMAT

REX.R modifies the ModR/M reg field when that field encodes a GPR, SSE, control or debug register. REX.R is 
ignored when ModR/M specifies other registers or defines an extended opcode.

REX.X bit modifies the SIB index field.

REX.B either modifies the base in the ModR/M r/m field or SIB base field; or it modifies the opcode reg field 
used for accessing GPRs.

Table 2-4.  REX Prefix Fields [BITS: 0100WRXB]

Field Name

Bit Position

Definition

-

7:4

0100

W

3

0 = Operand size determined by CS.D
1 = 64 Bit Operand Size

R

2

Extension of the ModR/M reg field

X

1

Extension of the SIB index field

B

0

Extension of the ModR/M r/m field, SIB base field, or Opcode reg field

Figure 2-4.  Memory Addressing Without an SIB Byte; REX.X Not Used

Figure 2-5.  Register-Register Addressing (No Memory Operand); REX.X Not Used

REX PREFIX  

0100WR0B

Opcode

mod

≠11

reg

r/m

Rrrr

Bbbb

ModRM Byte

rrr

bbb

OM17Xfig1-3

REX PREFIX  

0100WR0B

Opcode

mod

11

reg

r/m

Rrrr

Bbbb

ModRM Byte

rrr

bbb

OM17Xfig1-4