各大类单片机的指令系统是没有通用性的,它是由单片机生产厂家规定的,所以用户必须遵循厂家规定的标准,才能达到应用单片机的目的。 PIC 8位单片机共有三个级别,有相对应的指令集。基本级PIC系列芯片共有指令33条,每条指令是12位字长;中级PIC系列芯片共有指令35条,每条指令是14位字长;高级PIC系列芯片共有指令58条,每条指令是16位字长。其指令向下兼容。 在这里笔者介绍PIC 8位单片机汇编语言指令的组成及指令中符号的功能,以供初学者阅读相关书籍和资料时快速入门。 ### PIC 8位单片机汇编语言常用指令解析 #### 一、引言 单片机作为一种集成化的微型计算机系统,在嵌入式系统开发中扮演着重要角色。不同的单片机系列拥有各自独特的指令系统,这些指令系统由制造商定义并提供给用户使用。对于初学者来说,理解和掌握特定单片机的指令集是非常重要的一步。 本篇文章将详细介绍PIC 8位单片机的汇编语言指令,包括其指令的组成、格式以及几个常见指令的使用方法。这将有助于读者更好地理解PIC单片机的工作原理,并能够编写出有效的程序代码。 #### 二、PIC 8位单片机指令系统概述 ##### 1. 指令级别的划分 - **基本级**:共有33条指令,每条指令长度为12位。 - **中级**:共有35条指令,每条指令长度为14位。 - **高级**:共有58条指令,每条指令长度为16位。 高级别的指令向下兼容低级别的指令,这意味着高级别的单片机可以执行低级别单片机的所有指令。 ##### 2. 指令格式 一条典型的PIC 8位单片机汇编语言指令通常包含以下四个部分: - **标号**:标识指令的位置,用于程序内部引用。 - **操作码助记符**:指令的核心部分,指示CPU执行特定的操作。 - **操作数**:指令所涉及的数据或地址。 - **注释**:非必需,用于增加代码的可读性。 指令的书写格式如下: ``` 标号: 操作码助记符 操作数1, 操作数2; 注释 ``` 其中各部分之间使用空格作为分隔符。 #### 三、指令组成部分详解 ##### 1. 标号 标号用于标记程序中的位置,方便其他指令(如跳转指令)引用。标号的命名规则较为宽松,但首字符必须是字母或下划线“_”。标号可以单独占据一行,也可以紧跟在指令前。 示例: ``` START: CLRW ; 寄存器W被清零 ``` ##### 2. 操作码助记符 操作码助记符是指令的核心,决定了指令的功能。例如,“CLRW”表示将工作寄存器W清零。 ##### 3. 操作数 操作数指指令操作的数据或地址。PIC 8位单片机支持多种数据类型,包括二进制、八进制、十进制和十六进制等。数据类型的表示方法如下: - 二进制:以字母“B”开头,如 `B1010`。 - 八进制:以字母“O”开头,如 `O123`。 - 十进制:以字母“D”开头,如 `D456`。 - 十六进制:以字母“H”开头或以“0x”开头,如 `H2A` 或 `0x2A`。 示例: ``` MOVWF REG1, B1010 ; 将二进制数1010移动到寄存器REG1 ``` ##### 4. 注释 注释以分号“;”开始,位于指令的用于增加代码的可读性和维护性。 示例: ``` MOVWF REG1, D456; 将十进制数456移动到寄存器REG1 ``` #### 四、常见指令实例 下面列举了几个常见的指令及其使用方法: ##### 1. 清零指令 - **寄存器清零指令**:“CLRW”将工作寄存器W清零。 - **看门狗定时器清零指令**:“CLRWDT”清零看门狗定时器。 - **寄存器f清零指令**:“CLRF f”清零指定寄存器f。 - **位清零指令**:“BCF f, b”将指定寄存器f的第b位清零。 示例: ``` CLRW ; 清零寄存器W CLRWDT ; 清零看门狗定时器 CLRF TMRO ; 清零寄存器TMRO BCF REG1, 2 ; 清零寄存器REG1的第2位 ``` 以上指令的使用展示了如何利用汇编语言控制单片机的基本操作。通过对这些指令的学习和实践,开发者可以逐渐熟悉PIC 8位单片机的编程技巧,为进一步的项目开发打下坚实的基础。
剩余10页未读,继续阅读
- 粉丝: 1
- 资源: 6
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- py-apple-controller-四足机器人
- py-apple-bldc-quadruped-robot-四足机器人
- 四足机器人-四足机器人
- asm-西电微机原理实验
- 四足机器人行走机制设计与应用解析
- 探索POINTS 1.5视觉思考模型:开启高效思考之门
- 支持 DELPHI 12.2的RXLIB 控件
- game_patch_1.29.13.13020.pak
- 4S店车辆管理系统.zip
- J2EE在在线项目管理与任务分配中的应用_411v2rh8_226-wx.zip
- “课件通”中小学教学课件共享平台.zip
- Java Web的租房管理系统(编号:22787207).zip
- Java大学生创新能力培养平台的设计与实现(编号:49116136).zip
- JavaWeb图书管理系统(编号:29027118)(1).zip
- springboot4S店车辆管理系统 LW PPT.zip
- spingboot茶文化推广系统(编号:3018432).zip