- 1、本文档共111页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MCS-51单片机汇编语言程序设计[精品]
查表程序是一种常用程序, 它广泛使用于LED显示控制、 打印机打印控制、数据补偿、数值计算、转换等功能程序中, 这类程序具有简单、执行速度快等特点。 所谓查表法, 就是预先将输入变量X与函数值Y之间关系的一张表求出, 然后把这张表存于单片机的程序存储器ROM中,根据变量X在表格中查找对应的函数值Y, 使Y=f(X)。 4.3.5 查表程序设计 * 两条查表指令: MOVC A, @A+DPTR MOVC A, @A+PC 1、确定数据表格首地址→DPTR 2、确定偏移量→ACC 3、用 MOVC A, @A+DPTR 查表取数 1、确定偏移量→ACC 2、完成偏移量修正:ADD A,#data 3、用 MOVC A, @A+PC 查表取数 使得:PC+data=数据表首地址 PC值为执行完MOVC A,@A+PC后的PC值 * 两条查表指令: MOVC A, @A+DPTR MOVC A, @A+PC 1、确定数据表格首地址→DPTR 2、确定偏移量→ACC 3、用 MOVC A, @A+DPTR 查表取数 1、确定偏移量→ACC 2、完成偏移量修正:ADD A,#data 3、用 MOVC A, @A+PC 查表取数 使得: PC+data=数据表首地址 PC值为执行完MOVC A,@A+PC后的PC值 MOVC A, @A+PC ··· ×× ×× ··· ×× ×× TAB: ROM * * 例 在程序中定义一个0~9的平方表,利用查表指令找出20H 单元内容的平方值,保存到21H。 查表程序的关键是表格的定义和如何实现查表。 SHU EQU 20H ORG 0100H MOV DPTR,#TABLE ;表首地址→DPTR MOV A,SHU ;SHU→A MOVC A,@A+DPTR ;查表指令 MOV SHU+1,A ; A→SHU+1 SJMP $ ;程序暂停 TABLE: DB 0,1,4,9,16,25,36,49,64,81;定义0~9平方表 END * 一个十六进制数存放在内部 RAM 的HEX单元的低 4 位中, 将其转换成ASCII码并送回 HEX+1单元。 十六进制 0~9的ASCII码为:30H~39H A~F的ASCII码为:41H~46H, 设ASCII码表格的首地址为:ASCTAB 要求用 MOVC A, @A+PC 指令实现 查表程序的关键是表格的定义和如何实现查表。 * 程序中, 查表指令MOVC A, @A+PC到表头之间相隔2条指令, 占用 3 个字节, 故修改指针数据data= 3。 ORG 1000H HEXASC: MOV A, HEX ANL A, # 0FH ADD A, # data ; 修改指针 MOVC A, @A+PC ;指令码 83H MOV HEX+1, A ;指令码 F5,HEX+1 RET ;指令码 22H ASCTAB: DB 30H, 31H, 32H, 33H, 34H DB 35H, 36H, 37H, 38H, 39H DB 41H, 42H, 43H, 44H, 45H DB 46H 83H F5H HEX+1 22H 30H 31H 32H ····· 表头 待具体指令确定后再求data ROM * 通常把一些基本操作功能编制为程序段作为独立的子程序, 以供不同程序或同一程序反复调用。 4.3.6 子程序和参数传递 一、 子程序的概念 * 注意: 子程序的第一条指令地址称为子程序的起始地址或入口地址,该指令前必须有标号,标号一般以子程序任务命名。 * 二、 子程序的调用和返回 (PC)←(PC)+3 (SP)←(SP)+
您可能关注的文档
- CRTSⅠ型双块式无砟轨道轨枕制造[精品].doc
- Data Integrity and Ethics SOP数据的完整性和伦理标准[精品].doc
- DATA MINING(CH6) 第6章 人工神经网络 《数据挖掘与知识发现》(第2版) 教学课件[精品].ppt
- c语言软件课设[精品].doc
- DBT32948-2006公路桥梁钢结构焊接质量检验规程(江苏省)[精品].doc
- DBJT 01-27-2003 高级装饰工程质量检验评定标准[精品].doc
- DCD-2差动继电器工作原理[精品].ppt
- destiny电气生物质电厂燃料安全防火管理办法[精品].doc
- dct域图像数字水印算法的分析和实现毕业论文[精品].docx
- Design and Analysis of Clinical Trials[精品].ppt
文档评论(0)