加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

51单片机汇编指令周期表

(2010-11-14 19:58:00)
标签:

杂谈

分类: 单片机

 

                                       msc 51 指令速查表

类别

指令格式

功能简述

字节数

周期

数据传送类指令期

MOV A, Rn

寄存器送累加器

1

1

MOV Rn,A

累加器送寄存器

1

1

MOV A, @Ri

内部RAM单元送累加器

1

1

MOV @Ri, A

累加器送内部RAM单元

1

1

MOV A, #data

立即数送累加器

2

1

MOV A, direct

直接寻址单元送累加器

2

1

MOV direct, A

累加器送直接寻址单元

2

1

MOV Rn,#data

立即数送寄存器

2

1

MOV direct, #data

立即数送直接寻址单元

3

2

MOV @Ri, #data

立即数送内部RAM单元

2

1

MOV direct, Rn

寄存器送直接寻址单元

2

2

MOV Rn, direct

直接寻址单元送寄存器

2

2

MOV direct, @Ri

内部RAM单元送直接寻址单元

2

2

MOV @Ri, direct

直接寻址单元送内部RAM单元

2

2

MOV direct2,direct1

直接寻址单元送直接寻址单元

3

2

MOV DPTR, #data16

16位立即数送数据指针

3

2

MOVX A, @Ri

外部RAM单元送累加器(8位地址)

1

2

MOVX @Ri, A

累加器送外部RAM单元(8位地址)

1

2

MOVX A, @DPTR

外部RAM单元送累加器(16位地址)

1

2

MOVX @DPTR, A

累加器送外部RAM单元(16位地址)

1

2

MOVC A, @A+DPTR

查表数据送累加器(DPTR为基址)

1

2

MOVC A, @A+PC

查表数据送累加器(PC为基址)

1

2

算术运算类指令

XCH A, Rn

累加器与寄存器交换

1

1

XCH A, @Ri

累加器与内部RAM单元交换

1

1

XCHD A, direct

累加器与直接寻址单元交换

2

1

XCHD A, @Ri

累加器与内部RAM单元低4位交换

1

1

SWAP A

累加器高4位与低4位交换

1

1

POP direct

栈顶弹出指令直接寻址单元

2

2

PUSH direct

直接寻址单元压入栈顶

2

2

ADD A, Rn

累加器加寄存器

1

1

ADD A, @Ri

累加器加内部RAM单元

1

1

ADD A, direct

累加器加直接寻址单元

2

1

ADD A, #data

累加器加立即数

2

1

ADDC A, Rn

累加器加寄存器和进位标志

1

1

ADDC A, @Ri

累加器加内部RAM单元和进位标志

1

1

ADDC A, #data

累加器加立即数和进位标志

2

1

ADDC A, direct

累加器加直接寻址单元和进位标志

2

1

INC A

累加器加1

1

1

INC Rn

寄存器加1

1

1

INC direct

直接寻址单元加1

2

1

INC @Ri

内部RAM单元加1

1

1

INC DPTR

数据指针加1

1

2

DA A

十进制调整

1

1

SUBB A, Rn

累加器减寄存器和进位标志

1

1

SUBB A, @Ri

累加器减内部RAM单元和进位标志

1

1

SUBB A, #data

累加器减立即数和进位标志

2

1

SUBB A, direct

累加器减直接寻址单元和进位标志

2

1

DEC A

累加器减1

1

1

DEC Rn

寄存器减1

1

1

DEC @Ri

内部RAM单元减1

1

1

DEC direct

直接寻址单元减1

2

1

MUL AB

累加器乘寄存器B

1

4

DIV AB

累加器除以寄存器B

1

4

逻辑运算类指令

ANL A, Rn

累加器与寄存器

1

1

ANL A, @Ri

累加器与内部RAM单元

1

1

ANL A, #data

累加器与立即数

2

1

ANL A, direct

累加器与直接寻址单元

2

1

ANL direct, A

直接寻址单元与累加器

2

1

ANL direct, #data

直接寻址单元与立即数

3

1

ORL A, Rn

累加器或寄存器

1

1

ORL A,@Ri

累加器或内部RAM单元

1

1

ORL A,#data

累加器或立即数

2

1

ORL A,direct

累加器或直接寻址单元

2

1

ORL direct, A

直接寻址单元或累加器

2

1

ORL direct, #data

直接寻址单元或立即数

3

1

XRL A, Rn

累加器异或寄存器

1

1

XRL A,@Ri

累加器异或内部RAM单元

1

1

XRL A,#data

累加器异或立即数

2

1

XRL A,direct

累加器异或直接寻址单元

2

1

XRL direct, A

直接寻址单元异或累加器

2

1

XRL direct, #data

直接寻址单元异或立即数

3

2

RL A

累加器左循环移位

1

1

RLC A

累加器连进位标志左循环移位

1

1

RR A

累加器右循环移位

1

1

RRC A

累加器连进位标志右循环移位

1

1

CPL A

累加器取反

1

1

CLR A

累加器清零

1

1

控制转移类指令

ACCALL addr11

2KB范围内绝对调用

2

2

AJMP addr11

2KB范围内绝对转移

2

2

LCALL addr16

2KB范围内长调用

3

2

LJMP addr16

2KB范围内长转移

3

2

SJMP rel

相对短转移

2

2

JMP @A+DPTR

相对长转移

1

2

RET

子程序返回

1

2

RET1

中断返回

1

2

JZ rel

累加器为零转移

2

2

JNZ rel

累加器非零转移

2

2

CJNE A, #data, rel

累加器与立即数不等转移

3

2

CJNE A, direct, rel

累加器与直接寻址单元不等转移

3

2

CJNE Rn,#data, rel

寄存器与立即数不等转移

3

2

CJNE @Ri, #data, rel

RAM单元与立即数不等转移

3

2

DJNZ Rn, rel

寄存器减1不为零转移

2

2

DJNZ direct, rel

直接寻址单元减1不为零转移

3

2

布尔操作类指令

NOP

空操作

1

1

MOV C, bit

直接寻址位送C

2

1

MOV bit, C

C送直接寻址位

2

1

CLR C

C清零

1

1

CLR bit

直接寻址位清零

2

1

CPL C

C取反

1

1

CPL bit

直接寻址位取反

2

1

SETB C

C置位

1

1

SETB bit

直接寻址位置位

2

1

ANL C, bit

C逻辑与直接寻址位

2

2

ANL C, /bit

C逻辑与直接寻址位的反

2

2

ORL C, bit

C逻辑或直接寻址位

2

2

ORL C, /bit

C逻辑或直接寻址位的反

2

2

JC rel

C为1转移

2

2

JNC rel

C为零转移

2

2

JB bit,rel

直接寻址位为1转移

3

2

JNB bit,rel

直接寻址为0转移

3

2

JBC bit,rel

直接寻址位为1转移并清该位

3

2

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有