Xem mẫu
- *11 : PUSH H STA AddTT
LHLD AddINS + 2 POP D
CALL SHM POP B
INX B RET
POP H *14 : CALL UP
CALL PHIMSO SHLD AddINS + 0
*12 : CALL KYBRD MOV D,H
CPI 10H MOV E,L
JZ *15H JMP *7
JMP *8 *15 : CALL PHIMSO
*13 : POP H JMP *12
CALL DPHLM *16 : CALL PHIMSO
MVI A,01H JMP *2
* Caùc chöông trình con ñöôïc goïi :
DAUCHAM : xem phuï luïc
DEMP : xem phuï luïc
DPHLM : xem phuï luïc
DOWN : xem CHÖÔNG 4
KYBRD : xem CHÖÔNG 4
PHIMSO : xem CHÖÔNG 4
SDC : xem CHÖÔNG 4
SHM : xem CHÖÔNG 4
XADD : xem phuï luïc
Trang 52
Thieát keá Thieát bò thöïc taäp vi xöû lí 8085
- SHM
SHM : Laø chöông trình con coù nhieäm vuï dòch döõ lieäu xuoáng moät
oâ nhôù.
Input: Naïp HL laø ñòa chæ giaùp choùt cuûa vuøng INS. Naïp DE laø ñòa
chæ oâ nhôù ñöôïc cheøn vaøo.
Output: Khoâng ñieàu chænh noäi dung caùc thanh ghi
SHM
PUSH PSW
PUSH B
PUSH D
BC HL
BC (BC) + 1
DE (DE) - 1
*1
A (M)
STAX B
HL (HL) - 1
BC (BC) – 1
S
H=D
*2 Ñ
S
L=E
Ñ *3
Trang 53
Thieát keá Thieát bò thöïc taäp vi xöû lí 8085
- POP D
POP B
POP PSW
RET
SHM
PUSH PSW CMP D
PUSH B JZ *2
PUSH D JMP *1
MOV B,H *2 : MOV A,L
MOV C,L CMP E
INX B JZ *3
DCX D JMP *1
*1 : MOV A,M *3 : POP D
STAX B POP B
DCX H POP PSW
DCX B RET
MOV A,H
SDC
SDC : Laø chöông trình con coù khaû naêng söûa ñòa chæ nhöõng leänh
lieân quan ñeán ñòa chæ ( leänh nhaûy, leänh goïi, leänh löu tröõ ).
Input : Naïp BC laø khoaûng thay ñoåi ñòa chæ.
Naïp ñòa chæ oâ nhôù caàn cheøn vaøo AddINS + 4 vaø AddINS + 5
Naïp ñòa chæ giaùp choùt cuûa vuøng caàn INS vaøo AddINS + 2 vaø
AddINS + 3
Naïp ñòa chæ trôû veà khi thöïc hieän xong chöông trình vaøo
AddINS + 0 vaø AddINS + 1
Naïp ñòa chæ baét ñaàu söûa ñòa chæ
Output : Hieån thò ñòa chæ hieän haønh tröôùc luùc INS
Chöông trình khoâng laøm thay ñoåi noäi dung caùc thanh ghi
Trang 54
Thieát keá Thieát bò thöïc taäp vi xöû lí 8085
- SDC
PUSH PSW
PUSH D
PUSH H
Addtt (01H)
CALL XADD
A (83H)
AddCT79 (A)
A (7CH)
AddDT79 (A)
*1: CALL KYBRD
S S
PHIMSO ADD
Ñ *17 *2 Ñ
S
(ADDTT)=00H
CALL PHIMSO
Ñ *3
*3 : CALL DEMP
HL DE
*4 : LDA AddINS + 2
E (A)
LDA AddINS + 3
D (A)
DE (DE) - 1
a
1
Trang 54
Thieát keá Thieát bò thöïc taäp vi xöû lí 8085
- 1 a
*5
Ñ *15 Ñ
H=D L=E
*16
*6 S S
LHLD AddINS + 0
PUSH B CALL DPHLM
CALL LMB POP H
POP D
POP PSW
Leänh 1byte
RET
*7
(C=10H; C=11H)
HL (HL) + 1
S POP B
Leänh 2byte
*8
(C=20H)
HL (HL) + 2
S POP B
Leänh 3byte
*9
khoâng lieân quan
ñeán ñòa chæ
(C=32H)
HL (HL) + 3
POP B
S
2
a
Trang 55
Thieát keá Thieát bò thöïc taäp vi xöû lí 8085
- 2 a
POP B
HL (HL) + 1
PUSH H
E (M)
HL (HL) + 1
PUSH H
D (M)
LDA AddINS + 5
S S
A
- a
3
CALL ADDBCDE
POP H
M (D)
POP H
M (E)
HL (HL) + 1
SDC
PUSH PSW *3 : CALL DEMP
PUSH D MOV H,D
PUSH H MOV L,E
MVI A,01H *4 : LDA AddINS + 2
STA AddTT MOV E,A
CALL XADD LDA AddINS + 3
MVI A,83H MOV D,A
STA AddCT79 DCX D
MVI A,7CH *5 : MOV A,H
STA AddDT79 CMP D
*1 : CALL KYBRD JZ *15
CPI 10H *6 : PUSH B
JZ *17 CALL LMB
CPI ‘ADD’ CPI 10H
JZ *2 JZ *7
JMP *1 CPI 11H
*2 : LDA AddTT JZ *7
CPI 00H CPI 20H
JZ *3 JZ *8
JMP *1 CPI 32H
Trang 57
Thieát keá Thieát bò thöïc taäp vi xöû lí 8085
- JZ *9 POP H
POP B MOV M,D
INX H POP H
PUSH H MOV M,E
MOV E,M INX H
INX H JMP *4
PUSH H *15 : MOV A,L
MOV D,M CMP E
LDA AddINS + 5 JZ *16
CMP D JMP *6
JZ *11 *16 : LHLD AddINS +0
JM *12 CALL DPHLM
*10 : INX H POP H
POP D POP D
POP D POP PSW
JMP *4 RET
*11 : LDA AddINS + 4 *17 : CALL PHIMSO
CMP E JMP *1
JZ *12 *7 : INX H
JM *12 POP B
JMP *10 JMP *5
*12 : LDA AddINS + 3 *8 : INX H
CMP D INX H
JZ *13 POP B
JM *10 JMP *5
JMP *14 *9 : INX H
*13 : LDA AddINS + 2 INX H
CMP E INX H
JZ *10 POP B
JM *10 JMP *5
*14 : CALL ADDBCDE
* Caùc chöông trình con ñöôïc goïi :
DEMP : xem phuï luïc
DPHLM : xem phuï luïc
Trang 58
Thieát keá Thieát bò thöïc taäp vi xöû lí 8085
- PHIMSO : xem CHÖÔNG 4
LMP : xem CHÖÔNG 4
ADDBCDE
ADDBCDE
ADDBCDE : Ñaây laø chöông trình con duøng ñeå coäng hai caëp
thanh ghi DE vaø BC
Input : Naïp DE, BC
Output : Keát quaû trong DE
Chæ thanh ghi D , E bò thay ñoåi.
ADDBCDE
PUSH PSW ADC B
PUSH B MOV D,A
MOV A,E POP B
ADD C POP PSW
MOV E,A RET
MOV A,D
PC
PC : Laø chöông trình con duøng ñeå chaïy chöông trình cuûa ngöôøi
söû duïng.
Input : Naïp ñòa chæ baét ñaàu chaïy
Output : Thöïc hieän chöông trình ngöôøi söû duïng tôùi khi naøo gaëp
leänh döøng
Trang 59
Thieát keá Thieát bò thöïc taäp vi xöû lí 8085
- PC
PUSH PSW
PUSH D
Addtt (01H)
CALL DPPC
CALL DAUCHAM
*1: CALL KYBRD
S S
PHIMSO GO
*4 Ñ *2 Ñ
S
(ADDTT)=00H
CALL PHIMSO
*3 Ñ
CALL DPHLM
POP D
CALL DEMP POP PSW
HL DE
POP D RET
POP PSW
PC HL
PC
Trang 60
Thieát keá Thieát bò thöïc taäp vi xöû lí 8085
- PUSH PSW
PUSH D
MVI A,01H
STA AddTT
CALL DPPC
CALL DAUCHAM
*1 : CALL KYBRD
CPI 10H
JM *4
CPI ‘GO’
JZ *2
JMP *1
*2 : LDA AddTT
CPI 00H
JZ *3
CALL DPHLM
POP D
POP PSW
RET
*3 : CALL DEMP
MOV H,D
MOV L,E
POP D
POP PSW
PCHL
* Caùc chöông trình con ñöôïc goïi :
DEMP : xem phuï luïc
DPHLM : xem phuï luïc
DAUCHAM : xem phuï luïc
PHIMSO : xem CHÖÔNG 4
KYBRD : xem CHÖÔNG 4
DPPC : Laø chöông trình con xuaát hieän thoâng baùo
naïp PC (xem phuï luïc)
Treân ñaây laø moät soá chöông trình con ñaõ ñöôïc thieát keá vaø chaïy thöû
nghieäm treân SDK 85 (System Design Kit 8085) cuûa tröôøng ÑHSPKT, phaàn
coøn laïi ñöôïc trình baøy trong phaàn phuï luïc. Do thôøi gian coù haïn neân khoâng
theå thöïc hieän nhö mong muoán, nhöng ñeå thieát keá, chaïy thöû vaø thi coâng hôn
Trang 61
Thieát keá Thieát bò thöïc taäp vi xöû lí 8085
nguon tai.lieu . vn