一、引脚
1.1 电源引脚
- $Vcc$(Volt Current Condenser) 电源。
 - $Vss$: 接地。
 
1.2 时钟引脚
- $XTAL1$(External Crystal Oscillator 1):片内时钟振荡器的反相放大器的输入端。
 - $XTAL2$(External Crystal Oscillator 2):片内时钟振荡器的反相放大器的输出端。
 
1.3 控制引脚
- $RST$(RESET):复位信号输入端,高电平有效。
 - $\overline{EA}/V_{pp}$(Enable Address/Voltage Pulse of Programing):外部程序存储器访问允许控制端。/对片内Flash进行编程时,作为接入编程电压。
 - $ALE/PROG$(Address Latch Enable/PROGramming):ALE为地址锁存控制信号端,对片内Flash进行编程时,作为编程脉冲输入端。
 - $\overline{PSEN}$(Program Strobe ENable):访问片外程序存储器的读选通信号,低电平有效。
 
1.4 并行I/O口引脚
- $P0-P3$(Pin1-Pin3):并行I/O口引脚。
 
1.5 P1口第二功能
- $P1.0/T2$(Time2):定时器/计数器T2输入引脚。
 - $P1.1/T2EX$(Timer 2 EXternal pin):定时器2外部引脚触发信号。
 - $P1.5/MOSI$(Master Output Slave Input):用于对片内Flash存储器的串行编程和校验。
 - $P1.6/MISO$(Master Input Slave Output):用于对片内Flash存储器的串行编程和校验。
 - $P1.7/SCK$(CMOS Clock):用于对片内Flash存储器的串行编程和校验的移位脉冲输入引脚。
 
1.6 P3口第二功能
$P3.0/RXD$(Receive eXternal Data):串行数据输入口。
$P3.1/TXD$(Transmit eXternal Data):串行数据输出口。
$P3.2/\overline{INT0}$(INTerrupt 0):外部中断0输入。
$P3.3/\overline{INT1}$(INTerrupt 1):外部中断1输入。
$P3.4/T0$(Time 0):定时器0外部计数输入。
$P3.5/T1$(Time 1):定时器1外部计数输入。
$P3.6/\overline{WR}$(WRite):外部数据存储器的写选通控制信号。
$P3.7/\overline{RD}$(Read):外部数据存储器的读选通控制信号。
二、特殊功能寄存器
- $P0$(Pin 0):P0口
 - $SP$(Stack Pointer):堆栈指针
 - $DP0L$(Data Pointer 0 Low-byte):数据指针DPTR0低字节
 - $DP0H$(Data Pointer 0 High-byte):数据指针DPTR0高字节
 - $DP1L$(Data Pointer 1 Low-byte):数据指针DPTR1低字节
 - $DP1H$(Data Pointer 1 High-byte):数据指针DPTR1高字节
 - $PCON$(Power CONtrol):电源控制寄存器
 - $TCON$(Timer/Counter CONtrol):定时器/计数器1、2的控制寄存器
 - $TMOD$(Timer/Counter MODe ):定时器/计数器1、2的方式寄存器
 - $TL0$(Timer/Counter 0 Low-byte):定时器/计数器0低字节
 - $TL1$(Timer/Counter 0 High-byte):定时器/计数器0高字节
 - $TH0$(Timer/Counter 1 Low-byte):定时器/计数器1低字节
 - $TH1$(Timer/Counter 1 High-byte):定时器/计数器1高字节
 - $AUXR$(AUXiliary Register):辅助寄存器
 - $P1$(Pin 1):P1口寄存器
 - $SCON$(Serial port CONtrol):串行控制寄存器
 - $SBUF$(Serial port data BUFfer):串行发送数据缓冲器
 - $P2$(Pin 2):P2口寄存器
 - $AUXR1$(AUXiliary Register):辅助寄存器
 - $WDTRST$(WatchDog Timer Reset):看门狗复位寄存器
 - $IE$(Interrupt Enable):中断允许控制寄存器
 - $P3$(Pin 3):P3口寄存器
 - $IP$(Interrupt Priority):中断优先级控制寄存器
 - $PSW$(Program Status Word):程序状态字寄存器
 - $A/Acc$(ACCumulate):累加器
 - $B$(register B):B寄存器
 - $T2CON$(Timer/Counter 2 CONtrol):定时器/计数器2控制寄存器
 - $T2MOD$(Timer/Counter MODe):定时器/计数器2方式寄存器
 - $RCAP2L$(Reload/CAPture 2 Low-byte):定时器/计数器2陷阱寄存器(低字节)
 - $RCAP2H$(Reload/CAPture 2 High-byte):定时器/计数器2陷阱寄存器(高字节)
 - $TL2$(Timer/Counter 2 Low-byte):定时器/计数器2(低字节)
 - $TH2$(Timer/Counter 2 High-byte):定时器/计数器2(低字节)
 
三、特殊功能寄存器状态
3.1 PSW程序状态寄存器
- Cy/PSW.7(Carry):进位标志位
 - Ac/PSW.6(Auxiliary carry):辅助进位标志位
 - F0/PSW.5(Flag 0):用户使用的标志位
 - RS1、RS0/PSW.4、PSW.3(Register Selection):工作寄存器组选择位
 - OV/PSW.2(OVerflow):溢出标志位
 - P/PSW.0(Parity):奇偶标志位
 
3.2 AUXR辅助寄存器
- DISALE/AUXR.0(Disabled Address Latch Enable):ALE的禁止/允许
 - DISRTO/AUXR.3(Disabled Recovery Time Out):禁止/允许看门口定时器WDT溢出时的复位输出
 - WDIDLE/AUXR.4(Watch Dog IDLE):WDT在空闲模式下的禁止/允许控制位
 
3.3 AUXR1辅助寄存器
- DPS/AUXR1.0(Data Processing System):数据指针寄存器
 
3.4 PCON电源控制寄存器
- SMOD/PCON.7(Serial Model Control Register):串行通信的波特率选座位
 - GF1/PCON.3、GF0/PCON.2(General Flag1、General Flag2):通用标志位,供用户使用,应充分利用
 - PD/PCON.1(Power Down):掉电模式控制位
 - IDL/PCON.7(IDLe):空闲模式控制位
 
3.5 TCON 定时器/计数器的控制寄存器
- TF1/TCON.7(Timer Overflow Flag 1):片内定时器/计数器T1的溢出中断请求标志位
 - TF0/TCON.5(Timer Overflow Flag 2):片内定时器/计数器T0的溢出中断请求标志位
 - IE1/TCON.3(Interrupt External 1):外部中断请求1的中断请求标志位
 - IT1/TCON.2(Interrupt Type 1):选择外部中断请求1位跳沿触发方式还是电平触发方式
 - IE0/TCON.1(Interrupt External 0):外部中断请求0的中断请求标志位
 - IT0/TCON.0(Interrupt Type 0):选择外部中断请求0位跳沿触发方式还是电平触发方式
 
3.6 SCON串行口控制寄存器
- SM0/SCON.7、SM1/SCON.6(Serial port Mode control):串行工作方式选择位
 - SM2/SCON.5(Serial port Mode control 2):多机通信控制位
 - REN/SCON.4(Receive ENable):允许串行接受位
 - TB8/SCON.3(Transmit data Bit 8):发送的第9位数据
 - RB8/SCON.2(Receive data Bit 8):接受的第9位数据
 - TI/SCON.1(Transmit Interrupt):串行口的发送中断请求标志位
 - RI/SCON.0(Receive Interrupt):串行口的接受中断请求标志位
 
3.7 IE中断允许寄存器
- EA/IE.7(Enable All Interrupt):中断允许总开关控制位
 - ET2/IE.5(Enable Timer 2):定时器/计数器T2的中断允许位
 - ES/IE.4(Enable Serial Port):串行口中断允许位
 - ET1/IE.3(Enable Timer 1):定时器/计数器T1的中断允许位
 - EX1/IE.2(Enable External 1):外部中断1中断允许位
 - ET0/IE.1(Enable Timer 2):定时器/计数器T0的中断允许位
 - EX0/IE.0(Enable External 0):外部中断0中断允许位
 
3.8 IP中断优先级寄存器
- PT2/IP.5(Priority Timer 2):定时器T2中断优先级控制位
 - PS/IP.4(Priority Serial Port):串行口中断优先级控制位
 - PT1/IP.3(Priority Timer 1):定时器T1中断优先级控制位
 - PX1/IP.2(Priority External 1):外部中断1中断优先级控制位
 - PT0/IP.1(Priority Timer 2):定时器T0中断优先级控制位
 - PX0/IP.0(Priority External 0):外部中断0中断优先级控制位
 
3.9 TMOD工作方式控制寄存器
高4位控制T1,低4位控制T0
- GATE(GATE):门控位
 - M1、M2(Mode):工作方式选择位
 - $C/\overline{T}$(Counter/Timer):计数器模式和定时器模式选择位
 
3.10 TCON定时器/计数器控制寄存器
- TF1/TCON.7(Timer Overflow Flag 1):定时器/计算器1计算溢出标志位
 - TR1/TCON.6(Timer Run 1):定时器/计算器1计算运行控制位
 - TF0/TCON.5(Timer Overflow Flag 0):定时器/计算器0计算溢出标志位
 - TR0/TCON.4(Timer Run 0):定时器/计算器0计算运行控制位
 - IE1/TCON.3(Interrupt External 1):外部中断请求1的中断请求标志位
 - IT1/TCON.2(Interrupt Type 1):选择外部中断请求1位跳沿触发方式还是电平触发方式
 - IE0/TCON.1(Interrupt External 0):外部中断请求2的中断请求标志位
 - IT0/TCON.0(Interrupt Edge 1):选择外部中断请求0位跳沿触发方式还是电平触发方式
 
