汇编Loop和[bx]的联合应用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
assume cs:codesg
codesg segment

mov ax,0ffffh ;累加寄存器负责把ffffh传送给ds段地址
mov bx,0000h ;基地址寄存器为下面循环偏移做初始化
mov cx,12 ;计数器寄存器初始化,为循环做准备循环12次
mov dx,0000h ;数据寄存器,为了避免超界会利用ax累加后传送到DX
mov ds,ax
mov ah,0000h ;初始化高八位单元

i: mov al,[bx] ;循环体把ds:bx的8位数据等位传送到低八位al中
add dx,ax ;(dx)=(dx)+(ax)
inc bx ;bx++

loop i ;判断cx是否为0如果为0结束循环

mov ax,4c00h ;结束程序
int 21h

codesg ends
end