Tải bản đầy đủ (.pdf) (11 trang)

Giáo trình hướng dẫn cách đưa địa chỉ vào dữ liệu trong monitor phần 4 ppt

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (117.93 KB, 11 trang )


Thieỏt keỏ Thieỏt bũ thửùc taọp vi xửỷ lớ 8085 Trang 30



PUSH PSW
PUSH B
PUSH D
PUSH H
DE HL
HL BC
BC DE
BC (BC) 1
D (Add
copy + 2
)
E (Add
copy + 3
)
*1 : A M
STAX D
HL (HL) - 1
DE (DE) - 1


S


ẹ *2
S




ẹ *3

*3 : POP H
POP D
POP B
POP PSW



COPY C.
1

H = B

L = C

RET


Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 31
PUSH PSW DCX D
PUSH B MOV A, B
PUSH D CMP H
PUSH H JZ *2
XCHG JMP *1
MOV H,B *2: MOV A, C
MOV L,C CMP L
MOV B,D JZ *3

MOV C,E JMP *1
LDA Add
copy + 2
*3 : POP H
MOV D,A POP D
LDA Add
copy + 3
POP B

MOV E,A POP PSW
DCX B RET
*1 : MOV A, M
STAX D
DCX H

 Các chương trình con sau đây xem phụ lục
+ DAUCHAM
+ DEMP
+ XADD




 DEL : Là chương trình con dễ xoá ( nạp 00H ) một vùng dữ liệu
 Input : Nạp đòa chỉ đầu của vùng cần xoá
Nạp đòa chỉ cuối của vùng cần xoá
 Output : Chương trình không làm thay đổi nội dung các thanh ghi




PUSH PSW
PUSH B
PUSH D
DEL

DEL


Thieỏt keỏ Thieỏt bũ thửùc taọp vi xửỷ lớ 8085 Trang 32
PUSH H
Add
tt
(01H)
CALL XADD
A (83H)
Add
CT79
(A)
A (06H)
Add
DT79
(A)
CALL DAUCHAM
*1: CALL KYBRD


S S


ẹ *2 ẹ


*8 : CALL PHIMSO

S

CALL DEMP
HL DE
Add
tt
(01H)
CALL XADD
A (83H)
Add
CT79
(A)
A (5BH)
Add
DT79
(A)
CALL DAUCHAM







PHIMSO



ADD


(ADD
TT
)=01H


1

a


Thieỏt keỏ Thieỏt bũ thửùc taọp vi xửỷ lớ 8085 Trang 33




* 3 : CALL KYBRD


S S


ẹ *4 ẹ

*10 : CALL PHIMSO

S


CALL DEMP
BC DE
BC (BC)+1
*5 : M (00H)
HL (HL)+1




*6



*7

* 7 : POP H
CALL DPHLM
Add
TT
(01H)
POP D
POP B
1

a

PHIMSO


ADD



(Add
TT
)=01H


H = B


L = C



Thieỏt keỏ Thieỏt bũ thửùc taọp vi xửỷ lớ 8085 Trang 34
POP PSW




DEL
PUSH PSW STA Add
DT79

PUSH B CALL DAUCHAM
PUSH D *3 : CALL KYBRD
PUSH H CPI 10H
MVI A, 01H JM *10
STA Add
TT

CPI ADD
CALL XADD JZ *4
MVI A, 83H JMP *3
STA Add
CT79
*4 :

LDA

Add
TT

MVI A, 06H CPI 01H
STA Add
DT79
JZ

*7

CALL DAUCHAM CALL DEMP
*1 : CALL KYBRD MOV B, D
CPI 10H MOV C, E
JM *8 INX B
CPI ADD *5 : MOV M, 00H
JZ *2 INX H
JMP *1 MOV A, H
*2 : LDA Add
TT
CMP B
CPI 01H JZ *6

IZ *7 JMP *5
CALL DEMP *6 : MOV A, L
MOV H, D CMP C
MOV L, E JZ *7
MVI A, 01H JMP *5
STA Add
TT
*7 : POP H
CALL XADD CALL DPHLM
MVI A, 83H MVI A, 01H
STA Add
CT79
STA Add
TT

MVI A, 5B POP D
RET


Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 35


POP B JMP *1
POP PSW *9 : CALL PHIMSO
RET JMP *3
*8 : CALL PHIMSO


Các chương trình con được gọi :
 DAUCHAM ( xem phụ lục )

 XADD ( xem phụ lục )
 DEMP (xem phụ lục )
 KYBRD ( xem chương 4 )


Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 36





 REG : Đây là chương trình con có chức năng hiển thò nội dung và nạp
nội dung các thanh ghi.
 Input : Nội dung các thanh ghi.
 Output : Hiển thò nội dung các thanh ghi.
Add
TT
= 01H

XEM GIẢI THUẬT REG CUỐI CHƯƠNG 4

REG


PUSH F STA Add
REG+4

STA Add
REG+0
MOV A, E

MOV A, H STA Add
REG+5
STA Add
REG+6
*1 : MVI A, 01H
MOV A, L STA Add
TT

