Lista rozkazów procesora
Lp. |
Kod |
Mnemonik |
Argument |
Mikrooperacje |
Argumenty |
UWAGI |
3 |
0 0 0 0 0 0 |
NOP |
|
|
Bezargumentowy |
|
4 |
1 0 0 0 0 0 |
INC |
ARG:= AC |
AC← AC + 1 |
Bezargumentowy |
Dopuszczalne kombinacje Bity(7,8)={00,10,01} Ustawia flagi |
5 |
0 1 0 0 0 0 |
ADD |
ARG:= (MBR, M[X] ) |
AC← AC + ARG |
|
Dopuszczalne kombinacje Bity(7,8)={00,10,01} Ustawia flagi |
6 |
1 1 0 0 0 0 |
DEC |
ARG:= AC |
AC← AC -1 |
Bezargumentowy |
Dopuszczalne kombinacje Bity(7,8)={00,10,01} Ustawia flagi |
7 |
0 0 1 0 0 0 |
SUB |
ARG:= (MBR, M[X] ) |
AC← AC - ARG |
|
Dopuszczalne kombinacje Bity(7,8)={00,10,01} Ustawia flagi |
8 |
1 0 1 0 0 0 |
CMP |
ARG:= (MBR, M[X] |
AC← AC +! ARG+1 |
|
Dopuszczalne kombinacje Bity(7,8)={00,10,01} Ustawia flagi, nie wpisuje wyniku do AC |
11 |
0 1 1 0 0 0 |
JMP |
ARG:=(AC, M[X]) |
PC←ARG |
|
Dopuszczalne kombinacje Bity(7,8)={00,10,01} |
9 |
1 1 1 0 0 0 |
JNZ |
ARG:= (MBR, M[X]) |
IF( Z==0) PC←ARG |
|
Dopuszczalne kombinacje Bity(7,8)={00,10,01} |
9 |
0 0 0 1 0 0 |
JZ |
ARG:= (MBR, M[X]) |
IF( Z==1) PC←ARG |
|
Dopuszczalne kombinacje Bity(7,8)={00,10,01} |
10 |
1 0 0 1 0 0 |
LDA |
ARG:=(MBR, M[X]) |
AC←ARG |
|
Dopuszczalne kombinacje Bity(7,8)={00,10,01} |
11 |
0 1 0 1 0 0 1 1 |
STO |
ARG:=(MBR, M[X]) |
M[X]←AC |
|
BIT(7,8)==1(przejście z fazy pobrania do fazy wykonania rozkazu |
12 |
1 1 0 1 0 0 |
IRET |
|
|
Bezargumentowy |
Powrót z obsługi przerwania |
13 |
0 0 1 1 0 0 |
SHRA |
ARG:= AC |
AC← shift_right AC |
Bezargumentowy |
Przesuniecie w prawo Nie ustawia flag |
14 |
1 0 1 1 0 0 |
SHLA |
ARG:= AC |
AC← shift_left AC |
Bezargumentowy |
Przesuniecie w lewo Nie ustawia flag |
15 |
0 1 1 1 0 0 |
JGT |
ARG:= (MBR, M[X]) |
IF( S==0) PC←ARG (S - flaga w ALU) |
|
Dopuszczalne kombinacje Bity(7,8)={00,10,01} |
16 |
1 1 1 1 0 0 |
JLT |
ARG:= (MBR, M[X]) |
IF( S==1) PC←ARG |
|
Dopuszczalne kombinacje Bity(7,8)={00,10,01} |
17 |
0 0 0 0 1 0 |
AND |
ARG:= (MBR, M[X]) |
AC←AC(&) ARG |
|
Iloczyn logiczny Ustawia flagi |
18 |
1 0 0 0 1 0 |
OR |
ARG:= (MBR, M[X]) |
AC←AC(||) ARG |
|
Suma logiczna Ustawia flagi |
19 |
0 1 0 0 1 0 |
XOR |
ARG:= (MBR, M[X]) |
AC←AC(xor) ARG |
|
Xor Ustawia flagi |
20 |
1 1 0 0 1 0 |
NOT |
ARG:= AC |
AC←!AC |
Bezargumentowy |
Negacja Nie ustawia flag |
21 |
0 0 1 0 1 0 |
LDFLAG |
ARG:= AC |
AC←FLAGS |
Bezargumentowy |
Załadowanie do rejestru AC rejestru FLAG |
22 |
1 1 1 1 1 0 |
STOP |
|
|
Bezargumentowy |
Zatrzymanie procesora |