narayanpatra
narayanpatra

Reputation: 5691

What is iii, rr and mmm?

I am reading the book The Art of Assembly Language. I came across this paragraph.

To determine a particular instruction’s opcode, you need only select the appropriate bits for the iii, rr, and mmm fields. For example, to encode the mov ax, bx instruction you would select iii=110 (mov reg, reg), rr=00 (ax), and mmm=001 (bx). This produces the one-byte instruction 11000001 or 0C0h.

Here I can't understand what is iii, rr and mmm. Can anybody please explain?

Upvotes: 1

Views: 444

Answers (2)

siride
siride

Reputation: 209445

  • iii represents a three-bit field (because there are three i's)
  • rr, a two-bit field
  • mmm another three-bit field

The reason letters are used like this is so that when you see iiirrmm, you know which bits correspond to which fields in the opcode.

Upvotes: 4

Ignacio Vazquez-Abrams
Ignacio Vazquez-Abrams

Reputation: 798436

They're bits in the opcode. The sequence iiirrmmm makes up the opcode byte.

Upvotes: 0

Related Questions