Instruction  |  		Description  |  		Byte | Cycle | 
MOV 			A, Rn  |  		Move 			register to accumulator  |  		1 | 1 | 
MOV 			A, direct  			  |  		Move 			direct byte to accumulator  |  		2 | 1 | 
MOV 			A, @Ri  |  		Move 			indirect RAM to accumulator  |  		1 | 1 | 
MOV 			A, #data  |  		Move 			immediate data to accumulator  |  		2 | 1 | 
MOV 			Rn, A  |  		Move 			accumulator to register  |  		1 | 1 | 
MOV 			Rn, direct  |  		Move 			direct byte to register  |  		2 | 2 | 
MOV 			Rn, #data  |  		Move 			immediate data to register  |  		2 | 1 | 
MOV 			direct, A  |  		Move 			accumulator to direct byte  |  		2 | 1 | 
MOV 			direct, Rn  |  		Move 			register to direct byte  |  		2 | 2 | 
MOV 			direct, direct  |  		Move 			direct byte to direct byte  |  		3 | 2 | 
MOV 			direct, @Ri  |  		Move 			indirect RAM to direct byte  |  		2 | 2 | 
MOV 			direct, #data  |  		Move 			immediate data to direct byte  |  		3 | 2 | 
MOV 			@Ri, A  |  		Move 			accumulator to indirect RAM  |  		1 | 1 | 
MOV 			@Ri, direct  |  		Move 			direct byte to indirect RAM  |  		2 | 2 | 
MOV 			@Ri, #data  |  		Move 			immediate data to indirect RAM  |  		2 | 1 | 
MOV 			DPTR, #data16  |  		Load 			data pointer with a 16-bit constant  |  		3 | 2 | 
MOVC 			A, @A+DPTR  |  		Move 			code byte relative to DPTR to accumulator  |  		1 | 2 | 
MOVC 			A, @A+PC  |  		Move 			code byte relative to PC to accumulator  |  		1 | 2 | 
MOVX 			A, @Ri  |  		Move 			external RAM (8-bit addr.) to A  |  		1 | 2 | 
MOVX 			A, @DPTR  |  		Move 			external RAM (16-bit addr.) to A  |  		1 | 2 | 
MOVX 			@Ri, A  |  		Move 			A to external RAM (8-bit addr.)  |  		1 | 2 | 
MOVX 			@DPTR, A  |  		Move 			A to external RAM (16-bit addr.)  |  		1 | 2 | 
PUSH 			direct  |  		Push 			direct byte onto stack  |  		2 | 2 | 
POP 			direct  |  		Pop 			direct byte from stack  |  		2 | 2 | 
XCH 			A, Rn  |  		Exchange 			register with accumulator  |  		1 | 1 | 
XCH 			A, direct  |  		Exchange 			direct byte with accumulator  |  		2 | 1 | 
XCH 			A, @Ri  |  		Exchange 			indirect RAM with accumulator  |  		1 | 1 | 
XCHD 			A, @Ri  |  		Exchange low-order nibble indir. RAM with A | 1 | 1 | 
| Instruction | Description  |  		Byte | Cycle | 
| CLR C | Clear 			carry flag  |  		1 | 1 | 
CLR 			bit  |  		Clear 			direct bit  |  		2 | 1 | 
SETB 			C  |  		Set 			carry flag  |  		1 | 1 | 
SETB 			bit  |  		Set 			direct bit  |  		2 | 1 | 
CPL 			C  |  		Complement 			carry flag  |  		1 | 1 | 
CPL 			bit  |  		Complement 			direct bit  |  		2 | 1 | 
ANL 			C, bit  |  		AND 			direct bit to carry flag  |  		2 | 2 | 
ANL 			C, /bit  |  		AND 			complement of direct bit to carry  |  		2 | 2 | 
ORL 			C, bit  |  		OR 			direct bit to carry flag  |  		2 | 2 | 
ORL 			C, /bit  |  		OR 			complement of direct bit to carry  |  		2 | 2 | 
MOV 			C, bit  |  		Move 			direct bit to carry flag  |  		2 | 1 | 
MOV 			bit, C  |  		Move carry flag to direct bit | 2 | 2 | 
Instruction  |  		Description  |  		Byte | Cycle | 
ACALL 			addr11  |  		Absolute 			subroutine call  |  		2 | 2 | 
LCALL 			addr16  |  		Long 			subroutine call  |  		3 | 2 | 
RET  |  		Return 			from subroutine  |  		1 | 2 | 
RETI  |  		Return 			from interrupt  |  		1 | 2 | 
AJMP 			addr11  |  		Absolute 			jump  |  		2 | 2 | 
LJMP 			addr16  |  		Long 			iump  |  		3 | 2 | 
SJMP 			rel  |  		Short 			jump (relative addr.)  |  		2 | 2 | 
JMP 			@A+DPTR  |  		Jump 			indirect relative to the DPTR  |  		1 | 2 | 
JZ 			rel  |  		Jump 			if accumulator is zero  |  		2 | 2 | 
JNZ 			rel  |  		Jump 			if accumulator is not zero  |  		2 | 2 | 
JC 			rel  |  		Jump 			if carry flag is set  |  		2 | 2 | 
JNC 			rel  |  		Jump 			if carry flag is not set  |  		2 | 2 | 
JB 			bit, rel  |  		Jump 			if direct bit is set  |  		3 | 2 | 
JNB 			bit, rel  |  		Jump 			if direct bit is not set  |  		3 | 2 | 
JBC 			bit, rel  |  		Jump 			if direct bit is set and clear bit  |  		3 | 2 | 
CJNE 			A, direct, rel  |  		Compare direct byte to A and jump if not equal | 3 | 2 | 
CJNE 			A, #data, rel  |  		Compare 			immediate to A and jump if not equal  |  		3 | 2 | 
CJNE 			Rn, #data, rel  |  		Compare 			immed. to reg. and jump if not equal  |  		3 | 2 | 
CJNE 			@Ri, #data, rel  |  		Compare 			immed. to ind. and jump if not equal  |  		3 | 2 | 
DJNZ 			Rn, rel  |  		Decrement 			register and jump if not zero  |  		2 | 2 | 
DJNZ 			direct, rel  |  		Decrement 			direct byte and jump if not zero  |  		3 | 2 | 
NOP  |  		No operation | 1 | 1 |