王爽《汇编语言(第三版)》检测点11.1
写出下面每条指令执行后,ZF、PF、SF等标志位的值。
|
指令 |
sub al,al |
mov al,1 |
push ax |
pop bx |
add al,bl |
add al,10 |
mul al |
|
ZF(0) |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
|
PF(偶) |
1 |
1 |
1 |
1 |
0 |
1 |
1 |
|
SF(负) |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
ZF标志:是否为0
PF标志:结果中是否有偶数个为1的bit位。
SF标志:结果是否为负,仅有符号运算有用。
提示:传送指令不影响标志位。至于为什么是这样,我估计是因为更改标志位会费时间,CPU的资源很宝贵,而且转移指令的标志位并没有什么实际意义
1. sub al,al 结果为0,有0个为1的bit位,非负。
2. mov al,1 传送指令不影响标志位。
3. push ax 传送指令不影响标志位。
4. pop bx 传送指令不影响标志位。
5. add al,bl 结果为00000010B,结果不为0,有1个为1的bit位,非负。
6. add al,10 结果为00001100B,结果不为0,有2个为1的bit位,非负。
7. mul al 结果为10010000B,结果不为0,有2个为1的bit位,非负。

浙公网安备 33010602011771号