微机原理与接口技术教案15_第1页
微机原理与接口技术教案15_第2页
微机原理与接口技术教案15_第3页
微机原理与接口技术教案15_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

微机原理课15讲教案主讲人课题循环程序设计方法(一)目的任务掌握用条件转移指令和LOOP指令进行循环程序设计的一般方法重点难点分别用条件转移指令和LOOP指令进行循环程序设计教学方法讲授使用教具传统教学法(粉笔和黑板)提问作业备课时间年月日上课时间年月日审批教研室主任(签字):年月日抽查系主任(签字):年月日3.数据传送实例例4-37:变量(数据块)X中有10个字符(’ABCD1234’),变量(数据块)Y中有8个字符(’12345678’),编程:用X的值覆盖Y。对这类问题的理想解决方案是:先用LEA指令将数据块的首地址送入一个变址或基址寄存器,然后通过间接寻址方式访问操作数,通过寄存器加1操作调整存储器的地址。本例的程序流程如图4-14所示,完整的程序代码为:X DB’ABCD1234’Y DB ’12345678’Main: MOVAX,@DATA ;将数据段的段基址送入AX MOVDS,AX LEASI,X ;取得变量X的首地址 LEADI,Y ;取得变量Y的首地址 MOVCX,0 ;计数初值Next: MOVAL,[SI] ;从X中读取操作数 MOV[DI],AL ;复制到Y中 INCSI INCDI INCCX CMPCX,8 ;与8比较 JCNext ;小于8,寄存、继续下一个数4.数据拆分与拼装实例在控制系统的编程中,将从不同地址采集到的数据经过重新组装,形成一个新的控制字,也是经常遇到的问题。例4-38:字节变量X、Y中各有8个数据(自定),编程:将X的低四位与Y的高四位合并为一个新的数据,然后存放到以Buff开始的8个单元中。X DB 12H,13H,14H,15H,16H,17H,18H,19HY DB 87H,86H,85H,84H,83H,82H,81H,80HBuff DB 4DUP(?) LEASI,X ;取3个变量的首地址 LEADI,Y LEABX,BUFF MOVCX,8 ;计数器、循环次数初值Aga:MOVAL,[SI] ;从X处取一个数 ANDAL,0FH ;清除高四位 MOVAH,[DI] ;从Y处取一个数 ANDAH,0FOH ;清除低四位 ORAL,AH ;合并 MOV[BX],AL ;存储 INCSI ;修改参数,为下一个数做准备 INCDI INCBX DECCX ;(CX)-1 JNZAga ;条件成立,转移图4-15例4-38程序流程图4.8循环程序设计的方法4.8.1循环指令循环是将一段程序重复执行多遍,被重复执行的程序段称为循环体,循环程序设计是现代程序设计中另一种重要的方法。1.循环程序的一般结构一个循环程序由三部分组成:循环的初始化:为循环过程中有可能用到的变量提供初值。循环体:本次循环要完成的主要工作,内容由要处理的问题来确定的,这一部分的执行结果可能影响到循环是否继续进行。循环控制:以条件表达式的结果作为是否结束循环的条件。典型循环结构如图4-16所示。图4-16典型循环体的结构2.循环指令格式:LOOPOPR操作:(CX)←(CX)-1,若(CX)≠0,则转到OPR所指的位置OPR是跳转的目的标号,一般也是循环体的初始位置。与JMP指令一样,标号OPR是一个8位的位移量。因此,它与LOOP指令之间的距离不能太大,应保持在-128~+127字节之间。LOOP指令使用时总要与一条给CX寄存器赋值的指令(通常是MOV指令)配合使用,它的一般结构是: MOVCX,循环次数OPR: …… LOOPOPR这种结构类似于C语言中的“

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论