Quick navigation: [ Jump to body ]

Quick navigation: [ Jump to menu ]

Intel Pentium CPU Instruction Set Reference

TEST instruction - Logical Compare

Code Mnemonic Description
A8 ib TEST AL, imm8 AND imm8 with AL; set SF, ZF, PF according to result
A9 iw TEST AX, imm16 AND imm16 with AX; set SF, ZF, PF according to result
A9 id TEST EAX, imm32 AND imm32 with EAX; set SF, ZF, PF according to result
F6 /0 ib TEST r/m8, imm8 AND imm8 with r/m8; set SF, ZF, PF according to result
F7 /0 iw TEST r/m16, imm16 AND imm16 with r/m16; set SF, ZF, PF according to result
F7 /0 id TEST r/m32, imm32 AND imm32 with r/m32; set SF, ZF, PF according to result
84 / r TEST r/m8, r8 AND r8 with r/m8; set SF, ZF, PF according to result
85 / r TEST r/m16, r16 AND r16 with r/m16; set SF, ZF, PF according to result
85 / r TEST r/m32, r32 AND r32 with r/m32; set SF, ZF, PF according to result

Description

Computes the bit-wise logical AND of first operand (source 1 operand) and the second operand (source 2 operand) and sets the SF, ZF, and PF status flags according to the result. The result is then discarded.

Operands Bytes Clocks
reg, reg 2 1 UV
mem, reg 2 + d(0, 2) 2 UV
reg, mem 2 + d(0, 2) 2 UV
reg, imm 2 + i(1, 2) 1 UV
mem, imm 2 + d(0, 2) + i(1, 2) 2 UV ( not pairable if there is a displacement and immediate)
acc, imm 1 + i(1, 2) 1 UV

Flags

ID unaffected DF unaffected
VIP unaffected IF unaffected
VIF unaffected TF unaffected
AC unaffected SF sets according to the result (see the "Operation" section above)
VM unaffected ZF sets according to the result (see the "Operation" section above)
RF unaffected AF undefined
NT unaffected PF sets according to the result (see the "Operation" section above)
IOPL unaffected CF cleared to 0
OF cleared to 0

Advertisement