17.05.2015 Views

TI486 Microprocessor - Al Kossow's Bitsavers

TI486 Microprocessor - Al Kossow's Bitsavers

TI486 Microprocessor - Al Kossow's Bitsavers

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Instruction Fields<br />

7.2 Instruction Fields<br />

The general instruction format shows the larger fields that make up an<br />

instruction. Certain instructions have smaller encoding fields that vary<br />

according to the class of operation. These fields define information such as the<br />

direction of the operation, the size of the displacements, register encoding and<br />

sign extension. <strong>Al</strong>l the fields are described in Table 7-1 and the subsequent<br />

paragraphs provide greater detail.<br />

Table 7-1. Instruction Fields<br />

FIELD NAME<br />

Prefix<br />

Opcode<br />

w<br />

d<br />

s<br />

reg<br />

mod rim<br />

ss<br />

index<br />

base<br />

sreg2<br />

sreg3<br />

eee<br />

Address displacement<br />

Immediate data<br />

DESCRIPTION<br />

NUMBER OF BITS<br />

Specifies segment register override, address and operand size, repeat<br />

elements in string instruction, LOCK assertion.<br />

8 per byte<br />

Identifies instruction operation.<br />

1 or 2 bytes<br />

Specifies if data is byte or full size (full size is either 16 or 32 bits). 1<br />

Specifies direction of data operation. 1<br />

Specifies if an immediate data field must be sign-extended. 1<br />

General register specifier. 3<br />

Address mode specifier.<br />

2 for mod; 3 for rim<br />

Scale factor for scaled index address mode. 2<br />

General register to be used as index register. 3<br />

General register to be used as base register. 2<br />

Segment register for CS, SS, DS, and ES. 2<br />

Segment register for CS, SS, DS, ES, FS, and GS. 3<br />

Control, debug and test register specifier. 3<br />

Address displacement operand.<br />

1 , 2 or 4 bytes<br />

Immediate data operand.<br />

1 , 2 or 4 bytes<br />

7.2.1 Prefixes<br />

Prefix bytes can be placed in front of any instruction. The prefix modifies the<br />

operation of the immediately following instruction only. When more than one<br />

prefix is used, the order is not important. There are five types of prefixes as<br />

follows:<br />

1) Segment override explicitly specifies which segment register an<br />

instruction will use.<br />

2) Address size switches between 16- and 32-bit addressing. Selects the<br />

inverse of the default.<br />

3) Operand size switches between 16- and 32-bit addressing. Selects the<br />

inverse of the default.<br />

4) Repeat is used with a string instruction which causes the instruction to be<br />

repeated for each element of the string.<br />

5) Lock is used to assert the hardware LOCK signal during execution of the<br />

instruction.<br />

7-5

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!