3.1 mcs-51 系列单片机汇编指令格式及标识

Click here to load reader

Upload: malini

Post on 13-Jan-2016

101 views

Category:

Documents


6 download

DESCRIPTION

3.1 MCS-51 系列单片机汇编指令格式及标识. 指令是使计算机完成基本操作的命令。一种计算机能够执行的全部指令的集合,称为这种计算机的指令系统。单片机的指令系统与微型计算机的指令系统不同, MCS-51 系列单片机指令系统共有 111 条指令, 42 种指令助记符,其中有 49 条单字节指令, 45 条双字节指令和 17 条三字节指令;有 64 条为单机器周期指令, 45 条为双机器周期指令,只有乘、除法两条指令为四机器周期指令。在存储空间和运算速度上,效率都比较高。. - PowerPoint PPT Presentation

TRANSCRIPT

1MCS-51
3.1.1
1
3
3.1.2

2#data8
3#data1616
5addr16addr111611
6direct
7bit
8XX
10/ →“/”“→”

3.2 MCS-51
3.2.1
MOV A#20H
20HA20HA20H
MOV AR0
3.2.3


MOV A20H
20HA20H30HA30H20HMCS-51“#”“#”
MOV AP0
MOV A@R1
DPTRAADPTR2000HA05H2005H30HA30H
2000H
30H
30H
DPTR
A
2005H
05H
A
MCS-51
220H.320H3
3P0.1P01
4TR0/T0
2rel8-128~+127


3.3 MCS-51
3.3.1

MOV
ARn@Ridirect#dataARn@Ridirect16

1A
2Rn
3direct
4@Ri
5DPTR

Rn@Ri“MOV RnRn”“MOV @RiRn”MOV
2MOVX
DPTR64K@Ri2568Ri

MOV A#03H A
ADD A34H PCA
1PC1
A5
XCHD A@Ri A03<=>Ri03
SWAP A A03<=>A47
3-2R030HRAM 30H23HA45HXCH A@R0RAM 30H45HA23H
SWAP AA54H
POP directdirect←SPSP ← SP-1
PUSHPOPSP1SP1
3-3
PUSH A
PUSH B
2ADDC
31

MCS-51ADDADDC
MOV AR2
ADD AR4
MOV R6A
MOV AR1
ADDC AR3
MOV R5A
21DEC
MCS-51CYSUBBCYACOVPDECDEC AP


4DIV
MCS-51
DIV AB


3.3.3
ANL
ORL

XRL
01
3-7
ANL A#11010101B
ORL A#01010100B
MCS-51AA
3-8R0
1A
RL A
2A
RR A

3
RLC A
4
RRC A

3.3.4
1LJMP
1616PC161664KB“”
AJMP11PC2211addr11PC115PC
AJMPPC2=3000H+2=3002H=00110 000 00000010B
addr11=123H=001 00100011B
00110 001 00100101B=3125H
SJMPrel8PC22PCrel
= SJMP+2+rel
8-128~+127PC128127
3-112100HSJMPrel = 5AH215CHrel = F0H20F2H
relrelrel
rel = SJMP
4
MCS-51DPTRADPTRADPTRA64 KB
MOV DPTR#TABLE DPTR
JMP @A+DPTR A
AJMP TAB2 A=2TAB2
AJMP TAB4 A=4TAB4
AJMP TAB6 A=6TAB6

1A
0JZ rel A=0PC ← PC + 2 + relPC ← PC + 2
0JNZ rel A0PC ← PC + 2 + relPC ← PC + 2



CJNE A#datarel A=dataPC ← PC + 3
A>dataC=0PC ← PC + 3 + rel
A<dataC=1PC ← PC + 3 + rel
CJNE Rn#datarel Rn=dataPC ← PC + 3
Rn>dataC=0PC ← PC + 3 + rel
Rn<dataC=1PC ← PC + 3 + rel
CJNE @Ri#datarel ((Ri))=dataPC ← PC + 3
((Ri))>dataC=0PC ← PC + 3 + rel
((Ri))<dataC=1PC ← PC + 3 + rel
CJNE Adirectrel A=directPC ← PC + 3
A>directC=0PC ← PC + 3 + rel
A<directC=1PC ← PC + 3 + rel

31
DJNZ Rnrel Rn1Rn
DJNZ directrel direct1direct
MCS-51DJNZ


2

3
RET
SP←SP-1

4
RETI
SP←SP-1
MCS-51

3.3.5

C
CC
10
5

JC rel C=1PC←PC+2+rel
JNC rel C=0PC←PC+2+rel

2bit
JB bitrel bit=1PC←PC+3+rel
JNB bitrel bit=0PC←PC+3+rel
JBC bitrel bit=1PC←PC+3+relbit←0



3.4 MCS-51

3-20 ORG 3000H
EQU
6bit

3.5 MCS-51
3.5.1
3-24

MCS-51MULABBAR6R4R7R4R6R5R7R5R6R4B1A1R7R4B2A1R6R5B3A3R7R5B4A4
R7
R6
R5
R4
ORG 0100H
MOV @R0A R3
ADD AR3
MOV R3A
ADD AR3
MOV R2A
MOV A#00
ADD AR2




3-29ASC1I
0~9ABCDEF0~9ASCII30H~39HA~FASCII41H~46H0~9A~F0~930HA~F37HASCIIR2R2

MOV AR2
ADD A#07H A~F07H30H
ADD30ADD A#30H

3-308
0~9ABCDEF83FH06H5BH4FH66H6DH7DH07H7FH67H77H7CH39H5EH79H71H
R2R2MOVC A@A+DPTR

MOV AR2
MOV R2A
TAB DB 3FH06H5BH4FH66H6DH7DH07H
DB 7FH67H77H7CH39H5EH79H71H


MOVC A@A+DPTRDPTRR2AR221R3R4

MOV AR2 A
3.5.3
JMP @A+DPTR
R2=0OPR0
R2=1OPRl

TAB LJMP OPR0
3-33RETR2
PUSH ACC 8
PUSH ACC 8