五、[bx]和loop指令
5.1 使用bx寄存器访问数据段
1)[bx]和[0]使用方法类似
要完整的描述一个内存单元的信息:
-
内存地址(段地址:偏移地址)
-
内存单元的长度(类型)
用[0]表示一个内存单元时,0代表偏移地址,段地址默认在ds寄存器中,单元的长度(类型)由具体指令中其他操作对象(寄存器等)给出。
assume cs:codesg
codesg segment
mov ax,2000H
mov ds,ax
mov bx,10H
mov ax,[0]
mov ax,[bx]
mov ax,4c00H
int 21H
codesg ends
end
2)inc(increase的缩写)(自增指令)
mov bx,1
inc bx
; bx = 1 + 1 = 2
5.2 loop 指令
通过一个案例引入loop,在地址20000H~2000FH写入0123456789ABCDEF(使用jmp指令,但是会无限执行下去)