「汇编语言 第 3 版 王爽」- 参考答案:检测点 11.4

  CREATED BY JENKINSBOT

参考答案

(ax)=45

推算过程

在 popf 后,标志寄存器中,本章节介绍的那些标志位都为零(没学过的位置用 * 先代替)
那么 pushf 将计算后的当时状态的标志寄存器入栈,然后 pop 给 ax 寄存器
接下来进行 and 操作,结果如下:

mov ax,0
push ax
popf
mov ax, 0fff0h		; -16
add ax, 0010h		; +16
pushf
pop ax               ; | 0  0  0  0  of df if tf | sf zf 0  af 0  pf 0  cf |
					 ; | 0  0  0  0  0  0  *  *  | 0  1  0  *  0  1  0  1  |
					 ; ax = 000000** 010*0101b
and al,11000101B     ; al = 01000101b = 45h
and ah,00001000B     ; ah = 00000000b = 0h

参考文献

CSDN/汇编语言王爽第三版答案
百度文库/汇编语言实验答案 (王爽)