51单片机的指令集与及单片机中常见缩写的注解.docx

上传人:b****2 文档编号:18053125 上传时间:2023-08-07 格式:DOCX 页数:14 大小:20.16KB
下载 相关 举报
51单片机的指令集与及单片机中常见缩写的注解.docx_第1页
第1页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第2页
第2页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第3页
第3页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第4页
第4页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第5页
第5页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第6页
第6页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第7页
第7页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第8页
第8页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第9页
第9页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第10页
第10页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第11页
第11页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第12页
第12页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第13页
第13页 / 共14页
51单片机的指令集与及单片机中常见缩写的注解.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

51单片机的指令集与及单片机中常见缩写的注解.docx

《51单片机的指令集与及单片机中常见缩写的注解.docx》由会员分享,可在线阅读,更多相关《51单片机的指令集与及单片机中常见缩写的注解.docx(14页珍藏版)》请在冰点文库上搜索。

51单片机的指令集与及单片机中常见缩写的注解.docx

51单片机的指令集与及单片机中常见缩写的注解

51单片机的指令集

与及单片机中常见缩写的注解

目录:

第一部分51单片机的指令集…………1

第二部分51指令助记符英文注释及功能…………4

第三部分寄存器、端口等常见缩写的注解…………7

 

第一部分51单片机的指令集

51系列单片机的指令系统,按功能分类可分为:

数据传送、算术操作、逻辑操作、控制转移和布尔变量操作等五种。

具体指令如下列表格所示:

1、数据传送类指令

助记符

功能说明

字节

周期

MOV   A,Rn

寄存器内容送入累加器

1

12

MOV   A,direct

直接地址单元中的数据送入累加器

2

12

MOV   A,@Ri

间接RAM中的数据送入累加器

1

12

MOV   A,#data8

8位立即数送入累加器

2

12

MOV   Rn,A

累加器内容送入寄存器

1

12

MOV   Rn,direct

直接地址单元中的数据送入寄存器

2

24

MOV   Rn,#data8

8位立即数送入寄存器

2

12

MOV   direct,A

累加器内容送入直接地址单元

2

12

MOV   direct,Rn

寄存器内容送入直接地址单元

2

24

MOV   direct,direct

直接地址单元中的数据送入直接地址单元

3

24

MOV   direct,@Ri

间接RAM中的数据送入直接地址单元

2

24

MOV   direct,#data8

8位立即数送入直接地址单元

3

24

MOV   @Ri,A

累加器内容送入间接RAM单元

1

12

MOV   @Ri,direct

直接地址单元中的数据送入间接RAM单元

2

24

MOV   @Ri,#data8

8位立即数送入间接RAM单元

2

12

MOV   DPTR,#data16

16位立即数地址送入地址寄存器

3

24

MOVC   A,@A+DPTR

以DPTR为基地址变址寻址单元中的数据送入累加器

1

24

MOVC   A,@A+PC

以PC为基地址变址寻址单元中的数据送入累加器

1

24

MOVX   A,@Ri

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

1

24

MOVX   A,@DPTR

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

1

24

MOVX   @Ri,A

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

1

24

MOVX   @DPTR,A

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

1

24

PUSH  direct

直接地址单元中的数据压入堆栈

2

24

POP   DIRECT

堆栈中的数据弹出到直接地址单元

2

24

XCH   A,Rn

寄存器与累加器交换

1

12

XCH   A,direct

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

2

12

XCH   A,@Ri

间接RAM与累加器交换

1

12

XCHD  A,@Ri

间接RAM与累加器进行低半字节交换

1

12

 

2、算术操作类指令

助记符

功能说明

字节

周期

ADD   A,Rn

寄存器内容加到累加器

1

12

ADD   A,direct

直接地址单元加到累加器

2

12

ADD   A,@Ri

间接RAM内容加到累加器

1

12

ADD   A,#data8

8位立即数加到累加器

2

12

ADDC  A,Rn

寄存器内容带进位加到累加器

1

12

ADDC  A,direct

直接地址单元带进位加到累加器

2

12

