assume cs:code
a segment
db 1,2,3,4,5,6,7,8
a ends
b segment
db 1,2,3,4,5,6,7,8
b ends
c segment
db 0,0,0,0,0,0,0,0
c ends
code segment
start: mov bx,0
mov cx,8
mov ax,a
mov ds,ax
mov dx,[bx]
mov ax,b
mov ds,ax
s:
add dx,[bx]
mov ax,c
mov ds,ax
mov [bx],dx
inc bx
loop s
mov ax,4c00h
int 21h
code ends
end start
将a段和b段中的数据依次相加,将结果保存到c段中
assume cs:code a segment db 1,2,3,4,5,6,7,8 a ends b segment db 1,2,3,4,5,6,7,8 b ends c segment db 0,0,0,0,0,0,0,0 c ends code segment start: mov ax,a mov ds,ax mov bx,0 ; a:0 mov cx,8 s: mov ax,[bx] ;a:0处的数据放入ax中 add ax,[bx+16] ;b [bx+16] 为 b 定义段中内容加上ax中的内容(a+b) 送入ax中 mov [bx+32],ax ;c [bx+32] 为c定义段中内容,将a+b的内容送入 c中 inc bx ;bx+1 因为是字节型数据, loop s mov ah,4ch int 21h code ends end start