Мы поможем в написании ваших работ!
ЗНАЕТЕ ЛИ ВЫ?
|
Система команд простейшего МП
Группа команд
| Маш. код В или Н
| Мнемоника команды
| Описание команды
| длина
|
| байты
| такты
|
|
|
| 01.r1.r2
| MOV r1,r2
| (r1)<-(r2)
|
|
|
|
|
| 0111 0.r.
| MOV M,r
| ((H,L))<-(r)
|
|
|
|
| п
| 01.r.110
| MOV r,M
| (r)<-((H,L))
|
|
|
| к
| е
| 00.r.110
| MVI r,data
| (r)<-data
|
|
|
| о
| р
| 3 6
| MVI M,data
| ((H,L))<-data
|
|
|
| м
| е
| 00rp 0001
| LXI rp,data
| (rp)<-data
|
|
|
| а
| с
| 3 A
| LDA addr
| (A)<-(addr)
|
|
|
| н
| ы
| 3 2
| STA addr
| (addr)<-(A)
|
|
|
| д
| л
| 2 A
| LHLD addr
| L<-(addr),H<-(addr+1)
|
|
|
| ы
| о
| 2 2
| SHLD addr
| (addr)<-L,(addr+1)<-H
|
|
|
|
| к
| 00r2 1010
| LDAX rp
| A<-((rp))
|
|
|
|
|
| 00rp 0010
| STAX rp
| ((rp))<-A
|
|
|
|
|
| E В
| XCHG
| (H)<->(D),(L)<->(E)
|
|
|
|
|
| 1000 0.r.
| ADD r
| (A)<-(A)+(r)
|
|
|
|
|
| 8 6
| ADD M
| (A)<-(A)+((H,L))
|
|
|
|
|
| C 6
| ADI data
| (A)<-(A)+data
|
|
|
| а
|
| 1000 1.r.
| ADC r
| (A)<-(A)+(r)+(C)
|
|
|
| р
|
| 8 E
| ADC M
| (A)<-(A)+(M)+(C)
|
|
|
| и
|
| C E
| ACI data
| (A)<-(A)+data+(C)
|
|
|
| ф
|
| 00rp 1001
| DAD rp
| (H,L)<-(H,L)+(rp)
|
|
|
| м
| к
| 1001 0.r.
| SUB r
| (A)<-(A)-(r)
|
|
|
| е
| о
| 9 6
| SUB M
| (A)<-(A)-(M)
|
|
|
| т
| м
| D 6
| SUI data
| (A)<-(A)-data
|
|
|
| и
| а
| 1001 1.r.
| SBB r
| (A)<-(A)-(r)-(C)
|
|
|
| ч
| н
| 9 E
| SBB M
| (A)<-(A)-(M)-(C)
|
|
|
| е
| д
| D E
| SBI data
| (A)<-(A)-data-(C)
|
|
|
| с
| ы
| 00.r.100
| INR r
| (r)<-(r)+1
|
|
|
| к
|
| 3 4
| INR M
| ((H,L))<-((H,L))+1
|
|
|
| и
|
| 00rp 0011
| INX rp
| (rp)<-(rp)+1
|
|
|
| е
|
| 00.r.101
| DCR r
| (r)<-(r)-1
|
|
|
|
|
| 3 5
| DCR M
| ((H,L))<-((H,L))-1
|
|
|
|
|
| 00rp 1011
| DCX rp
| (rp)<-(rp)-1
|
|
|
|
|
| 2 7
| DAA
| Десятичная коррекция
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1010 0.r.
| ANA r
| (A)<-(A)&(r)
|
|
|
|
|
| A 6
| ANA M
| (A)<-(A)&((H,L))
|
|
|
|
|
| E 6
| ANI data
| (A)<-(A)&data
|
|
|
|
|
| 1010 1.r.
| XRA r
| (A)<-(A)+mod2 (r)
|
|
|
|
|
| A E
| XRA M
| (A)<-(A)+mod2 ((H,L))
|
|
|
| л
|
| E E
| XRI data
| (A)<-(A)+mod2 data
|
|
|
| о
|
| 1011 0.r.
| ORA r
| (A)<-(A)\ /(r)
|
|
|
| г
| к
| B 6
| ORA M
| (A)<-(A)\ /((H,L))
|
|
|
| и
| о
| F 6
| ORI data
| (A)<-(A)\ /data
|
|
|
| ч
| м
| 1011 1.r.
| CMP r
| (A)?=(r) (сравнение)
|
|
|
| е
| а
| B E
| CMP M
| (A)?=((H,L))
|
|
|
| с
| н
| F E
| CPI data
| (A)?=data
|
|
|
| к
| д
| 0 7
| RLC
| (An+1)<-(An),
|
|
|
| и
| ы
|
|
| (A0)<-(A7), (C)<-(A7)
|
|
|
| е
|
| 0 F
| RRC
| (An)<-(An+1),
|
|
|
|
|
|
|
| (A7)<-(A0), (C)<-(A0)
|
|
|
|
|
| 1 7
| RAL
| (An+1)<-(An),
|
|
|
|
|
|
|
| (C)<-(A7), (A0)<-(C)
|
|
|
|
|
| 1 F
| RAR
| (An)<-(An+1),
|
|
|
|
|
|
|
| (C)<-(A0), (A7)<-(C)
|
|
|
|
|
| 2 F
| CMA
| (A)<-(A) инверсия (A)
|
|
|
|
|
| 3 F
| CMC
| (C)<-(C) инверсия (С)
|
|
|
|
|
| 3 7
| STC
| (С)=1
|
|
|
|
|
| С 3
| JMP addr
| (PC)<-(addr)
|
|
|
|
|
| 11.c.010
| Jcond addr
| (PC)<-(addr), при вы-
|
|
|
|
| у
|
|
| полнении условия cond
|
|
|
| п
| п
| C D
| CALL addr
| (PC)<-(addr),
|
|
|
| е
| р
|
|
| ((SP)-1)<-(PCh),
|
|
|
| р
| а
|
|
| ((SP)-2)<-(PC1),(SP)-2
|
|
|
| е
| в
| 11.c.100
| Ccond addr
| вызов подпрограммы при
|
| 11/17
|
| д
| л
|
|
| выполнении условия
|
|
|
| а
| е
| C 9
| RET
| Возврат из п.п.
|
|
|
| ч
| н
|
|
| (PC1)<-((SP)),
|
|
|
| и
| и
|
|
| (PCh)<-((SP)+1),(SP)+2
|
|
|
|
| я
| 11.c.000
| Rcond
| Возврат при условии
|
| 5/11
|
|
|
| E 9
| PCHL
| (PC)<-(H,L)
|
|
|
|
|
| 11.n.111
| RST n
| Запуск c адреса 8*(n)
|
|
|
|
|
|
|
|
|
|
|
|
|
| D B
| IN port
| (A)<-(port)
|
|
|
| в
| с
| D 3
| OUT port
| (port)<-(A)
|
|
|
| в
| т
| 11rp 0101
| PUSH rp
| ((SP))<-(rp),(SP)-2
|
|
|
| о
| е
| F 5
| PUSH PSW
| ((SP)-1)<-(A),
|
|
|
| д
| к
|
|
| ((SP)-2)<-(F),(SP)-2
|
|
|
|
|
| 11rp 0001
| POP rp
| (rp)<-((SP))-(SP)+2
|
|
|
|
|
| F 1
| POP PSW
| (F)<-((SP)),
|
|
|
|
|
|
|
| (A)<-((SP)+1),(SP)+2
|
|
|
|
|
| E 3
| XTHL
| (L)<->((SP)),
|
|
|
|
|
|
|
| (H)<->((SP)+1)
|
|
|
| в
| у
| F 9
| SPHL
| (SP)<-(H,L)
|
|
|
| ы
| п
| F B
| EI
| Разрешение прерывания
|
|
|
| в
| -
| F 3
| DI
| Запрещение прерывания
|
|
|
| о
| и
| 7 6
| HLT
| Останов.
|
|
|
| д
| е
| 0 0
| NOP
| Пустая команда
|
|
|
| | | | | | | | | | | | | |
cond
| Значение признаков
| код
| r
| rp
| n
| NZ
| Z=0,
| Результат = 0
|
| В
| BC
|
| Z
| Z=1,
| Результат = 0
|
| С
| DE
|
| NC
| C=0,
| нет переноса
|
| D
| HL
|
| C
| C=1,
| есть перенос
|
| E
| SP
|
| PO
| P=0,
| число единиц в результате нечетно
|
| H
|
|
| PE
| P=1,
| число единиц в результате четно
|
| L
|
|
| P
| S=0,
| результат положительный
|
| M
|
|
| M
| S=1,
| результат отрицательный
|
| A
|
|
|
| Примечания
1. М – ячейка памяти, адресуемая парой регистров H,L.
2. Такты (x/y), x – при невыполнении условий, y – при выполнении условий.
3. Признак АС – вспомогательный перенос (из младшей тетрады в старшую, анализируется командой DAA.
4. Команды LDAX и STAX работают только с парами регистров ВС и DE.
5. Команды PUSH(rp) и POP(rp) выполняются аналогично командам PUSH PSW и POP PSW (А – старший, F – младший).
6. Data – 8 – или 16-разрядные данные, addr – 16-разрядный адрес, port – 8-разрядный адрес внешнего устройства.
7. Распределение признаков в регистре RS: бит 7 6 5 4 3 2 1 0
признак S Z 0 AC 0 P 1 C
8. PCh, PCl – соответственно старший и младший байты счетчика команд.
|
|
|
|
|
|
|
|
|
|
|
Приложение 2
Содержимое регистра признаков
Содержимое регистра
признаков
| Активные признаки
(= 1)
|
| -
C
P
P, C
AC
AC, C
AC, P
AC, P, C
Z, P
Z, P, C
Z, AC, P
Z, AC, P, C
S
S, C
S, P
S, P. C
S, AC
S. AC, C
S, AC. P
S, AC, P, C
|
Разработала доцент Дроздова Галина Дмитриевна
Отпечатано в авторской редакции
Подписано в печать с оригинал-макета
Формат 69х84 1/16. Бумага для множ. апп. Печать офсетная.
Усл. печ. л. 2,8 Тираж.
Заказ
Петербургский государственный университет путей сообщения.
190031, СПб., Московский пр., д.9
Типография ПГУПС. 190031, СПб., Московский пр., д.9
|