STA Add
REG+7
LXI H, Add
REG+0

POP H MVI B, 77
MOV A, L CALL KYTUB
STA Add
REG+1
CALL DPM
MOV A, B *2 : CALL KYBRD
STA AdD
REG+2
CPI

10H

MOV A, C JM *18
STA Add
REG+3
CPI ‘UP’
MOV A, D JZ *3

REG


Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 37
CPI “DOWN” JMP *16
JZ *17 *9 : MVI B, 71 H
CPI “REG” CALL KYTUB
JZ *19 JMP *16
*3 : LDA Add
TT
*10 : MVI B, 7 C H
CPI 00H CALL KYTUB
JZ *4 JMP *16
JMP *5 *11 : MVI B, 39 H
*4 : CALL ORQP CALL KYTUB
MOV M, A JMP *16
*5 : INX H *12 : MVI B, 5 E H
*6 : MOV A, H CALL KYTUB
CPI 9 F H JMP *16
JZ *7 *13 : MVI B, 79 H
JMP *1 CALL KYTUB
*7 : MOV A, L JMP *16
CPI D 2 H *14 : MVI B, 76 H
JZ *8 CALL KYTUB
CPI D3 JMP *16
JZ *9 *15 : MVI B, 38 H
CPI D 4 CALL KYTUB
JZ *10 JMP *16
CPI D 5 *16 : CALL DPM
JZ *11 MVI A, 01 H

CPI D 6 STA Add
TT

JZ *12 JMP *2
CPI D 7 *17 : DCX H
JZ *13 JMP *6
CPI D 8 *18 : CALL PHIMSO
JZ *14 JMP *2
CPI D 9 * 19 : LXI H, Add
REG+0

JZ *15 MOV B, M; lấy AF
JMP *1 INX H; thông qua
*8 : MVI B, 77 H MOV C, M; ngăn xếp
CALL KYTUB PUSH B; và BC


Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 38

INX H MOV E, M
MOV B, M XCHG
INX H POP D
MOV D, M CALL DPHLM
INX H MVI A, 01 H
MOV E, M STA Add
TT

PUSH D POP PSW; lấy AF
INX H ; lấy HL thông qua BC
MOV D, M;thông và ngăn xếp

INX H; qua DE RET

 DPM : Chương trình con hiển thò nội dung ô nhớ có đòa chỉ trong HL ( xem
phụ lục ).
 PHIMSO : Hiển thò đòa chỉ và dữ liệu ( xem phụ lục ).
 KYBRD : Chương trình con quét phím.
 KYTUB : Hiển thò kí tự và dấu bằng ( xem phụ lục )
 ORMP : Hợp hai ô quét phím ( xem phụ lục )
Vùng nhớ Add
REG
dùng để lưu nội dung của các thanh ghi.

Add
REG+0
: 9 F D 2H A
Add
REG+1
: 9 F D 3H F
Add
REG+2
: 9 F D 4H B
Add
REG+3
: 9 F D 5H C
Add
REG+4
: 9 F D 6H D
Add
REG+5
: 9 F D 7H E

Add
REG+6
: 9 F D 8H H
Add
REG+7
: 9 F D 9H L




Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 39


 SRCH : Là chương trình con có tác vụ tìm kiếm dữ liệu trong bộ
nhớ.
 Input : Nạp dữ liệu cần tìm.
Nạp đòa chỉ cuối của vùng cần xoá
 Output : Hiển thò đòa chỉ và dữ liệu vừa tìm được. Thay đổi nội
dung lặp thanh ghi HL.
Add
TT
= 03H



PUSH PSW



*7

S
Add
TT
(01H ) HL (HL) +1
CALL DPFIND A (Add
SRCH
)
*1: CALL KYBRD

S S


Đ Đ *2
S
*6 : CALL PHIMSO

*3 Đ CALL DPHLM
POP PSW
*3 : CALL ORMP

Add
SRCH
(A)
*4 : CPI M

PHIMSO


UP



(Add
TT
)=00H


SRCH

SRCH

Add
TT
= 03H

RET


Thieỏt keỏ Thieỏt bũ thửùc taọp vi xửỷ lớ 8085 Trang 40
HL (HL) + 1

S



*5 : Add
TT
03H
CALL DPHLM
POP PSW






SRCH

PUSH PSW CALL ORMP
LDA Add
TT
STA Add
SRCH

CPI 03H *4 : CMP M
JZ *7 JZ *5
MVI A, 01H INX H
STA Add
TT
JMP *4
CALL DPFIND *5 : MVI A, 03H
*1 : CALL KYBRD STA Add
TT

CPI 10H CALL DPHLM
JM *6 POP PSW
CPI UP RET
JZ *2 *6 : CALL PHIMSO
JMP *1 JMP *1
*2 : LDA Add
TT
*7 : INX H

CPI 00H LDA Add
SRCH

JZ *3 JMP *4
CALL DPHLM
POP PSW
RET

Z = 1

RET

×