ADDC  A,@Ri

间接RAM内容带进位加到累加器

1

12

ADDC  A,#data8

8位立即数带进位加到累加器

2

12

SUBB  A,Rn

累加器带借位减寄存器内容

1

12

SUBB  A,direct

累加器带借位减直接地址单元

2

12

SUBB  A,@Ri

累加器带借位减间接RAM内容

1

12

SUBB  A,#data8

累加器带借位减8位立即数

2

12

INC   A

累加器加1

1

12

INC   Rn

寄存器加1

1

12

INC   direct

直接地址单元内容加1

2

12

INC   @Ri

间接RAM内容加1

1

12

INC   DPTR

DPTR加1

1

24

DEC   A

累加器减1

1

12

DEC   Rn

寄存器减1

1

12

DEC   direct

直接地址单元内容减1

2

12

DEC   @Ri

间接RAM内容减1

1

12

MUL   A,B

A乘以B

1

48

DIV   A,B

A除以B

1

48

DA    A

累加器进行十进制转换

1

12

3、逻辑操作类指令

助记符

功能说明

字节

周期

ANL   A,Rn

累加器与寄存器相“与”

1

12

ANL   A,direct

累加器与直接地址单元相“与”

2

12

ANL   A,@Ri

累加器与间接RAM内容相“与”

1

12

ANL   A,#data8

累加器与8位立即数相“与”

2

12

ANL   direct,A

直接地址单元与累加器相“与”

2

12

ANL   direct,#data8

直接地址单元与8位立即数相“与”

3

24

ORL   A,Rn

累加器与寄存器相“或”

1

12

ORL   A,direct

累加器与直接地址单元相“或”

2

12

ORL   A,@Ri

累加器与间接RAM内容相“或”

1

12

ORL   A,#data8

累加器与8位立即数相“或”

2

12

ORL   direct,A

直接地址单元与累加器相“或”

2

12

ORL   direct,#data8

直接地址单元与8位立即数相“或”

3

24

XRL   A,Rn

累加器与寄存器相“异或”

1

12

XRL   A,direct

累加器与直接地址单元相“异或”

2

12

XRL   A,@Ri

累加器与间接RAM内容相“异或”

1

12

XRL   A,#data8

累加器与8位立即数相“异或”

2

12

XRL   direct,A

直接地址单元与累加器相“异或”

2

12

XRL   direct,#data8

直接地址单元与8位立即数相“异或”

3

24

CLR   A

累加器清0

1

12

CPL   A

累加器求反

1

12

RL    A

累加器循环左移

1

12

RLC   A

累加器带进位循环左移

1

12

RR    A

累加器循环右移

1

12

RRC   A

累加器带进位循环右移

1

12

SWAP  A

累加器半字节交换

1

12

4、控制转移类指令

助记符

功能说明

字节

周期

ACALL addr11

绝对短调用子程序

2

24

LACLL addr16

长调用子程序

3

24

RET

子程序返回

1

24

RETI

中断返回

1

24

AJMP  addr11

绝对(短)转移

2

24

LJMP  addr16

长转移

3

24

SJMP  rel

相对(短)转移

2

24

JMP   @A+DPTR

相对于DPTR的间接转移

1

24

JZ    rel

累加器为零转移

2

24

JNZ   rel

累加器非零转移

2

24

CJNE  A,direct,rel

累加器与直接地址单元比较,不等则转移

3

24

CJNE  A,#data8,rel

累加器与8位立即数比较,不等则转移

3

24

CJNE  Rn,#data8,rel

寄存器与8位立即数比较,不等则转移

3

24

CJNE  @Ri,#data8,rel

间接RAM单元,不等则转移

3

24

DJNZ  Rn,rel

寄存器减1,非零转移

3

24

DJNZ  direct,rel

直接地址单元减1,非零转移

3

24

NOP

空操作

1

12

5、布尔变量操作类指令

助记符

功能说明

字节

周期

CLR   C

清进位位

1

12

CLR   bit

清直接地址位

2

12

SETB  C

置进位位

1

12

SETB  bit

置直接地址位

