美文网首页
[汇编语言] 检测点11.4

[汇编语言] 检测点11.4

作者: 耿杰 | 来源:发表于2019-08-03 23:41 被阅读0次

一、下面的程序执行后:(ax) = ?

mov ax, 0
push ax
popf
mov ax, 0fff0h
add ax, 0010h
pushf
pop ax
and al, 11000101B
and ah, 00001000B

解答

  • 1、mov ax, 0
ax = 0000
  • 2、push ax
ax = 0000
  • 3、pops
ax = 0000
  • 4、mov ax, 0fff0h
ax = 0fff0
  • 5、add ax, 0010h
ax = 0000

1、ax为什么等于0000
    实际结果值(无符号运算): 0fff0 + 0010 = 10000h。由于ax是16位寄存器,所以1是进位值,ax = 0000

2、标志寄存器值为多少
     a、逻辑结果值(有符号运算): 
                   0fff0 对应着有符号数:-10h
                   0010 对应着有(无)符号数:10h
                   -10h + 10h = 0
      b、
        ZF = 1,ax的值为0000
        OF = 0,没有溢出
        CF = 1, 无符号运算结果为 10000h,溢出了
        SF = 0,结果为0,不是负数
        PF = 1,结果为0,对应的二进制为: 0000 0000, 偶数个1。

      c、
        flag 寄存器的结构
        15  14  13  12  11  10  9  8  7  6  5  4  3  2  1  0
                        OF  DF IF  TF SF ZF   AF     PF    CF
         0   0   0  0   0   0   0  0  0  1  0  0  0  1  0  1

      d、0000 0000 0100 0101 对应着16进制值为 0045h。

      e、注意:实际运行结果是 0000 0000 0100 0111 对应着16进制值为 0045h。但是不影响ax最终的值。
  • 6、pop ax
ax = 0069h
  • 7、and al, 11000101B
al = 0100 0101 & 11000101 = 0100 0101  = 45h
  • 8、and ah, 00001000B
ah = 0000 0000 & 00001000B = 0h
  • 9、ax = 0045h

相关文章

  • [汇编语言] 检测点11.4

    一、下面的程序执行后:(ax) = ? 解答 1、mov ax, 0 2、push ax 3、pops 4、mov...

  • [汇编语言] 检测点11.3

    一、 补全下面的程序,统计F000:0处32个字节中,大小[32, 128]的数据的个数。 解答 二、 补全下面的...

  • [汇编语言] 检测点11.2

    一、写出下面每条指令执行后,ZF、PF、SF、CF、OF等标志位的值 答案:逐条分析 1、sub al, al 2...

  • [汇编语言] 检测点13.1

    一、在上面的内容中,我们用7ch 中断例程实现loop的功能,则上面的7ch 中断例程所能进行的最大转移位移是多少...

  • [汇编语言] 检测点13.2

    一、我们可以编程改变FFFF:0处的指令,使得CPU不去执行BIOS中的硬件系统检测和初始化程序。 答案 1、FF...

  • [汇编语言] 检测点10.5

    目录 1、下面的程序执行后,ax中的数值为多少? 2、下面的程序执行后,ax和bx中的数值为多少? 正文 1、下面...

  • [001][汇编语言]检测点1.1 地址总线

    《汇编语言》检测点1.1 8421 16进制转二进制 需要知道简单的8421十六进制到二进制转换法,不然可能会看不...

  • 汇编语言第三版-检测点13.1

    分析:1. 首先我们知道中断例程是中断处理程序,它是安装在内存的某处地方,并在中断向量表中登记。所以我们可以把这个...

  • 汇编语言(第三版)-- 检测点9.1

    若要使程序中的jmp指令执行后,CS:IP指向程序的第一条指令,在data段中应该定义哪些数据? 要使jmp指令执...

  • 汇编语言(第三版)-- 检测点9.3

    loop只有当 cx-1> 0时才会继续循环,因此如果传入cl的值为0,则cl与ch组合为0,需加上1才可以满足c...

网友评论

      本文标题:[汇编语言] 检测点11.4

      本文链接:https://www.haomeiwen.com/subject/vcnsdctx.html