汇编语言检测点16.2完整代码及详细解析
建议先自己思考问题的答案,不懂则返回看书
下面的程序将data段中a处的8个数据累加,结果存储到b处的字中,补全程序
解析:如果想在代码段中,直接用数据标号访问数据,则需要用伪指令assume将标号所在的段和一个寄存器联系起来。
assume cs:code,es:data ;data与es相联系
data segment
a db 1,2,3,4,5,6,7,8
b dw 0
data ends
code segment
start:mov ax,data
mov es,ax ;在assume中,es与data关联,所以此处只能使用es
mov si,0
mov cx,8
s: mov al,a[si]
mov ah,0
add b,ax
inc si
loop s
mov ax,4c00h
int 21h
code ends
end start