Instrukční soubor mikroprocesoru (kódování instrukcí)

Dvě úrovně:

 

Způsob zakódování instrukcí:
pix43_1.gif (2625 bytes)

 

Instrukce je zakódována v bitovém poli. Instrukce se skládá z jednoho a více slov, přičemž při dekódování jsou nejdůležitější prvé dva bity. Operační kód zabírá obvykle 6 bitů bitového pole prvního bytu.

 

Značení Šířka pole Význam
Operační kód 6,00
D 1,00 směr provádění instrukce
W 1,00 šířka operandu
MOD 2,00 adresový mód
REG 3,00 číslo registru
RIM 3,00 způsob přístupu do paměti, číslo registru

 

Příklad dekódování instrukce:
pix43_2.gif (1926 bytes)

Bitové pole REG - 3 bity:

Pole REG Registr
  W=1 W=0
0,00 0,00 0,00 AX AL
0,00 0,00 1,00 CX CL
0,00 1,00 0,00 DX DL
0,00 1,00 1,00 BX BL
1,00 0,00 0,00 AH SP
1,00 0,00 1,00 CH BP
1,00 1,00 0,00 DH SI
1,00 1,00 1,00 BH DI

 

Interpretace pole W a D v instrukcí:

W

Velikost operandu
0,00 Jeden byte
1,00 Dva byte (slovo)

 

D První operand (cílový) Druhý operand (zdrojový)
0,00 MOD + RIM REG
1,00 REG MOD + RIM

 

Interpretace pole RIM pro pamě?ové operandy:

RIM

Báze Index
0,00 0,00 0,00 BX SI
0,00 0,00 1,00 BX DI
0,00 1,00 0,00 BP SI
0,00 1,00 1,00 BP DI
1,00 0,00 0,00 žádný SI
1,00 0,00 1,00 žádný DI
1,00 1,00 0,00 BP žádný
1,00 1,00 1,00 BX žádný

 

Interpretace pole MOD:

MOD

Význam
00 RIM není 110 - k offsetu podle RIM se nic nepoieítá
00 RIM=110 - RIM se neuvažuje, offset je obsažen v slovi za instrukcí
01 K offsetu podle RIM se poieítá jeden byte za instrukcí
10 K offsetu podle RIM se poieítá slovo za instrukcí
11 RIM obsahuje eíslo registru (jako REG)