鱼C论坛

 找回密码
 立即注册
查看: 1573|回复: 6

判断ax中的数,如果是0,给bx赋1,否则给bx赋2

[复制链接]
发表于 2012-12-25 14:11:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 atm456320 于 2012-12-26 19:09 编辑

只能用mov add inc loop push pop这些指令 其它指令不能用。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-12-25 19:04:40 | 显示全部楼层
把ax的值给cx,如果不为0则循环,否则...你知道怎么办吧~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-12-26 03:04:45 | 显示全部楼层
想了一晚上,,无解啊……这是哪里的题目还是?有什么提示嘛?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-12-26 19:05:31 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-12-26 19:08:08 | 显示全部楼层
本帖最后由 atm456320 于 2012-12-26 19:12 编辑

;程序1:
assume cs:code
code segment
start:
        mov ax,23
        inc ax
        mov cx,ax
        mov bx,1
        loop s
        
        mov ax,4c00h
        int 21h
        
s:        mov bx,2
        
        mov ax,4c00h
        int 21h
        
code ends
end start


;程序2:
assume cs:code
code segment
start:
        mov ax,0
        inc ax
        mov cx,ax
        loop s
        mov bx,1
        loop s1
        
s:        mov bx,2
        
s1:        mov ax,4c00h
        int 21h
        
code ends
end start
程序1用到了两个程序返回点  程序2就相当于程序1,是学长点拨的~~
先让CX加1,如果ax为0的话,就可以让loop判断一次 不会陷入cx-1之后的一个类似溢出的情况,然后用loop跳转。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
 楼主| 发表于 2012-12-26 19:14:25 | 显示全部楼层
huise865 发表于 2012-12-25 19:04
把ax的值给cx,如果不为0则循环,否则...你知道怎么办吧~~

这个开始的时候想到了,但是关键就是判断cx的情况。。如果CX一开始为0,loop一次之后,cx变成了FFFF的情况,唯有让cx先加一次,然后loop让cx减一次1,就可以实现跳转了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-12-26 20:05:00 | 显示全部楼层
atm456320 发表于 2012-12-26 19:14
这个开始的时候想到了,但是关键就是判断cx的情况。。如果CX一开始为0,loop一次之后,cx变成了FFFF的情况 ...

谢谢指导,在凌晨大脑短路了- -
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-8 00:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表