8085程式交換記憶體中的一塊位元組


在這個程式中,我們將瞭解如何使用8085交換一塊位元組。

問題陳述

編寫8085組合語言程式來交換一塊資料,其中塊大小已知。

討論

資料儲存在地址8010H到8019H和9010H到9019H。地址8000H儲存要交換的位元組數。

邏輯非常簡單,HL和DE暫存器對分別指向第一塊和第二塊資料。透過獲取資料,我們只是交換每個記憶體位置的值。然後重複此過程以完全交換兩塊資料。

輸入

地址資料
......
800006
......
801000
801111
801222
801333
801444
801555
......
901084
901163
901212
901347
901448
9015AD
......


流程圖

程式

地址十六進位制程式碼標籤助記符註釋
F00021, 10, 80
LXI H, 8000H   指向8000H獲取位元組計數
F0034E
MOV C,M從記憶體載入計數
F00421, 10, 80
LXI H,8010H指向第一塊地址
F00711, 10, 90
LXI D,9010H指向第二塊地址
F00A46LOOPMOV B, M將第一塊的元素取到B
F00B1A
LDAX D  將第二塊的元素取到累加器
F00C77
MOV M, A將累加器內容儲存到第二塊
F00D78
MOV A, B將B載入到A
F00E12
STAX D  儲存到第二塊
F00F23
INX H   指向第一塊的下一個地址
F01013
INX D   指向第二塊的下一個地址
F0110D
DCR C   減少計數變數
F012C2, 0A, F0
JNZ LOOP    當塊未完成時,跳轉到LOOP
F01576
HLT終止程式


輸出

地址資料
......
801084
801163
801212
801347
801448
8015AD
......
901000
901111
901222
901333
901444
901555
......

更新於: 2019年7月30日

2K+ 瀏覽量

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告