TEST performs a 'mental' bitwise AND of its two operands, and
affects the flags as if the operation had taken place, but does not
store the result of the operation anywhere.
test
8086 and laterLogical Compare
test r/m8, reg8 | test r/m16, reg16 | test r/m32, reg32 | test r/m64, reg64 | test al, imm8 | test ax, imm16 | test eax, imm32 | test rax, imm32 | test r/m8, imm8 | test r/m16, imm16 | test r/m32, imm32 | test r/m64, imm32 | test kreg8, kreg8 | test kreg16, kreg16 | test kreg32, kreg32 | test kreg64, kreg64Loading...
Forms
Every form of test the assembler accepts, from NASM's own instruction table.
The second column is the processor that introduced the form; a badge marks a form that needs
an extension, that is lockable, or that long mode dropped.
| Form | Since | Notes |
|---|---|---|
| test r/m8, reg8 | 8086 | |
| test r/m16, reg16 | 8086 | |
| test r/m32, reg32 | 386 | |
| test r/m64, reg64 | x86-64 | long |
| test al, imm8 | 8086 | |
| test ax, imm16 | 8086 | |
| test eax, imm32 | 386 | |
| test rax, imm32 | x86-64 | long |
| test r/m8, imm8 | 8086 | |
| test r/m16, imm16 | 8086 | |
| test r/m32, imm32 | 386 | |
| test r/m64, imm32 | x86-64 | long |
| test kreg8, kreg8 | recent | avx512dq |
| test kreg16, kreg16 | recent | avx512dq |
| test kreg32, kreg32 | recent | avx512bw |
| test kreg64, kreg64 | recent | avx512bw |