8085程式:將位塊從源位置移動到目標位置


問題陳述 − 將從8050H到805FH儲存的16個數據塊移動到從8070H到807FH的目標位置。

Algorithm
地址 十六進位制程式碼 標籤 助記符 T狀態 註釋
8000

21

50

80

START LXI H, 8050H 10 將HL暫存器對設定為源記憶體指標。
8003

11

70

80

LXI D, 8070H 10 將DE暫存器對設定為目標記憶體指標
8006

06

10

MVI B, 10H 7 將B暫存器設定為計數器,計數16個位元組
8008 7E LOOP MOV A, M 7 從源獲取資料位元組。
8009 12 STAX D 7 將資料位元組儲存到目標位置
800A 23 INX H 6 將HL指向下一個源位置
800B 13 INX D 6 將DE指向下一個目標位置
800C 05 DCR B 4 計數器減1
800D

C2

08

80

JNZ LOOP 10 如果計數器不為0,則返回傳輸下一個位元組。
8010 76 HLT 5 停止
總共17個位元組 總共69個T狀態

總T狀態 = T迴圈外 + T迴圈內

T迴圈外 = (10+10+7+5) = 32

T迴圈內 = ((7+7+6+6+4+10) * 16 - 3) = (40 * 16 - 3) = 637

所以總T狀態 = 32 + 637 = 669

主程式從8000H – 8010H位置開始。

源資料塊從8050H – 805FH。

目標塊從8070H – 807FH

輸入 輸出
地址 地址
8050H 00 8070H 00
8051H 11 8071H 11
8052H 22 8072H 22
8053H 33 8073H 33
8054H 44 8074H 44
8055H 55 8075H 55
8056H 66 8076H 66
8057H 77 8077H 77
8058H 88 8078H 88
8059H 99 8079H 99
805AH AA 807AH AA
805BH BB 807BH BB
805CH CC 807CH CC
805DH DD 807DH DD
805EH EE 807EH EE
805FH FF 807FH FF

更新於:2019年7月30日

5K+瀏覽量

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告