Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
76,14 KB
Nội dung
Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 34 ADD : Là chương trình con có tác vụ nhận đòa chỉ mới , hiển thò đòa chỉ và dữ liệu mới đó. Input : Lấy dữ liệu trong 4 ô quét phím Output : Hiện thò đòa chỉ và dữ liệu Add TT = 01H Không điều chỉnh các thanh ghi PUSH PSW PUSH D CALL DEQP HL DE CALL DPHLM Add TT (01H) POP D POP PSW ADD PUSH PSW PUSH D CALL DEQP XCHG CALL DPHLM MVI A,01H STA Add TT POP D POP PSW RET DPHLM ( xem phụ lục ) ADD RET ADD Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 35 COPY : Là chương trình con có tác vụ copy dữ liệu từ vùng này sang vùng khác Input : Nạp đòa chỉ đầu, đòa chỉ cuối của vùng gốc và đòa chỉ đầu của vùng đích Output : Copy , hiển thò đòa chỉ và dữ liệu Chương trình không làm thay đổi nội dung các thanh ghi PUSH PSW PUSH B PUSH D 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 Đ Đ *16 : CALL PHIMSO S *3 : CALL DEQP HL DE COPY PHIMSO ADD (ADD TT )=01H a COPY Thieỏt keỏ Thieỏt bũ thửùc taọp vi xửỷ lớ 8085 Trang 36 Add tt (01H) CALL XADD A (83 H) Add CT79 (A) A (5 B H) Add DT79 (A) CALL DAUCHAM *4: CALL KYBRD S S ẹ *5 ẹ ẹ *17 : CALL PHIMSO S *6 : CALL DEQP BC DE BC (BC)+1 CALL SUBBCHL Add TT (01H) CALL XADD A (83H) Add CT79 (A) A (4FH) Add DT79 (A) CALL DAUCHAM PHIMSO ADD (ADD TT )=01H 1 a a Thieỏt keỏ Thieỏt bũ thửùc taọp vi xửỷ lớ 8085 Trang 37 * 7 : CALL KYBRD S S ẹ *8 ẹ ẹ *18 : CALL PHIMSO S *9 : CALL ORQP A (Add copy+1 ) Add copy+3 (A) + (E) A (Add copy+0 ) Add copy+2 (A) + (D) + Cy S *20 ẹ *10 S S *11 ẹ ẹ 1 a PHIMSO ADD (Add TT )=01H D H HIMSO D = H E L E = L a1 b 2 a Thieỏt keỏ Thieỏt bũ thửùc taọp vi xửỷ lớ 8085 Trang 38 S S *12 ẹ *8 ẹ S S ẹ ẹ * 14: CALL COPY C.0 * 13: CALL COPY C.1 *15: POP H CALL DPHLM Add TT (01H) POP D POP B POP PSW COPY D = B D B E = C E C b 2 a RET Thieỏt keỏ Thieỏt bũ thửùc taọp vi xửỷ lớ 8085 Trang 39 PUSH PSW JZ *5 PUSH B JMP *4 PUSH D *5 : LDA Add TT PUSH H CPI 01H MVI A, 01H JZ *15 STA Add TT *6 : CALL DEMP CALL XADD MOV B, D MVI A, 83H MOV C,E STA Add CT79 CALL SUBBCHL MVI A,06H MVI 01H STA Add DT79 STA Add TT CALL DAUCHAM CALL XADD *1 : CALL KYBRD MVI A, 83H CPI 10H STA Add CT79 JM *16 MVI A, 4 F H CPI ADD STA Add DT79 JZ *2 CALL DAUCHAM JMP *1 *7 : CALL KYBRD *2 : LDA Add TT CPI 10H CPI 01H JM *18 JZ *15 CPI ADD *3 : CALL DEMP JZ *8 MOV H, D JMP *7 MOV L, E *8 : LDA Add TT MVI A,01H CPI 01H STA Add TT JZ *15 CALL XADD *9 : CALL DEMP MVI A, 83H LDA Add copy+1 STA Add CT79 ADD E MVI A, 5BH STA Add copy+3 STA Add DT79 LDA Add copy+0 CALL DAUCHAM ADC D *4 : CALL KYBRD STA Add copy+2 CPI 10H MOV A,D JM *17 CMP H CPI ADD JZ *10 Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 40 JP *11 *13 : CALL COPY C.1 JMP *14 JMP *15 *10 : MOV A,E *14 : CALL COPY C.0 CMP L *15 : POP H JZ *15 CALL DPHLM JP *11 MVI A, 01H JMP *14 STA Add TT *11 MOV A,D POP D CMP B POP B JZ *12 POP PSW JP *14 RET JMP *13 *16 : CALL PHIMSO *12 MOV A,E JMP *1 CMP C *17 : CALL PHIMSO JZ *13 JMP *4 JP *14 *18 : CALL PHIMSO JMP *13 JMP *7 Vùng nhớ Add copy dùng để lưu trữ kết quả của các phép cộng trừ cặp thanh ghi phục vụ cho các chương trình con SUBBCHL và COPY C.1 vùng nhớ Add copy nằm trong vùng nhớ Add REC . Add copy+0 : 9FD2H Add copy+1 : 9FD3H Add copy+2 : 9FD4H A (B) – (H) - Cy Add copy+3 : 9FD5 A (C) – (L) Các chương trình con được gọi : SUBBCHL SUBBCHL: Là chương trình con có tác vụ trừ nội dung thanh ghi BC cho nội dung trong HL. (C) – (L) (B) – (H) – Cy (A) + (E) (A) + (D) + Cy Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 27 ĐÍCH Input : Nạp số bò trừ vào BC Nạp số trừ vào HL Output : Hiệu số được nạp vào 2 ô nhớ Add copy+0 và Add copy+1 không làm thay đổi nội dung các thanh ghi. PUSH PSW A (C) A (A) – (L) Add COPY + 1 (A) A (B) A (A) – (H) – C y Add COPY + 0 (A) POP PSW SUBBCHL PUSH PSW MOV A,C SUB L STA Add COPY + 1 MOV A,B SBB H STA Add COPY + 0 POP PSW RET COPY C.O : Đây là chương trình con sao chép dữ liệu từ vùng này qua vùng khác. Hai vùng gốc và đích không giao nhau hoặc giao nhau như hình vẽ SUBBCHL RET DE GỐC HL BC Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 27 Input : Nạp đòa chỉ đầu của vùng gốc vào HL Nạp đòa chỉ cuối của vùng gốc vào BC Nạp đòa chỉ đầu của vùng đích vào DE Output : Không làm thay đổi nội dung các thanh ghi. PUSH PSW PUSH B PUSH D PUSH H BC (BC) + 1 *1 : A M STAX D HL (HL) + 1 DE (DE) + 1 S Đ S Đ *3 : POP H POP D POP B POP PSW COPY C.0 H = B L = C RET Thiết kế Thiết bò thực tập vi xử lí 8085 Trang 28 Input : Nạp số bò trừ vào BC Nạp số trừ vào HL Output : Hiệu số được nạp vào 2 ô nhớ Add copy+0 và Add copy+1 không làm thay đổi nội dung các thanh ghi. PUSH PSW PUSH B PUSH D PUSH H BC (BC) + 1 *1 : A M STAX D HL (HL) + 1 DE (DE) + 1 S Đ S Đ *3 : POP H POP D POP B POP PSW COPY C.0 H = B L = C RET COPY C.0 [...]... B D H B A, M D H D A, B H *2: *3 : JZ JMP MOV CMP JZ JMP POP POP POP POP RET *2 *1 A, C L *3 *1 H D B PSW COPY C.1 COPY C.1 Đây là chương trình con chép đoạn dữ liệu trùng nhau như hình vẽ HL DE GỐC ĐÍCH bc BC Input : Output : Nạp đòa chỉ đầu của vùng gốc vào HL Nạp đòa chỉ cuối của vùng vào BC Thanh ghi D lấy dữ liệu từ Addcopy+2 Thanh ghi E lấy dữ liệu từ Addcopy +3 Không thay đổi nội dung các thanh . Trang 34 ADD : Là chương trình con có tác vụ nhận đòa chỉ mới , hiển thò đòa chỉ và dữ liệu mới đó. Input : Lấy dữ liệu trong 4 ô quét phím Output : Hiện thò đòa chỉ và dữ liệu . Input : Nạp đòa chỉ đầu của vùng gốc vào HL Nạp đòa chỉ cuối của vùng vào BC Thanh ghi D lấy dữ liệu từ Add copy+2 Thanh ghi E lấy dữ liệu từ Add copy +3 Output : Không thay. tập vi xử lí 8085 Trang 35 COPY : Là chương trình con có tác vụ copy dữ liệu từ vùng này sang vùng khác Input : Nạp đòa chỉ đầu, đòa chỉ cuối của vùng gốc và đòa chỉ đầu của vùng đích