2

12

CPL   C

进位位求反

1

12

CPL   bit

直接地址位求反

2

12

ANL   C,bit

进位位和直接地址位相“与”

2

24

ANL   C,bit

进位位和直接地址位的反码相“与”

2

24

ORL   C,bit

进位位和直接地址位相“或”

2

24

ORL   C,bit

进位位和直接地址位的反码相“或”

2

24

MOV   C,bit

直接地址位送入进位位

2

12

MOV   bit,C

进位位送入直接地址位

2

24

JC    rel

进位位为1则转移

2

24

JNC   rel

进位位为0则转移

2

24

JB    bit,rel

直接地址位为1则转移

3

24

JNB   bit,rel

直接地址位为0则转移

3

24

JBC   bit,rel

直接地址位为1则转移,该位清零

3

24

第二部分:

51指令助记符英文注释及功能

(1)数据传送类指令(7种助记符)

助记符   英文注释   功能

MOV   Move  对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送

MOVC   MoveCode   读取程序存储器数据表格的数据传送

MOVX   MoveExternalRAM   对外部RAM的数据传送

XCH   Exchange   字节交换

XCHD   Exchangelow-nibbleDigit   低半字节交换

PUSH   PushontoStack   入栈

POP   PopfromStack   出栈

(2)算术运算类指令(8种助记符)

ADD   Addition   加法

ADDC   AddwithCarry   带进位加法

SUBB   SubtractwithBorrow   带借位减法

DA   DecimalAdjust   十进制调整

INC   Increment   加1

DEC   Decrement   减1

MUL   Multiply   乘法

DIV   Divide   除法

(3)逻辑运算类指令(10种助记符)

ANL   AndLogic   逻辑与

ORL   ORLogic   逻辑或

XRL   Exclusive-ORLogic   逻辑异或

CLR   Clear   清零

CPL   Complement   取反

RL   RotateLeft   循环左移

RLC   RotateLeftthroughCarry带进位循环左移

RR   RotateRight   循环右移

RRC   RotateRightthroughCarry带进位循环右移

SWAP   Swap   低4位与高4位交换

(4)控制转移类指令(17种助记符)

ACALL   AbsolutesubroutineCall   子程序绝对调用

LCALL   LongsubroutineCall   子程序长调用

RET   Returnfromsubroutine   子程序返回

RETI   ReturnfromInterruption   中断返回

JMP   JumpIndirectly   

SJMP   ShortJump   短转移

AJMP   AbsoluteJump   绝对转移

LJMP   LongJump   长转移

CJNE   CompareandJumpifNotEqual   比较转移(比较不相等则转移)

DJNZ   DecreaseandJumpifNotZero   循环转移(减1后不为0则转移)

JZ   JumpifZero   结果(累加器)为0则转移

JNZ   JumpifNotZero   结果(累加器)不为0则转移

JC   JumpiftheCarryisset   有进位则转移

JNC   JumpifNoCarry   无进位则转移

JB   JumpifHavingSettheBit  指定的bit位为1则转移

JNB   JumpifNotHavingSettheBit   指定的bit位为0则转移

JBC   JumpifHavingSettheBitandCleartheBit   位为1则转移,并清除该位

NOP   NoOperation   空操作

(5)位操作指令(1种助记符)

SETB   SettheBit   置位

(6)伪指令

助记符   英文注释   功能

ORG   Origin(汇编后生成程序存放的)起始地址

END   End   汇编结束

EQUEqual赋值(可赋予数字或符号)

DATA   Data   数据地址赋值

DBDefineByte定义(并存储)字节

DWDefineWord定义(并存储)字(即16位数据项)

DSDefineStorage定义(预留)存储空间

XDATA   ExternalData   外部扩展内存数据定义字

BIT   Bit   位地址赋值

第三部分寄存器、端口等常见缩写的含义

寄存器部分:

PC=ProgramCounter含义:

程序计数器

SFR=SpecialFunctionRegister含义:

特殊功能寄存器

ACC=Accumulate含义:

累加器

PSW=ProgramStatusWord含义:

