- 1、本文档共51页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]PIC第五章
PIC上海技术培训中心 汇编语言是较为低级的语言系统,是一套控制和指挥CPU工作的编码,即机器语言。 单片机只能识别和执行由二进制数组成的机器语言,然而,这样一种二进制代码的机器语言是很难为人们直接理解和分析。 为了能较好表达人们的设计思路,便于记忆和使用,人们在低级语言之上设计出一种新的符号语言,即汇编语言。 PIC单片机指令系统和其它单片机一样,是较为低级的语言系统,是一套控制和指挥PIC单片机工作的编码,即PIC机器语言。它相应的汇编语言称为PIC汇编语言。 根据指令的功能和作用,只有操作码是必须存在的,它主要决定了指令的操作性质,而其它部分是指令语句的重要补充和说明,有时可以缺省。 标号位于指令助记符前面,它一般是用于表示指令所在的地址,例如表示主程序或子程序的起始地址、转移语句的入口地址等。 标号并不是指令的必须部分,只有那些欲被其他语句引用的指令之前,才必须附加标号。标号不一定和语句同行,可以单独在语句上方作为一行使用。 标号最多可以由32个字母、数字和其它一些字符组成,但第一个字符必须是字母或下划线。标号不能用系统保留字,即系统禁用指令助记符、寄存器名、标志符等作为标号,如:ADD、PCLATH等。 一个标号只能表示一个地址,不允许多个地址用一个标号重复定义。 标号的定义和引用必须一致,其中的大小写可以混写但必须相同。 标号必须顶格书写,结束不用冒号。 MOVLW 20H ;送W MOVWF FSR ;W送FSR QT MOVWF INDF ;W送INDF INCF FSR ;FSR加1,即(21H) MOVF FSR,0 ;FSR中的内容所指向的地址中的数送W BTFSS FSR,4 ;若FSR4=1则间跳,即30H GOTO QT ;转向下一个单元 操作码决定着指令的操作类型和操作性质,是汇编语言语句中的核心要素,每一条汇编指令都不可缺少,而其它三部分有些指令可以缺省。 操作码所对应的指令助记符,其中的符号大小写可以混写,而不会影响操作码的含意,这一点和标号、操作数符号变量的表达方式是有本质区别。 指令助记符不能顶格书写,当前面没有标号时,必须至少保留一个空格。 操作码核心助记符部分比较简单,初学者必须熟悉复合助记符部分的功能。 在PIC汇编语言语句中,操作数的形式和内容最为丰富,它是指令助记符操作的对象,一般以数据或地址的形式出现,也可以用符号变量所表示的数据或地址。 注释内容用分号引出,是汇编语言语句功能的一种补充说明,主要是便于人们阅读、分析、修改和程序的调试。 用(半角)分号引出注释内容,可以紧跟指令之后,也可以独立一行或多行书写,但每一行均需由分号引出。 注释内容可以英文书写,也能用中文书写(来源于文本编辑内容)。 各种单片机的汇编程序除了指令系统语句以外,一般都还定义许多非正式指令的语句,即伪指令。大多数伪指令汇编时并不产生机器码,仅为源程序提供汇编控制信息。 格式:ORG nnnn 说明:ORG伪指令指出紧跟在该伪指令后的机器码指令的汇编地址,即经汇编后生成的机器码目标程序或数据块在单片机程序存储器中的起始存放地址。 格式:符号名 EQU nn 说明:EQU伪指令几乎每一个程序中都用到,其操作含意是使EQU两端的值相等。一般在PIC的程序设计中,原则上每次遇到新的符号参数,都必须在前面补充定义符号名的初始数值或存储器地址。 符号名一旦被EQU赋值,其值便不能被再重新定义。这里的符号名,既可以是PIC中的特殊功能寄存器、一个常数,或者是表示一个通用数据存储器地址。 实际上对于伪指令:ABC EQU 20H,其中ABC既可以认为是符号变量,因为ABC代表20H地址;又可以认为是符号常量,因为ABC可以代表立即数20H。 所以对于一个定义的符号量,应结合引用的指令进行分析才能真正确定符号量的类型。 【例题5-2】正确区别符号变量和符号常量之间的关系 ABC EQU 20H ;定义符号量ABC ORG 0000H NOP MOVLW 77H MOVWF 20H MOVLW 88H MOVF ABC,0 ;ABC为数据存储器地址20H MOVLW ABC ;ABC为常量20H NOP END 在符号名定义和引用过程中,必须保证大小写属性的一致性,注意不能混合使用以及所代表角色功能。 如果有
您可能关注的文档
- [工学]Lecture_3_-_模型算法控制_MAC_.ppt
- [工学]lecture6-meshing.pdf
- [工学]LINUX C编程第一讲.ppt
- [工学]linux的历史.ppt
- [工学]Linux shell 程序设计.ppt
- [工学]LF绪论&流体力学基础.ppt
- [工学]Linux驱动开发.ppt
- [工学]LoadRunner教程课件.ppt
- [工学]Linux进程.ppt
- [工学]matlab 在机械控制方面的应用.pdf
- 年产8万套(件)塑料制品及塑料编织袋、17000吨供排水管道和9000吨色母粒生产加工项目环评报告表.docx
- 孩子王:孩子王儿童用品股份有限公司拟股权收购涉及的乐友国际商业集团有限公司35%股权价值资产评估报告.docx
- 年屠宰肉牛11000头项目环评报告书.docx
- 华远地产股份有限公司拟置出资产专项审计报告.docx
- 横峰县光叁电力有限公司股东全部权益资产评估报告.docx
- 迪哲医药:2023年度向特定对象发行A股股票募集资金使用可行性分析报告(修订稿).docx
- 年产80000吨动物蛋白、35000吨动物油脂加工项目环评报告表.docx
- 华苑产业园区海泰西路18号的房地产项目资产评估报告.docx
- 光明地产服务集团评估报告.docx
- 年产 6000 吨聚乙烯片料和 2000 吨色母粒项目环评报告表.docx
文档评论(0)