51单片机汇编指令详解Word文件下载.docx

上传人:b****6 文档编号:21731729 上传时间:2023-02-01 格式:DOCX 页数:35 大小:21.71KB
下载 相关 举报
51单片机汇编指令详解Word文件下载.docx_第1页
第1页 / 共35页
51单片机汇编指令详解Word文件下载.docx_第2页
第2页 / 共35页
51单片机汇编指令详解Word文件下载.docx_第3页
第3页 / 共35页
51单片机汇编指令详解Word文件下载.docx_第4页
第4页 / 共35页
51单片机汇编指令详解Word文件下载.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

51单片机汇编指令详解Word文件下载.docx

《51单片机汇编指令详解Word文件下载.docx》由会员分享,可在线阅读,更多相关《51单片机汇编指令详解Word文件下载.docx(35页珍藏版)》请在冰豆网上搜索。

51单片机汇编指令详解Word文件下载.docx

机器周期;

1

影响标志位:

C,AC,OV

3、ADDA,direct

直接寻址加法指令

25H

累加器内容与内部RAM单元或专用寄存器内容相加

A←(A)+(direct)

4、ADDA,@Ri

间接寻址加法指令

26H~27H

累加器内容与内部RAM低128单元内容相加

A←(A)+((Ri)),i=0,1

5、ADDA,#data

立即数加法指令

24H

累加器内容与立即数相加

A←(A)+data

6、ADDCA,Rn

寄存器带进位加法指令

38H~3FH

累加器内容、寄存器内容和进位位相加

A←(A)+(Rn)+(C),n=0~7

1

7、ADDCA,direct

直接寻址带进位加法指令

35H

累加器内容、内部RAM低128单元或专用寄存器内容与进位位加

A←(A)+(direct)+(C)

8、ADDCA,@Ri

间接寻址带进位加法指令

36H~37H

累加器内容、内部RAM低128单元内容及进位位相加

A←(A)+((Ri))+(C),i=0,1

9、ADDCA,#data

立即数带进位加法指令

34H

累加器内容、立即数及进位位相加

A←(A)+data+(C)

10、AJMPaddr11

绝对转移指令

{A10,A9,A8,00001},A[7:

构造目的地址,实现程序转移。

其方法是以指令提供的11位地址,取代PC的低11位,.而PC的高5位保持不变。

PCl0~0←addrll

由于addrll的最小值是000H,最大值是7FFH,因此地址转移范围是2KB。

11、ANLA,Rn

寄存器逻辑与指令

58H~5FH

累加器内容逻辑与寄存器内容

A←(A)^(Rn),n=0~7

12、ANLA,direct

直接寻址逻辑与指令

55H

累加器内容逻辑与内部RAM低128单元或专用寄存器内容

A←(A)^(diret)

13、ANLA,@Ri

间接寻址逻辑与指令

56H~57H

累加器内容逻辑与内部RAM低128单元内容

A←(A)^((Ri))i=0,1

14、ANLA,#data

立即数逻辑与指令

54H

累加器内容逻辑与立即数

A←(A)^data

15、ANLdirect,A

累加器逻辑与指令

52H

内部RAM低128单元或专用寄存器内容逻辑与累加器内容

direct←(A)^(direct)

16、ANLdirect,#data

逻辑与指令

53H

内部RAM低128单元或专用寄存器内容逻辑与立即数

direct←(direct)^data

3

17、ANLC,bit

位逻辑与指令

82H

进位标志逻辑与直接寻址位

C←(C)^(bit)

18、ANLC,/bit

B0H

进位标志逻辑与直接寻址位的反

 

以C开头的指令有10条,分别为:

CJNEA,dircet,rel

CJNEA,#data,rel

CJNERn,#data,rel

CJNE@Ri,#data,rel

CLRA

CLRC

CLRbit

CPLA

CPLC

CPLbit

1、CJNEA,dircet,rel

数值比较转移指令

B5H

累加器内容与内部RAM低128字节或专用寄存器内容比较,不等则转移。

若(A)=(direct),则PC←(PC)+3,C←0

若(A)>(direct),则PC←(PC)+3+rel,C←0

若(A)<(direct),则PC←(PC)+3+rel,C←1

2、CJNEA,#data,rel

B4H

累加器内容与立即数比较,不等则转移。

若(A)=data,则PC←(PC)+3,C←0

若(A)>data,则PC←(PC)+3+rel,C←0

若(A)<data,则PC←(PC)+3+rel,C←1

3、CJNERn,#data,rel

B8H~BFH

寄存器内容与立即数比较,不等则转移。

若(Rn)=data,则PC←(PC)+3,C←0

若(Rn)>data,则PC←(PC)+3+rel,C←0

若(Rn)<data,则PC←(PC)+3+rel,C←1

4、CJNE@Ri,#data,rel

B6H~B7H

内部RAM低128单元内容与立即数比较,不等则转移。

若((Ri))=data,则PC←(PC)+3,C←0

若((Ri))>data,则PC←(PC)+3+rel,C←0

若((Ri))<data,则PC←(PC)+3+rel,C←1

5、CLRA

累加器清0指令

E4H

累加器清0

A←0

6、CLRC

进位标志清0指令

C3H

进位位清0

C←0

7、CLRbit

直接寻址位清0指令

C2H

直接寻址位清0

bit←0

8、CPLA

累加器取反指令

F4H

累加器取反

A←(A)

9、CPLC

进位标志取反指令

B3H

进位标志位状态取反

C←(c取反)

10、CPLbit

直接寻址位取反指令

B2H

直接寻址位取反

bit←(bit取反)

以D开头的指令有8条,分别为:

DAA

DECA

DECRn

DECdirect

DEC@Ri

DIVAB

DJNZRn,rel

DJNZdirect,rel

1、DAA

十进制调整指令

D4H

对BCD码加法运算的结果进行有条件的修正

若(A)3~0>9|(AC)=1,则A3~0←(A)3~0+6

若(A)7~4>9|(C)=1,则A7~4←(A)7~4+6

若(A)7~4=9^(A)3~0>9,则A7~4←(A)7~4+6

DA指令不影响溢出标志

2、DECA

累加器减1指令

14H

累加器内容减1

A←(A)-1

3、DECRn

寄存器减1指令

18H~1FH

寄存器内容减1

Rn←(Rn)-1,n=0~7

4、DECdirect

直接寻址减1指令

15H

内部RAM低128单元及专用寄存器内容减1

direct←(direct)-1

5、DEC@Ri

间接寻址减1指令

16H~17H

内部RAM低128单元内容减1

(Ri)←((Ri))-1,i=0,1

6、DIVAB

无符号数除法指令;

84H

A的内容被B的内容除。

指令执行后,商存于A中,余数存于B中。

A←(A)/(B)的商

B←(A)/(B)的余数

4

C被清0;

若B=00H,除法无法进行,并使OV=1;

否则OV=0。

7、DJNZRn,rel

寄存器减1条件转移指令

D8H~DFH

寄存器内容减1。

不为0转移;

为0顺序执行。

Rn←(Rn)-l,n=0~7

若(Rn)≠0,则PC←(PC)+2+rel

若(Rn)=0,则PC←(PC)+2

8、DJNZdirect,rel

直接寻址单元减1条件转移指令

D5H

内部RAM低128单元内容减1。

若(direct)≠0,则PC←(PC)+3+rel

若(direct)=0,则PC←(PC)+3

以I开头的指令有5条,分别为:

INCA

INCRn

INCdirect

INC@Ri

INCDPTR

1、INCA

累加器加1指令

04H

累加器内容加1

A←(A)+1

2、INCRn

寄存器加1指令

08H~0FH

寄存器内容加1

Rn←(Rn)+1,n=0~7

3、INCdirect

直接寻址单元加1指令

05H

内部BAM低128单元或专用寄存器内容加1

direct←(direct)+1

4、INC@Ri

间接寻址单元加1指令

06H~07H

内部RAM低128单元内容加1

(Ri)←((Ri))+1;

i=0,l

5、INCDPTR

16位数据指针加1指令

A3H

数据指针寄存器DPTR内容加1

DPTR←(DPTR)+1

以J开头的指令有8条,分别为:

JBbit,rel

JBCbit,rel

JCrel

JMP@A+DPTR

JNBbit,rel

JNCrel

JNZrelJZrel

1、JBbit,rel

位条件转移指令。

20H

根据指定位的状态,决定程序是否转移。

若为1则转移;

否则顺序执行。

若(bit)=1,则PC←(PC)+3+rel

若(bit)≠1,则PC←(PC)+3

2、JBCbit,rel

位条件转移清0指令

10H

对指定位的状态进行测试。

若为1,则把该位清0并进行转移;

否则程序顺序执行。

若(bit)=1,则PC←(PC)+3+rel,bit←0

3、JCrel

累加位条件转移指令

40H

根据累加位(C)的状态决定程序是否转移,若为1则转移,否则顺序执行。

若(C)=1,则PC←(PC)+2+rel

若(C)≠1,则PC←(PC)+2

4、JMP@A+DPTR

无条件间接转移指令

72H

A内容与DPTR内容相加作为转移目的地址,进行程序转移。

PC←(A)+(DPTR)

5、JNBbit,rel

位条件转移指令

30H

若为0则转移;

若(bit)=0,则PC←(PC)+3+rel

若(bit)≠0,则PC←(PC)+3

6、JNCrel

50H

根据累加位(C)的状态决定程序是否转移。

若为o则转移;

若(C)=0,则PC←(PC)+2+rel

若(C)≠0,则PC←(PC)+2

7、JNZrel

判0转移指令

70H

累加位(A)的内容不为0,则程序转移;

若(A)≠0,则PC←(PC)+2+rel

若(A)=0,则PC←(PC)+2

8、JZrel

60H

累加位(A)的内容为o,则程序转移;

若(A)=0,则PC←(PC)+2+rel

若(A)≠0,则PC←(PC)+2

以L开头的指令就2条,分别为:

LCALLaddr16

LJMPaddrl6

1、LCALLaddr16

长调用指令

12H

按指令给定地址进行子程序调用

PC←(PC)+3

PC←addrl6

在64KB的范围内调用子程序

2、LJMPaddrl6

长转移指令

02H

使程序按指定地址进行无条件转移

以M开头的指令有24条,分别为:

MOVA,Rn

MOVA,direct

MOVA,@Ri

MOVA,#data

MOVRn,A

MOVRn,direct

MOVRn,#data

MOVdirect,A

MOVdirect,Rn

MOVdirect2,direct1

MOVdirect,@Ri

MOVdirect,#data

MOV@Ri,A

MOV@Ri,direct

MOV@Ri,data

MOVC,bit

MOVbit,C

MOVDPTR,#datal6

MOVCA,@A+DPTR

MOVCA,@A+PC

MOVXA,@Ri

MOVXA,@DPTR

MOVX@Ri,A

MOVX@DPTR,A

MULAB     

1、MOVA,Rn

寄存器数据传送指令

E8H~EFH

寄存器内容送累加器

A←(Rn),n=0~7

2、MOVA,direct

直接寻址数据传送指令

E5H

内部RAM低126单元或专用寄存器内容送累加器

A←(direct)

3、MOVA,@Ri

间接寻址数据传送指令

E6H~E7H

内部RAM低128单元内容送累加器

A←((Ri)),i=0,1

4、MOVA,#data

立即数据传送指令

74H

立即数送累加器

A←data

5、MOVRn,A

累加器数据传送指令

F8H~FFH

累加器内容送寄存器

Rn←(A)

6、MOVRn,direct

A8H~AFH

内部RAM低128单元或专用寄存器内容送累加器

Rn←(direct),n=0~7

7、MOVRn,#data

78H~7FH

立即数送寄存器

Rn←data,n=0~7

8、MOVdirect,A

F5H

累加器内容送内部RAM低128单元或专用寄存器

direct←(A)

9、MOVdirect,Rn

88H~8FH

寄存器内容送内部RAM低128单元或专用寄存器

direct←(Rn),n=0~7

10、MOVdirect2,direct1

85H

内部RAM低123单元或专用寄存器之间的相互传送

direct2←(direct1)

11、MOVdirect,@Ri

86H~87H

内部RAM低128单元内容送内部RAM低128单元或专用寄存器

direct←((Ri)),i=0,1

12、MOVdirect,#data

立即数传送指令

75H

立即数送内部RAM低128单元或专用寄存器

direct←data

13、MOV@Ri,A

F6H~F7H

累加器内容送内部RAM低128单元

(Ri)←(A),i=0,1

14、MOV@Ri,direct

A6H~A7H

内部RAM低128单元或专用寄存器内容送内部RAM低128单元

(Ri)←(direct),i=0,1

15、MOV@Ri,data

76H~77H

立即数送内部RAM低128单元

(Ri)←data,i=0,1

16、MOVC,bit

位数据传送指令

A2H

内部RAM可寻址位或专用寄存器的位状态送累加位C

C←(bit)

17、MOVbit,C

累加位数据传送指令

92H

累加器状态送内部RAM可寻址位或专用寄存器的指定位

bit←(C)

18、MOVDPTR,#datal6

十六位数据传送指令

90H

十六位立即数送数据指针

DPH←datal5~8

DPL←data7~0

19、MOVCA,@A+DPTR

程序存储器读指令

93H

读程序存储器单元内容送累加器

A←((A)+(DPTR))

变址寄存器A内容加基址寄存器DPTR内容时,低8位产生的进位直接加到高位,不影响进位标志。

20、MOVCA,@A+PC

83H

A←((A)+(PC))

同MOVCA,@A+DPTR指令(序号70)

21、MOVXA,@Ri

寄存器间接寻址外部RAM读指令

E2H~E3H

读外部RAM低256单元数据送累加器

22、MOVXA,@DPTR

数据指针间接寻址外部RAM读指令

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1