Intel 64 and IA-32 Architectures Software Developers Manual Volume 1, Basic Architecture

3-26 Vol. 1
BASIC EXECUTION ENVIRONMENT
operand-size 66H prefix to toggle to a 16-bit operand size. However, setting REX.W
takes precedence over the operand-size prefix (66H) when both are used.
In the case of SSE/SSE2/SSE3/SSSE3 SIMD instructions: the 66H, F2H, and F3H
prefixes are mandatory for opcode extensions. In such a case, there is no interaction
between a valid REX.W prefix and a 66H opcode extension prefix.
See Chapter 2, “Instruction Format,” in the Intel® 64 and IA-32 Architectures Soft-
ware Developer’s Manual, Volume 3A.
3.7 OPERAND ADDRESSING
IA-32 machine-instructions act on zero or more operands. Some operands are speci-
fied explicitly and others are implicit. The data for a source operand can be located in:
the instruction itself (an immediate operand)
a register
a memory location
an I/O port
When an instruction returns data to a destination operand, it can be returned to:
a register
a memory location
an I/O port
3.7.1 Immediate Operands
Some instructions use data encoded in the instruction itself as a source operand.
These operands are called immediate operands (or simply immediates). For
Table 3-4. Effective Operand- and Address-Size Attributes in 64-Bit Mode
L Flag in Code Segment
Descriptor 1111 1111
REX.W Prefix 0000 1111
Operand-Size Prefix 66H NNYY NNYY
Address-Size Prefix 67H N Y N Y N Y N Y
Effective Operand Size 32 32 16 16 64 64 64 64
Effective Address Size 64 32 64 32 64 32 64 32
NOTES:
Y: Yes - this instruction prefix is present.
N: No - this instruction prefix is not present.