【8086】刚学汇编语言,start标号很纠结,望学过的学长指教。
以前还没学到start标号时,将asm编译,连接,运行后用debug的u命令可以看到asm中写的代码。后来学到start标号,再编译,连接,运行,用debug的u命令查看,cs:ip指向的不是asm中的代码,而是一些随机的代码(跟asm中start处开始的代码毫无关系)。用XP的“开始-运行-command”和DOS虚拟机都是这样。我想,初学者们应该都会遇到这种情况,特别是现在很少有真正的DOS系统(不知纯DOS系统会不会出现这种问题)。希望达人指教,这是我的问题还是机器的问题,非常感谢。附程序一个,可以直接复制黏贴编译(王爽《汇编语言(第二版)》P126):
assume cs:code
code segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
start: mov bx,0
mov ax,0
mov cx,8
s: add ax,cs:[bx]
add bx,2
loop s
mov ax,4c00h
int 21h
code ends
end start
[ 本帖最后由 黄礼森 于 2011-7-17 22:07 编辑 ]