. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
刷新 | 提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->标志寄存器
  管理员: assembly   [回复本贴] [收藏本贴] [管理本贴] [关闭窗口]
主题 : :  检测点11.1答案的解释  [待解决] 回复[ 4次 ]   点击[ 581次 ]  
12345678911
[帖 主]   [ 发表时间:2012-08-19 17:32 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-08-26 20:17
写出下面每条指令执行后,zf、pf、sf等标志位的值 
sub al,al
mov al,1        
push ax
pop bx
add al,bl
add al,10
mul al 
我知道答案,但不知道为什么
mov al,1  al应该为00000001b,pf应该为0
push ax ax的值不知道那pf又该怎么判断
pop bx
add al,bl
mul al 也是一样
fpamc
[第1楼]   [ 回复时间:2012-08-20 07:30 ]   [引用]   [回复]   [ top ] 
荣誉值:30
信誉值:4
注册日期:2012-01-01 16:36
明显的不认真看书。
在王爽书2版。214页。中间部分的注意。
你看一下,然后,值慢慢推呗~
fpamc
[第2楼]   [ 回复时间:2012-08-20 07:35 ]   [引用]   [回复]   [ top ] 
荣誉值:30
信誉值:4
注册日期:2012-01-01 16:36
在8086CPU的指令集中。有的指令的执行是影响flag的。比如,add,sub,mul,div,inc,or,and等,它们大都是运算指令(进行逻辑或算数运算);有的指令的执行对flag没有影响的。比如,mov,push,pop等。它们大都是传送指令。
12345678911
[第3楼]   [ 回复时间:2012-08-20 14:42 ]   [引用]   [回复]   [ top ] 
荣誉值:0
信誉值:0
注册日期:2011-08-26 20:17
真的是漏看了,但是
                zf   pf   sf
sub al,al      1    1    0
mov al,1       1    1    0   
push ax        1    1    0  
pop bx         1    1    0
add al,bl      0    0    0
add al,10      0    1    0 
mul al         0    1    0      按理推这的pf应该变为0啊
fpamc
[第4楼]   [ 回复时间:2012-08-21 07:18 ]   [引用]   [回复]   [ top ] 
荣誉值:30
信誉值:4
注册日期:2012-01-01 16:36
0是奇数
1是偶数
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved