单片机指令速查表

 

MCS 51 指令速查表

类别

指令格式

功能简述

字节数

周期

MOV    A Rn

寄存器送累加器

1

1

MOV    RnA

累加器送寄存器

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    direct2direct1

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

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    Adirect

累加器或直接寻址单元

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    Adirect

累加器异或直接寻址单元

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

C1转移

2

2

JNC    rel

C为零转移

2

2

JB     bitrel

直接寻址位为1转移

3

2

JNB    bitrel

直接寻址为0转移

3

2

JBC    bitrel

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

3

2

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值