BITΒΆ
- BIT b,M
- Test Bit
- Description
- Checks the
b``th bit of ``M
and stores the inverse in theZ
flag.b
must be a hard-coded number between 0 and 7. - Results
Register/Flag 8-bit 16-bit (non-ADL) 24-bit (ADL) S
flagUndefined Z
flagSet if bit b
ofM
is zeroH
flagSet P/V
flagUndefined N
flagReset C
flagNot affected - Allowed Instructions
Instruction Opcode CC (ADL/non-ADL) CC (.S) CC (.L) bit 0,a $CB, $47 2F X X bit 0,b $CB, $40 2F X X bit 0,c $CB, $41 2F X X bit 0,d $CB, $42 2F X X bit 0,e $CB, $43 2F X X bit 0,h $CB, $44 2F X X bit 0,l $CB, $45 2F X X bit 0,(hl) $CB, $46 2F + 1R 3F + 1R 3F + 1R bit 0,(ix+n) $DD, $CB, n, $46 4F + 1R 5F + 1R 5F + 1R bit 0,(iy+n) $FD, $CB, n, $46 4F + 1R 5F + 1R 5F + 1R bit 1,a $CB, $4F 2F X X bit 1,b $CB, $48 2F X X bit 1,c $CB, $49 2F X X bit 1,d $CB, $4A 2F X X bit 1,e $CB, $4B 2F X X bit 1,h $CB, $4C 2F X X bit 1,l $CB, $4D 2F X X bit 1,(hl) $CB, $4E 2F + 1R 3F + 1R 3F + 1R bit 1,(ix+n) $DD, $CB, n, $4E 4F + 1R 5F + 1R 5F + 1R bit 1,(iy+n) $FD, $CB, n, $4E 4F + 1R 5F + 1R 5F + 1R bit 2,a $CB, $57 2F X X bit 2,b $CB, $50 2F X X bit 2,c $CB, $51 2F X X bit 2,d $CB, $52 2F X X bit 2,e $CB, $53 2F X X bit 2,h $CB, $54 2F X X bit 2,l $CB, $55 2F X X bit 2,(hl) $CB, $56 2F + 1R 3F + 1R 3F + 1R bit 2,(ix+n) $DD, $CB, n, $56 4F + 1R 5F + 1R 5F + 1R bit 2,(iy+n) $FD, $CB, n, $56 4F + 1R 5F + 1R 5F + 1R bit 3,a $CB, $5F 2F X X bit 3,b $CB, $58 2F X X bit 3,c $CB, $59 2F X X bit 3,d $CB, $5A 2F X X bit 3,e $CB, $5B 2F X X bit 3,h $CB, $5C 2F X X bit 3,l $CB, $5D 2F X X bit 3,(hl) $CB, $5E 2F + 1R 3F + 1R 3F + 1R bit 3,(ix+n) $DD, $CB, n, $5E 4F + 1R 5F + 1R 5F + 1R bit 3,(iy+n) $FD, $CB, n, $5E 4F + 1R 5F + 1R 5F + 1R bit 4,a $CB, $67 2F X X bit 4,b $CB, $60 2F X X bit 4,c $CB, $61 2F X X bit 4,d $CB, $62 2F X X bit 4,e $CB, $63 2F X X bit 4,h $CB, $64 2F X X bit 4,l $CB, $65 2F X X bit 4,(hl) $CB, $66 2F + 1R 3F + 1R 3F + 1R bit 4,(ix+n) $DD, $CB, n, $66 4F + 1R 5F + 1R 5F + 1R bit 4,(iy+n) $FD, $CB, n, $66 4F + 1R 5F + 1R 5F + 1R bit 5,a $CB, $6F 2F X X bit 5,b $CB, $68 2F X X bit 5,c $CB, $69 2F X X bit 5,d $CB, $6A 2F X X bit 5,e $CB, $6B 2F X X bit 5,h $CB, $6C 2F X X bit 5,l $CB, $6D 2F X X bit 5,(hl) $CB, $6E 2F + 1R 3F + 1R 3F + 1R bit 5,(ix+n) $DD, $CB, n, $6E 4F + 1R 5F + 1R 5F + 1R bit 5,(iy+n) $FD, $CB, n, $6E 4F + 1R 5F + 1R 5F + 1R bit 6,a $CB, $77 2F X X bit 6,b $CB, $70 2F X X bit 6,c $CB, $71 2F X X bit 6,d $CB, $72 2F X X bit 6,e $CB, $73 2F X X bit 6,h $CB, $74 2F X X bit 6,l $CB, $75 2F X X bit 6,(hl) $CB, $76 2F + 1R 3F + 1R 3F + 1R bit 6,(ix+n) $DD, $CB, n, $76 4F + 1R 5F + 1R 5F + 1R bit 6,(iy+n) $FD, $CB, n, $76 4F + 1R 5F + 1R 5F + 1R bit 7,a $CB, $7F 2F X X bit 7,b $CB, $78 2F X X bit 7,c $CB, $79 2F X X bit 7,d $CB, $7A 2F X X bit 7,e $CB, $7B 2F X X bit 7,h $CB, $7C 2F X X bit 7,l $CB, $7D 2F X X bit 7,(hl) $CB, $7E 2F + 1R 3F + 1R 3F + 1R bit 7,(ix+n) $DD, $CB, n, $7E 4F + 1R 5F + 1R 5F + 1R bit 7,(iy+n) $FD, $CB, n, $7E 4F + 1R 5F + 1R 5F + 1R - Notes
- Interestingly enough, the index registers
IXH
,IXL
,IYH
, andIYL
cannot be used in this instruction, yet(IX+n)
and(IY+n)
are allowed as operands. - The
Z
flag is set as follows: Z
means the bit is zeroNZ
means the bit is one (non-zero)
- The
- Interestingly enough, the index registers
- See Also
- RES, SET