我遇到以下汇编代码的问题。
PROGX: MVI C, 10h
LOOP1: CALL SHOWX
DATAX: DB 80h, 01h, 40h, 02h
DB 20h, 04h, 10h, 08h
DB 08h, 10h, 04h, 20h
DB 02h, 40h, 01h, 80h
DB 02h, 40h, 04h, 20h
DB 08h, 10h, 10h, 08h
DB 20h, 04h, 40h, 02h
DCR C
JNZ LOOP1
ENDX: HLT
SHOWX: XTHL
MVI B, 0Eh
LOOP2: MOV A, M
OUT 3Eh
INX H
MOV A, M
OUT 3Fh
INX H
DCR B
JNZ LOOP2
CALL D500M ; Delay 500 msec.
XTHL
RET
在Loop1的第一个循环中执行ShowX后,有一个DATAX使用DB指令来保留内存。
任何人都可以帮助我理解哪个是DB命令开始在内存中分配字节的起始内存地址?
例如,由于ORG命令,下面的代码将开始在地址C100H中分配。因此,20h将存储在C100h中,10h将存储在C100h + 1
中ORG C100h
DB 20h,10h
提前感谢您的帮助。