类型:转载 责任编辑:asp.net 日期:2007/05/23
热门软件下载:
功能:把BX中的二进制数以16进制ASCII码的形式输出
code segment
assume cs:code
start: mov ch,04h
mov bx,1234h
rotate: mov cl,4
rol bx,cl
mov al,bl
and al,0fh
add al,30h
cmp al,3ah
jl printit
add al,7h
printit: mov dl,al
mov al,2
int 21h
dec ch
jnz rotate
code ends
end start
这段代码在MASM5下可以编译通过,但用debug32调试运行的时候却显示:Invalid opcode
为什么呀?系统是WinXP
网友回答:
用debug调试没问题
你没有写退出代码,所以程序将继续往下执行,直到遇到非法操作码。
正确的做法是在结尾处加上退出代码,eg:
mov ah,4ch
int 21h