. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->标志寄存器
主题 : :  检测点11.1最后一句mul al疑问  [待解决] 回复[ 16次 ]   点击[ 1246次 ]  
kingmoon
[帖 主] [ 发表时间:2010-09-03 10:42 ] 
荣誉值:0
信誉值:0
注册日期:2010-07-16 17:50
sub al,al ZF=1 PF=1 SF=0
mov al,1  ZF=1 PF=1 SF=0
push ax   ZF=1 PF=1 SF=0
pop bx    ZF=1 PF=1 SF=0
add al,bl ZF=0 PF=0 SF=0
add al,10 ZF=0 PF=1 SF=0
mul al    ZF=0 PF=1 SF=0

其实有疑惑: 最后一句 mul al 最后结果al=10010000最高位不是为1吗SF难道不是1?
求解答!
ceiba
[第13楼] [ 回复时间:2014-04-21 17:49 ] 
荣誉值:0
信誉值:0
注册日期:2014-02-17 17:20
请各位去查mul指令的详细说明,实际上mul指令只影响cf和of,对其它的条件码位无定义,即指令执行后这些条件码位的状态不定。本题中mul al我上机验证的结果为zf=0,pf=1,sf=1,但实际上是无意义的。
另外,第2版P214中认为div会影响标志寄存器,实际上div对所有条件码均无定义。
条件码指:of,sf,zf,cf,af,pf.
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved