flag 的第 2 位是 PF,奇偶标志位。它记录相关指令执行后,其结果的所有 bit 位中 1 的个数是否为偶数。如果 1 的个数为偶数,pf=1,如果为奇数,那么 pf=0.
比如,指令:
mov al,1 add al,10
执行后,结果为 00001011B,其中有 3(奇数)个 1,则 pf=0
;
mov al,1 or al,2
执行后,结果为 00000011B,其中有 2(偶数)个 1,则 pf=1。
sub al,al
执行后,结果为00000000B,其中有0(偶数)个则pf=1。