大会 - 标志旗&奇偶标志

时间:2011-12-14 15:54:17

标签: assembly

我不明白何时设置了sign标志,以及何时设置了奇偶校验。

据我所知,符号标志表示操作结果的符号,0表示正数,1表示负数。

那么为什么在下一个代码中:

mov al, -5 
sub al, 124

SF是零?结果是负数。

关于PF,为什么在a和b中,PF被设置?

a) sub al, al.

b) mov al, 127
   add al, 129

2 个答案:

答案 0 :(得分:4)

代码

mov al, -5 
sub al, 124

计算256-5-124。这是127而且是正数

sub al, al127+129的计算结果为0,设置为0,0为偶数值,因此设置了PF。

答案 1 :(得分:0)

您可以用8位表示的最大数字是2 ^ 8-1,即255 因此,因为127 + 129 = 256,al将保持0,并且标志:CF PF AF ZF IF将被设置,PF如上所述设置 - 因为当且仅当设置的位数是偶数时才设置PF。