回 帖 发 新 帖 刷新版面

主题:初学求助:这个语句是不是多余的?

一个把8421码表示的两位数转换为对应二进制数的子程序
入口参数:dh=十位数ascii码,dl=个位数ascii码
出口参数:al=对应二进制数
subr   proc
       mov    al,dh
       and    al,0fh    ;这句代码有什么意义?dh放的十位数
                        ;ascii码,高四位肯定应该是零阿
       mov    ah,10
       mul    ah
       mov    ah,dl
       and    ah,0fh    ;这句也一样
       add    al,ah
       ret
subr   endp

这两句话是不是多余的?总觉得好像没什么用阿

回复列表 (共3个回复)

沙发

以防万一,万一出现al的高位没有清0,就会误判。

板凳

怎么会出现这种万一?

3 楼

一点也不多余,入口参数明明写的是各数位的ASCII码,0的ASCII码是30H,1是31H,2是32H,等等

我来回复

您尚未登录,请登录后再回复。点此登录或注册