The internal encoding of an instruction can include two byte-long prefixes: the address-size prefix, 67H, and the operand-size prefix, 66H. (A later section, "Instruction Format," shows the position of the prefixes in an instruction's encoding.) These prefixes override the default segment attributes for the instruction that follows. The following table shows the effect of each possible combination of defaults and overrides.
Effective Size Attributes
┌────────────────────────────┬────┬────┬────┬────┬────┬────┬────┬────┐ │Segment Default D = ... │0 │0 │0 │0 │1 │1 │1 │1 │ ├────────────────────────────┼────┼────┼────┼────┼────┼────┼────┼────┤ │Operand-Size Prefix 66H │N │N │Y │Y │N │N │Y │Y │ ├────────────────────────────┼────┼────┼────┼────┼────┼────┼────┼────┤ │Address-Size Prefix 67H │N │Y │N │Y │N │Y │N │Y │ ├────────────────────────────┼────┼────┼────┼────┼────┼────┼────┼────┤ │Effective Operand Size │16 │16 │32 │32 │32 │32 │16 │16 │ ├────────────────────────────┼────┼────┼────┼────┼────┼────┼────┼────┤ │Effective Address Size │16 │32 │16 │32 │32 │16 │32 │16 │ └────────────────────────────┴────┴────┴────┴────┴────┴────┴────┴────┘Y = Yes, this instruction prefix is present