Микропрограмма выборки команд.
Адрес МК |
Операция |
Поле |
Значение |
Функция |
00 |
ARAM:= IP IP:= IP + 2 |
B WM ALU SRC DST CONST |
C 3 3 5 4 2 |
IP ARAM:= RGB R + S + C(0) CONST, RGB Запись в РЗУ Размер инкр-та |
01 |
Чтение ОП RGK:= RGR Дешифрация |
MEM B DST CHA |
5 E 1 2 |
Чтение слова RGK РЗУ:= RGR JMAP |
Микропрограммы операций
Адрес МК |
Операция |
Поле |
Значение |
Функция |
||||
02 |
MOV reg1, reg2 |
MA MB DST CHA |
3 2 4 0 |
r/m reg2 Запись в РЗУ JZ |
||||
03 |
ADD reg1, reg2 |
MA MB ALU DST CHA |
3 2 3 4 0 |
r/m reg2 R + S + C(0) Запись в РЗУ JZ |
||||
04 |
SHL reg1, 1 |
MB SH N ALU DST CHA |
3 8 1 4 4 0 |
r/m ЛС влево Величина сдвига S + C(0) Запись в РЗУ JZ |
||||
05 |
Чтение операнда из памяти |
В MEM WM |
C 5 3 |
|
||||
06 |
r/m:=RGR |
MB ALU F DST |
3 4 1 4 |
|
||||
07 |
IP:=IP+2 |
B SRC ALU DST CONST CHA |
C 5 3 4 0002 0 |
|
||||
08 |
RW:=reg |
B MA ALU DST |
F 2 6 4 |
|
||||
09 |
reg:=r/m |
MA MB DST |
3 2 4 |
|
||||
0A |
r/m:=RW |
A MB DST |
F 3 4 |
|
||||
0B
|
If z(CX)=1 THEN GO TO E
|
A CC CHA CONST |
1 1 3 E |
|
||||
0C
|
DEC(CX)
|
B SRC ALU DST |
CX 5 1 4 |
|
||||
0D
|
r/m SHR 1 go to B
|
MB SH N ALU DST JFI CHA CONST |
3 2 1 4 4 4 3 B |
|
||||
0E |
END |
CHA |
0 |
|
||||
0F |
LOOP disp |
A
B ALU DST JFI CC CHA CONST |
8
1 1 4 1 1 3 0008 |
CS – взят произвольно, любой нулевой регистр. CX S – R – 1 + C(0) Запись в РЗУ Инверсия флажка JZ CJP Адрес перехода |
||||
10 |
|
CHA |
0 |
JZ |
||||
11 |
|
B SH ALU DST |
E E 4 4 |
RGK Расшир. знака S + C(0) Запись в РЗУ |
||||
12 |
|
A B ALU DST CHA |
E C 3 4 0 |
RGK IP R + S + C(0) Запись в РЗУ JZ |
||||
13 |
HALT |
JFI |
5 |
STOP |
Таблица преобразования адресов.
Начальный адрес |
Код операции |
02 |
1000.1011. 11 XX.X XXX |
03 |
0000.0011.11 XX.X XXX |
04 |
1101.0001. 11 10.0 XXX |
05 |
1101.0001. 11 10.1 XXX |
06 |
1110.0010. XXXX.XXXX |
0A |
1111.1111.0000.0000 |
.