3.11 T2MOD工作方式控制寄存器
DCEN/T2MOD.0(Decrement Count ENable/自己猜的):计数方式选择,向下计数允许位
T2OE/T2MOD.1(Timer 2 Out Enable/自己猜的):输出允许位
3.12 T2CON定时器/计数器控制寄存器
- TF2/T2CON.7(Timer Overflow Flag 2):T2计数计满溢出回0中断请求标志位
 - EXF2/T2CON.6(timer EXternal (overflow) Flag 2):T2外部中断请求标志位
 - RCLK/T2CON.5(Receive CLocK):串行口接受时钟标志位
 - TCLK/T2CON.4(Transmit CLocK):串行口发送时钟标志位
 - EXEN2/T2CON.3(timer EXternal ENable 2):T2外部采样允许标志位
 - TR2/T2CON.2(Timer Run control 2):T2启动/停止控制位
 - $C/\overline{T2}$/T2CON.1(Counter/Timer 2):T2的定时或计数模式选择位
 - CP/RL2/T2CON.0(CaPture/ReLoad 2):T2捕捉/重新装载选择位
 
四、操作指令助记符
4.1 数据类传送类指令
- MOV(Move):对内部数据寄存器RAM和特殊功能寄存器SFR的数据进行传送
 - MOVX(Move External RAM):对外部数据寄存器RAM或I/O端口寄存器进行传输
 - MOVC(Move Code): 读取程序存储器数据表格的数据传送
 - PUSH(Push onto Stack):进栈
 - POP(Pop from Stack):出栈
 - XCH(Exchange): 整字节交换指令
 - XCHD(Exchange low-order Digit):低位半字节(低4位)交换指令
 
4.2 算数运算类指令
- ADD(Addition):加法指令
 - ADDC(Add with Carry):带进位加法指令
 - INC(Increment):增1指令
 - DA(Decimal Adjust):十进制调整指令
 - SUBB(Subtract with Borrow):带借位减法指令
 - DEC(Decrement):减1指令
 - MUL(Multiplication):乘法指令
 - DIV(Division):除法指令
 
4.3 逻辑操作类指令
- CLR(Clear):累加器A字节清0指令
 - CPL(Complement):累加器A字节求反指令
 - RL(Rotate Left):左环移指令
 - RLC(Rotate Left throught the Carry Flag):带进位左环移指令
 - RR(Rotate Right):右环移指令
 - RRC(Rotate Right throught the Carry Flag):带进位右环移指令
 - SWAP(Swap):累加器半字节交换指令
 - ANL(And Logic):逻辑与指令
 - ORL(Or Logic):逻辑或指令
 - XRL(Exclusive-Or Logic):逻辑异或指令
 
4.4 控制跳转类指令
- LJMP(Long Jump):长跳转指令
 - SJMP(Short Jump):相对跳转指令
 - AJMP(Absolure Jump):绝对跳转指令
 - JMP(Jump Indirect):间接跳转指令
 - JZ(Jump if Zero):条件跳转,如果累加器内容为0,则执行跳转指令
 - JNZ(Jump if Not Zero):条件跳转,如果累加器内容非0,则执行跳转指令
 - CJNE(Compare and Jump if Not Equal):比较不相等跳转指令
 - DJNZ(Decrement and Jump if Not Zero):减1不为0跳转指令
 - LCALL(Long Subroutine Call):长调用指令
 - ACALL(Absolute Subroutine Call):绝对调用指令
 - RET(Return from Subroutine):子程序返回指令
 - RETI(Return from Interruption):中断返回指令
 - NOP(No operation):空操作指令
 
4.5 位操作类指令
- SETB(Set Bit):复位指令
 - JC(Jump if the Carry Flag is Set):如果进位标志位Cy=1,则转移
 - JNC(Jump if Not Carry):如果进位标志位Cy=0,则转移
 - JB(Jump if the Bit is Set):如果直接寻找位=1,则转移
 - JNB(Jump if the Bit is Not Set):如果直接寻找位=0,则转移
 - JBC(Jump if the Bit is Set and Clear the Bit):如果直接寻找位=1,则转移,并把寻址为清0
 
4.6 伪指令
- ORG(ORiGin):汇编起始地址命令
 - END(END of assemble):汇编终止命令
 - EQU(EQUate):标号赋值命令
 - DB(Define Byte):定义数据字节命令
 - DW(Define Word):定义数据字命令
 - DS(Define Storage):保留字节单元命令
 - BIT(Bit):位定义命令
 
五、其它常用英文缩写
- $RAM$(Random Access Memory):数据存储器
 - $ROM$(Read-Only Memory):程序存储器
 - $UART$(Universal Asynchronous Receiver/Transmitter): 通用异步串行通信口
 - $SFR$(Special Function Register):特殊功能寄存器
 - $WDT$(WatchDog Timer):看门狗定时器
 - $DIP$(Dual In-line Package):双列直插封装
 - $PLCC$(Plastic Leaded Chip Carrier):有引线芯片载体封装
 - $TQFP$(Thin Quad Flat Package):薄塑封四角扁平封装
 - $TTL$(Transistor-Transistor Logic):逻辑门电路
 - $ALU$(Arithmetic and Logic Unit):算术逻辑运算单元
 - $ISP$(In System Programmability):在线编程
 - $DPS$(Data Processing System):数据指针寄存器
 - $PC$(Program Counter):程序计数器
 
参考书籍:单片机原理及应用(第三版)张毅刚 赵光权 刘旺
参考他人总结链接: