最新查表程序设计教学讲义PPT.ppt

最新查表程序设计教学讲义PPT.ppt

ID:62144173

大小:583.50 KB

页数:55页

时间:2021-04-19

最新查表程序设计教学讲义PPT.ppt_第1页
最新查表程序设计教学讲义PPT.ppt_第2页
最新查表程序设计教学讲义PPT.ppt_第3页
最新查表程序设计教学讲义PPT.ppt_第4页
最新查表程序设计教学讲义PPT.ppt_第5页
资源描述:

《最新查表程序设计教学讲义PPT.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、查表程序设计复习一个源程序的四个要素子程序:形式、功能、入口参数、出口参数子程序的调用:调用过程示意图子程序调用及返回指令的执行过程子程序的现场保护和参数传递查表程序一个完整的源程序必备的四个要素:有ORG0000H,即源程序的机器码从ROM的0000H单元开始存放。通常源程序的存放要跳过中断向量区。实现方法:在0000H单元存放一条转移指令,转向中断向量区后的主程序的真实的入口地址,如START、MAIN等。有END,告知汇编程序,你的源程序结束了。源程序的主程序框架一定是一个顺序执行的无限循环的程序,运行过程必须构成一个圈;子程序与主程序相对独立。4.

2、3汇编语言实用程序设计首先是用DB、DW伪指令建表,把握表格中的数据的位置与x的关系。由x来表达y在程序存储器中的地址,然后用MOVC指令实现查表。 例如:求x平方时的表格结构。DB00H,01H,04H,09H,10HDB19H,24H,31H,40H,51H举例:自编例1、例2、例3及课本上的例4-5、例4-6、例4-7。4.3.3查表程序设计4.3汇编语言实用程序设计数据补偿、修正、计算、转换等各种功能,具有程序简单、执行速度快等优点。查表就是根据自变量x,在表格中寻找y,使y=f(x)。指令“MOVCA,@A+DPTR”完成把A中的内容作为一个无符

3、号数与DPTR中的内容相加,所得结果为某一程序存储单元的地址,然后把该地址单元中的内容送到累加器A中。指令“MOVCA,@A+PC”以PC作为基址寄存器,PC的内容和A的内容作为无符号数,相加后所得的数作为某一程序存储单元的地址,然后把该地址单元中的内容送到累加器A中。4.3汇编语言实用程序设计-查表程序设计指令系统中给用户提供了两条极为有用的查表指令:⑴MOVCA,@A+DPTR⑵MOVCA,@A+PC执行查表指令时,发出读程序存储器选通脉冲/PSEN。例4-5子程序的功能为:根据累加器A中的数x(0~9之间)查x的平方表y,根据x的值查出相应的平方y。

4、x和y均为单字节数。地址子程序YADDA,#01HY+2MOVCA,@A+PCY+3RETY+4DB00H,01H,04H,09H,10HDB19H,24H,31H,40H,51H第1条指令ADDA,#01H的作用是加上偏移量,可以根据A的内容查出X对应的平方。MOVCA,@A+PC的学习4.3汇编语言实用程序设计-查表程序设计TAB1:DB00H,01H,04H,09H,10HDB19H,24H,31H,40H,51H例1:求x的平方,x:0~9特点:x、y均为一字节,y=f(x)在ROM中的地址是TAB1+xABC:MOVA,R0PUSHDPH;保存D

5、PHPUSHDPL;保存DPLMOVDPTR,#TAB1MOVCA,@A+DPTRPOPDPL;恢复DPLPOPDPH;恢复DPHRETABC:MOVA,R0MOVDPTR,#TAB1MOVCA,@A+DPTRRET堆栈指令的使用4.3汇编语言实用程序设计-查表程序设计例2:求一个0~9的数是立方特点:x为一字节、y为两字节,y=f(x)在ROM中的地址是TAB1+2x及TAB1+2x+1入口参数:在R0中;出口参数:在R2、R1中,高字节在R2中ABC:MOVA,R0RLAMOVB,AMOVDPTR,#TABMOVCA,@A+DPTRMOVR2,AMOV

6、A,BINCAMOVCA,@A+DPTRMOVR1,ARETTAB:DW0,1,8,27,64DW125,216,343,512,7294.3汇编语言实用程序设计-查表程序设计例4-6例4-6在一个以MCS-51为核心的温度控制器中,温度传感器输出的电压与温度为非线性关系,传感器输出的电压已由A/D转换为10位二进制数x。根据测得的不同温度下的电压值数据构成一个表,表中放温度值y,x为电压值数据。设测得的电压值x放入R2R3中,根据电压值x,查找对应的温度值y,仍放入R2R3中。特点:本例的x和y均为双字节无符号数。y=f(x)在ROM中的地址是TAB2+

7、2x及TAB2+2x+1入口参数:在R2R3中;出口参数:在R2R3中;***学习双字节无符号数乘2的解决方法。读P81例4-64.3汇编语言实用程序设计-查表程序设计例4-7例4-7设有一个巡回检测报警装置,需对16路输入进行检测,每路有一最大允许值,为双字节数。运行时,需根据测量的路数,找出每路的最大允许值。看输入值是否大于最大允许值,如大于就报警。根据上述要求,编一个查表程序。取路数为x(0~15),y为最大允许值,事先存放在表格中。特点:x为单字节、y均为双字节无符号数。y=f(x)在ROM中的地址是TAB3+2x及TAB3+2x+1入口参数:在R

8、2中;出口参数:在R3R4中;***又一种单字节无符号数乘2的解决

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。