程序设计本科

上传人:w****2 文档编号:22351648 上传时间:2021-05-24 格式:PPT 页数:29 大小:329.50KB
返回 下载 相关 举报
程序设计本科_第1页
第1页 / 共29页
程序设计本科_第2页
第2页 / 共29页
程序设计本科_第3页
第3页 / 共29页
点击查看更多>>
资源描述
例3-3 分析 :变量X放在片内RAM的20H单元,其值为00H05H之间, 在片内RAM的21H单元,在程序存储器安排一张平方表,通过查表这样比完成 X*X 编程简便多了。表 ORG 0000H MOV DPTR,#TAB MOV A, 20H ;取X MOVC A,A+DPTR ; 查表 MOV 21H,A ; 存于Y SJMP $TAB: DB 00H,01H,04H,09H,16H,25H END 首地址为TAB,以DPTR指向表首址,利用查表指令MOVC A,A+DPTR,即可求得。表中数据用BCD码存放合乎人们的习惯. 如果平方值为两个字节,程序应如何编。DPTR A MOV A,R2SWAP A ;十位换到低半字节ANL A,#0FHINC R0MOV R0,A;保存数据十位SJMP $ 条件满足?N影响条件Y处理段条件满足?N影响条件Y处理1处理2 G3 + (G-5)2; 当G5M= G3 ;当G5 3G因重复使用,先暂存在R2。流程见左, 程序如下: TABTAB+2 DPH DPL例如 R3=1的操作02 20 分析: 将键码排成表,将键码表中的值和B中的键编码比对,记下在键码表中和B中的键编码相等的序号,另安排一个转移表,安排AJMP指令(机器码),因每条AJMP指令占二字节,将刚才记下的序号乘2即为转移表的偏移地址,利用JMP A+DPTR执行表内的AJMP指令,从而实现多分支转移,设转移表表头JPT的地址为001AH、PR0入口地址为0110H、 ,参考2.4.2节,求AJMP PR0的机器码 0110H -0000 0001 0001 0000a10 . a0 机器码2110h001 00001 0001 0000 AJMP PR0AJMP PR1AJMP PR2转移指令表JPT键码表TAB 65HA B A2=4A=1A=2A=0 65H65H 001AH001CH 当程序中的某些指令需要反复执行多次时,采用循环程序的方式,这样会使程序缩短,节省存储单元(并不节省执行时间)。 循环次数的控制,有两种控制方式:第一种方法 先判断再处理,即先判断满不满足循环条件,如不满足,就不循环,多以循环条件控制。第二种方法先处理再判断,即循环执行一遍后,下一轮还需不需要进行,多以计循环次数控制。循环可以有单重循环和多重循环,在多重循环中,内、外循环不能交叉,也不允许外循环跳入内循环。下面通过几个实例说明循环程序的设计方法。3.5 循 环 程 序 设 计 111122内循环DL1到指令DJNZ R1,DL1的计算: (1+1+2)2SMT=1000S MT=125=7DH将7DH代入上面程序的MT,计算总的延时时间: 1+1+(1+1+2)125+28102S =10062S=10.062mS 若需要延时更长时间,可以采用多重循环。 机器周期数内外 345 H * 0A H 32 H+ 28 H 2B H+ 1E H 20B H 分析:为了把10个单元中的数按从小到大排序,可从30H单元开始,相邻两数逐次进行比较,如果前面的数大于后面的数,两数交换,保存小数,取出大数, 且只要有地址单元内容的互换就置位标志。多次循环后,若两数比较不再出现有单元互换的情况,就说明从30H39H单元中的数已全部从小到大排列完毕。到这一片单元中。 3.7 子程序 当一段程序需多次应用,或为多人应用时,这段程序编为子程序. 例3-1 用程序实现 c = a2 + b2,设a,b均小于10。a存放在31H单元,b存放在32H单元,把 c 存入34H和33H单元。(和要求为BCD码)。 解:因该算式两次用到平方值,所以在程序中采用把求平方编为子程序的方法。求平方采用查表法 , 主程序和子程序编写如下:
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!