汇编语言视频教程025第五章 [BX]和loop指令03
本帖最后由 xiaoone 于 2016-12-26 16:22 编辑视频中,讲5.3节-程序5.3的时候,小甲鱼讲
mov ax,
和
mov al,
mov ah, 0
是没有区别的,认为书作者是多此一举。
小弟尝试运行了一遍,发现其实是有区别的:
从我的机器来看:
初始:ffff6 的值为 31,ffff7的值为2F。
一、首先,依照教材
mov al,
mov ah, 0
结果如下:
dx=0093
二、按mov ax,来,
运行结果为:
dx=8D93
(新人限制,传不了图了)
为什么有区别呢?
我们回到最开始看就明白了,初始:ffff6 的值为 31,ffff7的值为2F
如果按教材来运行,
assume cs:code
code segment
start:mov ax, 0ffffh
mov ds, ax
mov bx, 6
mov al,
mov ah, 0
mov dx, 0
mov cx, 3
s:add dx, ax
loop s
mov ax,4c00h
int 21h
code ends
end start
(al)=31,(ah)=00,循环3次,dx=0091h。
如果按mov ax,来运行,
assume cs:code
code segment
start:mov ax, 0ffffh
mov ds, ax
mov bx, 6
mov ax,
mov dx, 0
mov cx, 3
s:add dx, ax
loop s
mov ax,4c00h
int 21h
code ends
end start
mov ax, 后,(al)=31,(ah)=2F。循环3次,就相当于2F31*3=8D93。dx=8D93
支持支持支持支持支持
页:
[1]