程序状态字

PSW各位:

{

CY=Carry(psw.7)含义:

进位(标志)

AC=AuxiliaryCarry(psw.6)含义:

辅助进位

F0=Flag(psw.5)含义:

用户自定义标志位

RS1,RS0=RegisterSelect(psw.4,psw.3)含义:

工作寄存器组选择位

OV=Overflow(psw.2)含义:

溢出

P=Parity  (psw.0)含义:

奇偶校验位

}

SP=StackPointer含义:

堆栈指针

DPTR=DataPointerRegister含义:

数据指针寄存器

DPL/DPH=DataPointerLowbyte/Highbyte含义:

数据指针寄存器低8位/高8位

IE=InterruptEnable含义:

中断使能(中断允许)

IE寄存器各位:

{

EA=EnableAllInterrupt含义:

CPU开/关中断控制位

ES=EnableSerial含义:

串行口中断允许位

ET1=EnableTimer含义:

定时器1溢出中断允许位

EX1=EnableExternal含义:

外部中断1的中断允许位

}

IP=InterruptPriority含义:

中断优先级(中断优先权)

IP寄存器各位:

{

PS=PrioritySerial(IP.4)含义:

串口优先级标志位

PT1=PriorityTimer含义:

定时器1优先级标志位

PX1=PriorityExternal含义:

外部中断1优先级标志位

}

SCON=SerialControl含义:

串行口控制

SCON寄存器位:

{

TI=TransmitInterrupt  含义:

串行口发送中断请求标志位

RI=ReceiveInterrupt  含义:

串行口接收中断请求标志位

}

TCON=TimerControl含义:

定时器/计数器控制

TCON寄存器各位:

{

TF1=Timer1OverflowFlag(TCON.7)含义:

定时器T1溢出中断请求标志

TR1=Timer1Run(TCON.6)含义:

定时器T1启动控制位

IE1=InterruptExterior(TCON.3)含义:

外部中断1请求标志位

IT1=InterruptTouchType (TCON.2)含义:

外部中断1触发方式选择位

}

TMOD=TimerMode含义:

定时器/计数器模式控制寄存器

SBUF=SerialBuffer含义:

串行口数据寄存器

PCON=PowerControl含义:

电源控制和波特率选择

端口部分(低电平有效信号的上划线未画上):

OE=OutputEnable含义:

输出使能

RST=RESET    含义:

复位,重启

ALE=AddressLatchEnable含义:

地址锁存允许

PROG=Programing含义:

编程口

PSEN=ProgramStorageEnable含义:

外部程序存储器读选通

EA=EnableAddress含义:

外部程序存储器地址允许

P3口复用:

{

RXD=ReceiveexternalserialData  (p3.0)含义:

接收串行数据

TXD=TransmitexternalserialData  (p3.1)含义:

发送串行数据

INT0=Interrupt0   (p3.2)含义:

中断0

INT1=Interrupt1   (p3.3)含义:

中断1

T0=Timer0    (p3.4)含义:

定时器0

T1=Timer1    (p3.5)含义:

定时器1

RD=Read   (p3.6)含义:

外部数据存储器(RAM)的读信号

WR=Write    (p3.7)含义:

外部数据存储器(RAM)的写信号

}

XTAL2,XTAL1=ExternalCrystalOscillator含义:

外部晶体振荡器

其它:

MSB=MostSignificantBit含义:

最高有效位

LSB=LeastSignificantBit含义:

最低有效位

CLKOUT=Clockout,时钟输出

BUSWIDTH=BusWidth,总线宽度

Vref=VoltageReference,参考电压(带ADC的单片机中有的)

HSO=HighSpeedOutput,高速输出

HSI=HighSpeedInput,高速输入

INST=Instruction,指令

READY=Ready,就绪,总线中的就绪信号或引脚

NMI=NoMaskInterrupt(Input),不可屏蔽的中断请求(输入)

BHE=BankHighEnable,存储器的高位允许,如在80286系统中RAM的组织为16位的,分为高8位和低8位数据,分别的控制信号为BHE和BLE

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

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2