|
主题 : : 该程序为什么不能跳转? [已解决] |
回复[ 6次 ]
点击[ 353次 ] | |
|
|
|
|
[帖 主]
[ 发表时间:2009-11-10 23:11 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:20
注册日期:2009-10-19 12:21 |
编程实验把键入的一个字符,用二进制形式显示它的ASCII代码值。
;代码段
mov ah,01h
int 21h
mov cx,8
next: rol al,1
jc out1
mov dl,'0'
jmp l1
out1: mov dl,'1'
l1: mov ah,2
int 21h
loop next
不管输入什么字符,出来的都是00000000,怎么没有跳转??? | | |
|
|
|
|
[第1楼]
[ 回复时间:2009-11-11 19:20 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:0
注册日期:2009-11-11 18:52 |
我以前也遇到过,主要是你没有定义好代码段和数据段,吧前面的好好改改哦。 | | |
|
|
|
|
[第2楼]
[ 回复时间:2009-11-11 22:39 ]
[引用]
[回复]
[ top ] | |
荣誉值:307
信誉值:0
注册日期:2009-03-15 23:46 |
功能调用:
mov ah,2
int 21h
会修改al,用bl代替al就行了:
mov ah,01h
int 21h
mov bl,al
mov cx,8
next: rol bl,1
jc out1
mov dl,'0'
jmp l1
out1: mov dl,'1'
l1: mov ah,2
int 21h
loop next | | |
|
|
|
|
[第3楼]
[ 回复时间:2009-11-11 22:44 ]
[引用]
[回复]
[ top ] | |
荣誉值:307
信誉值:0
注册日期:2009-03-15 23:46 |
格式不对,重发。
功能调用:
mov ah,2
int 21h
会修改al,用bl代替al就行了:
mov ah,01h
int 21h
mov bl,al
mov cx,8
next: rol bl,1
jc out1
mov dl,'0'
jmp l1
out1: mov dl,'1'
l1: mov ah,2
int 21h
loop next | | |
|
|
|
|
[第4楼]
[ 回复时间:2009-11-13 21:13 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:20
注册日期:2009-10-19 12:21 |
回复:[第3楼]
------------------
哦,课本上好像没说2号功能会修改al啊,怎么才可以避免此类问题的发生啊? | | |
|
|
|
|
[第5楼]
[ 回复时间:2009-11-14 08:48 ]
[引用]
[回复]
[ top ] | |
荣誉值:307
信誉值:0
注册日期:2009-03-15 23:46 |
我也没有看到过资料,是在用Turbo Debugger调试编程时发现的。
使用Turbo Debugger等类似动态调试工具在编程学习和开发实践中都非常重要。 | | |
|
|
|
|
[第6楼]
[ 回复时间:2009-11-26 18:33 ]
[引用]
[回复]
[ top ] | |
荣誉值:0
信誉值:20
注册日期:2009-10-19 12:21 |
此贴由 贴主 于 [ 2009-11-26 18:33 ] 结贴。 结贴原因:问题已解决 | | |