日志档案

发表于 2007-10-7 3:52:52

0

标签: C51  

C51指令系统

数据传送指令(29条)
8位数据传送指令(15条)
MOV A,Rn
MOV A,direct2
MOV A,@Ri
MOV A,#date

MOV Rn,A
MOV Rn,direct2
MOV Rn,#date

MOV direct2,A
MOV direct2,Rn
MOV direct2,@Ri
MOV direct2,direct2
MOV direct2,#date

MOV @Ri,A
MOV @Ri,direct2
MOV @Ri,#date
16位数据传送指令(1条)
MOV DPTR,#date16

外部数据传送指令(4条)

MOVX A,@DPTR
MOVX A,@Ri
MOVX @DPTR,A
MOVX @Ri,A

单片机与ROM之间的数据传送

MOVC A,@A+PC
MOVC A,@A+DPTR

交换指令
1)字节交换指令(3条)
XCH A,direct
XCH A,Rn
XCH A,@Rn
2)低半字节交换指令(1条)
XCHD A,@Ri
3)A中高4位和低4位交换(1条)
SWAP A


堆栈操作指令(2条)
PUSH direct
POP direct

算术运算指令(24条)
加法指令(8条)
ADD A,Rn
ADD A,direct
ADD A,@Ri
ADD A,#data

ADDC A,Rn
ADDC A,direct
ADDC A,@Ri
ADDC A,#data

SUBB A,Rn
SUBB A,direct
SUBB A,@Ri
SUBB A,#data

BCD码调整指令

DA A

加1减1指令

INC A
INC Rn
INC direct
INC @Ri
INC DPTR
DEC A
DEC Rn
DEC direct
DEC @Ri

乘法指令(1条)
MUL AB

除法指令(1条)

DIV AB

逻辑及移位类指令
逻辑与指令(6条)
ANL A,direct
ANL A,Rn
ANL A,@Ri
ANL A,#data
ANL direct,A
ANL direct,#data

逻辑或指令(6条)

ORL A,direct
ORL A,Rn
ORL A,@Ri
ORL A,#data
ORL direct,A
ORL direct,#data

逻辑异或指令
XRL A,direct
XRL A,Rn
XRL A,@Ri
XRL A,#data
XRL direct,A
XRL direct,#data

累加器A清0和取反指令
CLR A
CPL A

循环移位指令
RL A
RR A
RLC A
RRC A

控制转移指令
无条件转移指令(4条)
1)长专业指令 LJMP addrr16
2)绝对转移指令 AJMP addrr11
3)相对转移指令 SJMP addrr8
4)散转指令 JMP @A+DPTR

条件转移指令(8条)
1)累加器A判0指令(2条)
JZ rel
JNZ rel

2)判别进位标志CY状态指令(2条)
JC rel
JNC rel

3)判别某位Bit状态指令(3条)
JB bit,rel
JNB bit,rel
JBC bit,rel

4)减1非零转移指令(2条)
DJNZ Rn,rel
DJNZ direct,rel

5)比较转移指令(4条)
CJNE A,#data,rel
CJNE Rn,#data,rel
CJNE @Ri,#data,rel
CJNE A,direct,rel

调用和返回指令(8条)
1)绝对调用指令
ACALL addr11
2)长调用指令
LCALL adddr16
3)返回指令
RET
RETI
4)空操作
NOP

位操作指令
位传送指令
MOV C,bit
MOV bit,C
位置位和位清零指令
CLR C
CLR bit
SETB C
SETB bit
位运算指令
ANL C,bit
ANL C,/BIT
ORL C,bit
ORL C,/bit
CPL C
CPL bit

 

 

系统分类: 单片机   |   用户分类: 数字处理   |   来源: 整理   |   【推荐给朋友】

    阅读(772)    回复(1)  

投一票您将和博主都有获奖机会!