Pergunta

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? Thanks in advance.

Foi útil?

Solução

  • 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.

Outras dicas

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

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top