找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

MCS-51单片机指令系统表

[复制链接]
admin 发表于 2010-6-3 22:25:14 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×

指令寻址方式

MCS51设有7种寻址方式:

· 寄存器寻址

· 直接寻址

· 寄存器间接寻址

· 立即寻址

· 基址寄存器加变址寄存器间接寻址

· 相对寻址

· 位寻址

一、数据传送类指令

说明:

· #data:8位立即数

· #data16:16位立即数

· Ri:工作寄存器中的寄存器R0R1

· Rn:工作寄存器中的寄存器R0R1R7之一,

· 常用符号

· direct:片内RAMSFR的地址(8位)

· @:间接寻址寄存器

· Bit:片内RAMSFR的位地址

· addr11:11位目的地址

· addr16:16位目的地址

· rel: 补码形式的8位地址偏移量。偏移范围为-128127

· /:位操作指令中,该位求反后参与操作,不影响该位

· direct:片内RAM的直接地址或寄存器

· (X):相应地址单元中的内容

· →:箭头左边的内容送入箭头右边的单元内

指令格式

功能简述

字节数

周期

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,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,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

四、控制转移类指令类

指令格式

功能简述

字节数

周期

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

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

bit,rel

直接寻址位为1转移

3

2

JNB

bit,rel

直接寻址为0转移

3

2

JBC

bit,rel

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

3

2


*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-11-23 11:58 , Processed in 0.052215 second(s), 9 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表