快速入门单片机汇编语言.doc

上传人:F****n 文档编号:101496883 上传时间:2019-09-28 格式:DOC 页数:5 大小:69.50KB
返回 下载 相关 举报
快速入门单片机汇编语言.doc_第1页
第1页 / 共5页
快速入门单片机汇编语言.doc_第2页
第2页 / 共5页
快速入门单片机汇编语言.doc_第3页
第3页 / 共5页
快速入门单片机汇编语言.doc_第4页
第4页 / 共5页
快速入门单片机汇编语言.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《快速入门单片机汇编语言.doc》由会员分享,可在线阅读,更多相关《快速入门单片机汇编语言.doc(5页珍藏版)》请在金锄头文库上搜索。

1、快速入门单片机汇编语言编程简要:单片机有通用型和专用型之分。专用型是厂家为固定程序的执行专门开发研制的一种单片机,其程序不可更改。通用型单片机是常用的一种供学习或自主编制程序的单片机,其程序需要自己写入,可更改。单片机根据其基本操作处理位数不同可以分为:1位、4位、8位、16、32位单片机。正文:在此我们主要讲解美国ATMEL公司的89C51单片机。一、89C51单片机PDIP(双列直插式)封装引脚图:其引脚功能如下:P0口(p0.0p0.7):为双向三态口,可以作为输入/输出口。但在实际应用中通常作为地址/数据总线口,即为低8位地址/数据总线分时复用。低8位地址在ALE信号的负跳变锁存到外部

2、地址锁存器中,而高8位地址由P2口输出。P1口(p1.0p1.7):其每一位都能作为可编程的输入或输出线。P2口(p2.0p2.7):每一位也都可作为输入或输出线用,当扩展系统外设时,可作为扩展系统的地址总线高8位,与P0口一起组成16位地址总线。对89c51单片机来说,P2口一般只作为地址总线使用,而不作为I/O线直接与外设相连。P3口(p3.0p3.7):其为双功能口,作为第一功能使用时,其功能与P1口相同。当作为第二功能使用时,每一位功能如下表所示。 P3口第二功能 引 脚 第二功能 引 脚 第二功能P3.0RXD串行口数据输入端P3.4INT0定时器T0的外部输入P3.1TXD串行口数

3、据输出端P3.5INT1定时器T1的外部输入P3.2T0外部中断0请求P3.6WR外部存储器数据写选通信号P3.3T1外部中断1请求P3.7RD外部存储器数据读选通信号RstVpd:上电复位端和掉电保护端。XTAL1tal1(xtal2):外接晶振一脚,分别接晶振的一端。Gnd:电源地。Vcc:电源正级,接+5V。PALEPROG:ALE:地址锁存控制端PSEN:片外程序存储器读选通信号输出端,低电平有效。EAvpp:访问外部程序储存器控制信号,低电平有效。当EA为高电平时访问片内存储器,若超出范围 则自动访问外部程序存储器。当EA为低电平时只访问外部程序存储器。2、 二、常用指令及其格式介绍

4、:1、 指令格式: 标号:操作码 目的操作数,操作源;注释 例如:LOOP:ADD A,#0FFH ;(A)(A)+FFH2、 常用符号: Ri和Rn:R表示工作寄存器,i表示1和0,n表示07。 rel:相对地址、地址偏移量,主要用于无条件相对短转移指令和条件转移指令。 #data:包含于指令中的8位立即数。 #data16:包含于指令中的16位立即数。 addr16:16位目的地址。 direct:直接寻址的地址。 bit:内部数据存储器RAM和特殊功能寄存器SFR中的可直接寻址位地址。 :间接寻址寄存器或基地址寄存器的前缀。 (X):表示X中的内容。 (X):表示由X寻址的单元中的内容,

5、也就是(X)作地址,该地址的内容用(X)表示。31、常用伪指令:ORG:规定目标程序段或数据块的起始地址。首地址指令,用于程序的最前面。 格式:ORG+空格+地址 例如:ORG 0000H END:结束指令,放在程序的末尾,单独使用,一段程序只用一次。DB(定义字节):从指定地址单元开始,定义若干字节存储单元并赋初始值。4、常用寻址方式: 直接寻址: MOV A,30H 立即数寻址:MOV A,#20H 寄存器间接寻址:MOV A,Ri(i=1,2) 基址加变址寄存器寻址:MOV A,A+DPTR 寄存器寻址:MOV A,Rn(n=07)5、指令大集合: 传送类指令: 助记符操作功能助记符操作

6、功能MOV A,#dataMOV Rn,#dataMOV Ri,#dataMOV direct,#dataMOV DPTR,#data16立即数送累加器立即数送寄存器立即数送片内RAM立即数送直接寻址字节16位立即数送数据指针寄存器MOV direct,RnMOV A,RnMOV Rn,AMOV direct,AMOV Ri,A寄存器内容送直接寻址字节寄存器内容送累加器累加器内容送寄存器累加器内容送直接寻址字节累加器内容送片内RAMMOV Rn,directMOV A,directMOV Ri,directMOV direct2,direct1直接寻址字节内容送寄存器直接寻址字节送累加器直接寻

7、址内容送片内RAM直接寻址字节内容送另一直接寻址字节MOV direct,RiMOV A,Ri片内RAM内容送直接寻址字节片内RAM内容送累加器MOVX A,RiMOVX Ri,A片外RAM内容送累加器累加器内容送片外RAMMOVX A,DPTRMOVX DPTR,A片外RAM内容送累加器累加器内容送片外RAMMOVC A,A+DPTRMOVC A,A+PCXCH A,RnXCH A,RiXCH A,directXCHD A,Ri 相对数据指针内容送累加器相对程序计数器内容送累加器累加器内容与寄存器内容交换累加器与片内RAM交换内容累加器与直接寻址字节交换内容累加器与片内RAM交换低半字节内容

8、PUSH directPOP directSWAP A直接寻址字节内容压入栈顶栈顶内容弹出到直接寻址字节累加器交换高半字节和低半字节传送类指令:助记符操作功能助记符操作功能ADD A,RnADD A,RiADD A,directADD A,#dataADDC A,RnADDC A,RiADDC A,directADDC A,#data寄存器内容与累加器内容相加片内RAM与累加器内容相加直接寻址字节与累加器内容相加立即数与累加器内容相加寄存器与累加器与进位位内容相加片内RAM与累加器与进位位相加直接寻址字节与累加器与进位位相加立即数与累加器与进位位相加SUBB A,RnSUBB A,RiSUBB

9、 A,directSUBB A,#data累加器内容减寄存器与进位位内容累加器内容减片内RAM与进位位内容累加器内容减直接寻址字节与进位位内容累加器内容减立即数与进位位内容INC AINC R0INC RiINC directINC DPTR累加器内容加1寄存器内容加1片内RAM内容加1直接寻址字节内容加1数据指针寄存器内容加1DEC ADEC RnDEC RiDEC direct累加器内容减1寄存器内容减1片内RAM内容减1直接寻址字节内容减1DA AMUL ABDIV AB累加器内容十进制调整累加器内容乘寄存器B内容累加器内容除寄存器B内容逻辑操作类指令:助记符操作功能助记符操作功能ANL

10、 A,RnANL A,RiANL A,directANL direct,AANL A,#dataANL direct,#data寄存器内容与累加器内容片内RAM内容与累加器内容直接寻址字节内容与累加器内容累加器内容与直接寻址字节内容立即数与累加器内容立即数与直接寻址字节内容ORL A,RnORL A,RiORL A,directORL direct,AORL A,#dataORL direct,#data寄存器内容或累加器内容片内RAM内容或累加器内容直接寻址字节内容或累加器内容累加器内容或直接寻址字节内容立即数或累加器内容立即数或直接寻址字节内容XRL A,RnXRL A,RiXRL A,d

11、irectXRL direct,AXRL A,#dataXRL direvt,#data寄存器内容异或累加器内容片内RAM内容异或累加器内容直接寻址字节内容异或累加器内容累加器内容异或直接寻址字节内容立即数异或累加器内容立即数异或直接寻址字节内容CPL ACLR A累加器内容取反累加器内容清空RL ARR ARLC ARRC A累加器内容向左环移1位累加器内容向右环移1位累加器内容带进位位向左环移1位累加器内容带进位位向右环移1位控制转移类指令:助记符操作功能助记符操作功能AJMP addr11LJMP addr16SJMP relJMP A+DPTR绝对转移长转移相对短转移相对长转移JZ r

12、elJNZ relCJNE A,direct,relCJNE A,#data,relCJNE Rn,#data,rel累加器内容为零转移累加器内容不为零转移累加器内容与直接寻址字节内容不等转移累加器内容与立即数不等转移寄存器内容与立即数不等转移CJNE Ri,#data,relDJNZ Rn,relDJNZ direct,rel片内RAM内容与立即数不等转移寄存器内容减1不为零转移Direct内容减1不为零转移ACALL addr11LCALL addr16绝对调子长调子RET RETI返回主程序中断返回主程序NOP空操作位操作类指令:助记符操作功能助记符操作功能MOV C,bitMOV bi

13、t,C直接寻址位内容送进位位进位位内容送直接寻址位CPL CCLR CSETB CCPL bitCLR bitSETB bitANL C,bitORL C,bitANL C,/bitORL C,/bit进位位取反进位位清零进位位置位直接寻址位取反直接寻址位清零直接寻址位置位直接寻址位内容与进位位内容直接寻址位内容或进位位内容直接寻址位的反与进位位内容直接寻址位的反或进位位内容JC relJNC relJB bit,relJNB bit,relJBC bit,rel进位位为1转移进位位不为1转移直接寻址位为1转移直接寻址位不为1转移直接寻址位为1转移且该为清零3、 一般常用程序模式:1、开始程序:ORG 0000H JMP 0030H

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号