电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

PIC单片机指令系统和汇编语言程序设计

4页
  • 卖家[上传人]:枫**
  • 文档编号:473492307
  • 上传时间:2023-10-15
  • 文档格式:DOC
  • 文档大小:20.51KB
  • / 4 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、第二章PIC单片机指令系统和汇编语言程序设计2.1 指令系统概述2.1.1 指令的表示方法1机器指令的表示方法:指令用于规定计算机的基本操作。一台计算机所能执行的指令集合就是它的指令系统。指令共有两种表示方法,分别是机器语言表示方法和汇编语言表示方法。不同种类的单片机有不同的一套命令(即所谓“指令系统”)。2汇编语言的表示方法:汇编语言是对机器语言的改进,它采用便于人们记忆的一些符号(例如简化的英文单词)来表示操作码、操作数和地址码等。通常把表示指令的符号称之为助记符。3PIC16F87X单片机指令: PIC16F87X单片机采用精简指令集(RISC)结构,指令效率高,功能强。它的指令为单字的宽字位(14)指令,由此生成的程 序代码短。指令条数少,仅有35条。(1)面向字节操作类 (2)面向位操作类 (3)常数操作和控制类操作。PIC单片机指令的寻址方式1寄存器间接寻址:所谓寄存器间接寻址指的是通过寄存器F0、F4来实现。实际的寄存器地址放在F4的低5位中,通过F0来进行间接寻址。INDF不是物理上实际存在的寄存器,而任何寻址INDF的指令都是以FSR寄存器内容为地址的RAM单元中存放

      2、着参加运算或操作的数据。2立即数寻址:所谓立即寻址就是操作数在指令中直接给出。通常把出现在指令中的操作数称之为立即数,因此就把这种寻址方式称之为立即寻址。3直接寻址:指令中操作数以其所在存储单元地址的形式给出,就称之为直接寻址。这种方式是对任何一寄存器直接寻址访问。4位寻址:这种寻址方式是对寄存器中的任一位(bit) 进行操作。指令符号的意义说明1.PIC汇编语言指令格式 PIC系列微控制器汇编语言指令与MCS51系列单片机汇编语言一样,每条汇编语言指令由4个部分组成,其书写格式如下:标号操作码助记符操作数1,操作数2;注释2.指令符号的意义说明:在PIC系列单片机指令中常把数据存储器RAM当作寄存器来使用(处理)并用字母f(或F)表示。d代表操作数的目标选择,定义d=0,结果存入W;d=1结果存入(文件)寄存器f,当使用汇编程序指令d缺 省时,默认d=1。b代表(文件)寄存器(8位)的位地址(07取值)。如寄存器的8位为b7、b6b1、b0,若b=1 代表寄存器的第b1位。字母符号k代表立即数、常数和数据标号。2.2字节操作指令PIC16F87X系列单片机字节操作指令详解见下面表格2

      3、.3位操作指令PIC16F87X系列单片机位操作指令详解见下面表格2.4 汇编语言程序设计2.4.1 汇编语言程序设计知识1汇编语言源程序的结构汇编语言提供了一种不涉及实际存储器地址和机器指令编码的编写源程序的有效方法。我们需要掌握的是:汇编语言的程序格式、语句格式、助记符、伪指令。程序的4种基本结构:顺序、分支、循环和 子程序。2PIC 汇编语言的程序流程图(1)程序流程图常用的图形符号圆角矩形框为起始/终止框,表示一个程序的开始或结束。 矩形框为任务框,表示要处理的任务。菱形框为判断框,表示要判断的因素,判断结果将导致程序走入不同的分支。指向线为带有箭头的线段,表示程序的走向。(2)程序流程图的画法顺序程序结构 顺序程序结构在流程图中表示为任务框一个一个地串行连接。在计算机执行程序时表现为,从头至尾严格按照次序一条语句一条语句地顺序执行,并且每一条语句均被执行一遍。分支程序流程图 分支程序流程图包含1个判断框和两个或两个以上的出口。从而形成程序的2个或多个分支 .循环程序流程图 循环程序的结构包含以下4个组成部分:循环初始化部分:为循环程序作准备。如循环变量设置,即指定或定义一个循

      4、环变量作循环次数计数器或地址指针,并给它设置一个初始值。循环体:要求重复执行的程序段,即循环程序的主体部分。循环控制部分:循环控制就是根据循环结束条件,判断是否跳出循环。结束部分:对循环结果进行分析、处理和保存。2.4.2 PIC 汇编语言的伪指令用来编写汇编语言源程序的语句,主要是指令助记符,其次就是伪指令。所谓伪指令就是“假”指令的意思,不是单片机的指令系统中的真实指令。伪指令与指令系统中的助记符的不同之处是没有机器码与它对应。最常用的伪指令介绍(1)INCLODE功能:读入外部源文件格式:INCLUDE说明:用于把指定文件读入源程序中作为源程序代码的一部分。文件名必须用双引号或尖括号给出,如果被指定文件非当前工作目录下,则需要指令完整的路径。(2)EQU功能:对标号赋值 格式:EQU说明:使EQU两端的8位值相等,即给标号赋 予一个特定值或者说是给标号定义一个数值。(3)#DEFINE功能:定义文本替换标号 格式:#DEFINE说明:用于定义文本替换标号,在汇编时把源代码中的替换成。(4)ORG功能:存放程序单元的起始地址 格式:标号ORG说明:用于指定该伪指令后面的源程序存放的

      5、起始地址,也就是汇编后的机器码目标程序在单片机的程序存储器中开始存放的首地址。(5)END功能:程序结束伪指令 格式:END说明:这条伪指令通知汇编器MPASM结束对源程序(.ASM)的 汇编,即使在后面还有语句,也将不予继续汇编。PIC 汇编语言程序设计基础1设置 I/O 口的输入/输出方向2检查寄存器是否为零3比较二个寄存器的大小2.4.4 数据传送程序的设计数据传送程序设计是最基本的程序设计,也是最常用的汇编程序设计。但是PIC单片机的数据传送程序和其他的单片机不同,因为 PIC单片机的数据存储器RAM分成4个存储区, 所以对PIC单片机来说,设计数据传送程序时应该随时注意存储区的选择,否则数据传送达不到目的。【2-43】用直接寻址方式分别向4个存储区的0xB0、0x30、ox130、0x1 B0传送数据。;选择存储区0,直接寻址单元0xB0实际对应到0x30单元 CLRFSTATUSMOVLW0xF0MOVWF0x30MOVLW0x0F MOVWF0xB0;选择存储区1,直接寻址单元0x30实际对应到0xB0单元BSFSTATUS,RP0MOVLW0xF1MOWWF0x30MO

      6、VLW0x1FMOVWF0xB02.4.5 算术逻辑运算程序的设计基本算术运算有:定点数、浮点数运算;无符号数、有符号数运算等。逻辑运算-逻辑运算包括:逻辑异或、逻辑与、逻辑或; 加法运算:二进制加法运算,可直接运用加法指令:ADDWF 或 ADDLWBCD加法运算2.4.6 延时程序的设计1简单延时程序的编写如果延时时间较短,可以让程序简单地连续执行几条空操作指令“NOP”。如果延时时间长,可以用循环来实现。2延时程序的延时时间计算延时程序中计算指令执行的时间和即为延时时间。如果使用4MHz振荡,则每个指令周期为1S。所以单周期指令时间为1S,双周期指令时间为2S。在上例的LOOP循环延时时间即 为:(1+2)*100+2=302(S)。在循环中插入空操作指令即可延长延时时间。2.4.7 查表程序查表程序常用于数据补偿,非线性修正,求非函数和代码转换,这种方法就不需要计算,速度又快,而且实现容易。查表 程序用得恰当可能,大大简化程序设计带极大方便。在单片微机中,要对程序存储器的数据进行访问,必须用读表操作。而PIC系列MCU没有查表指今,PIC的查表程序是利用子程序带值返回的特点来实

      7、现。具体是在主程序中先取表数据地址放入W,接着调用子程序,子程序的第一条指令将W置入PC,则程序跳到数据地址的地方,再由“RETLW”指令将数据放入W返回到主程序。表格程序是通过一偏移量来修正PC值,由一条带参数返回指令实现。2.4.8 子程序设计在编程过程中,常常会遇到一些完全相同的计算和操作,例如求各种数据的加减乘除运算、代码转换和延时等。如果每次都编写完全相同的程序段,会使编程相当繁琐、耽误时间,而且浪费大量的程序存储器空间。因此,对这些基本操作功能都是将它编制成标准化的程序段,存储于程序存储器的指定区域,在每次需要时就调出使用,这种程序段就称为子程序,调用子程序的程序称为主程序或者调用程序。子程序结构是程序设计标准化和模块化的有效方法。2.4.9分支跳转子程序经常需要根据条件判断,确定程序多方向转向选择,实现对程序的灵活控制。用PIC单片机指令可以轻松地构成分支跳转。在程序形式上,分支功能跳转子程序与数据查表子程序的结构类似,只是它是用GOTO语句替代了RETLW语句并直接进入不同的子程序中。本章小节(1)基本概念指令:指挥计算机完成某个基本操作的命令。程序:完成一项任务所需的

      8、所有指令的有序集合。指令系统:一台计算机所能执行的指令集合就是它的指令系统。指令的表示方法:有机器语言表示方法和汇编语言表示方法。其中机器语言的指令是用二进制代码表示,汇编语言的指令是用助记符表示。(2)PIC16F87X系列单片机的指令分类 PIC16F87X单片机采用精简指令集(RISC)结构,指令效率高,功能强。它的指令为单字的宽字位(14)指令,由此生成的程序代码短。指令条数少,仅有35条。每条指令都由操作码和操作数组成,按指令的操作对象将指令分为面向字节操作类指令、面向位操作类指令、常数操作和控制操作类指令。(3)PIC汇编语言指令格式PIC系列微控制器每条汇编语言指令由4个部分组成, 其书写格式如下:标号操作码助记符操作数1,操作数2;注释2、掌握PIC单片机指令的寻址方式PIC16F87X单片机寻址方式根据操作数的来源分为立即数寻址、直接寻址、寄存器间接寻址和位寻址四种。3、熟记PIC16F87X单片机的35条指令助记符4、学会汇编语言程序设计(1)汇编语言程序流程图的基本结构顺序程序结构:从头至尾严格按照次序一条语句一条语句地顺序执行,且每一条语句均被执行一遍。分支程序流程图:一般包含一个判断框和两个或两个以上的出口。从而形成程序的2个或多个分支。循环程序流程图:对某一段程序重复执行多次。(2)PIC汇编语言的伪指令伪指令是程序设计人员向汇编器发布的控制命令,告诉汇编器如何完成汇编过程和一些规定的操作,以及控制汇编器的输入、输出和数据定位等。(3)PIC汇编语言常用程序设计方法这是本章的重点,要在实验中反复联系,熟练掌握最基本的数据传送程序的设计、算术逻辑运算程序设计、延时程序的设计、查表程序设计和子程序设计。

      《PIC单片机指令系统和汇编语言程序设计》由会员枫**分享,可在线阅读,更多相关《PIC单片机指令系统和汇编语言程序设计》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.