西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第4章 汇编语言指令与程序设计 4.5 循环程序设计

历安毛子种枝大学 目录 XIDIAN UNIVERSITY 循环程序设计 微机原理与系统设计 第四章汇编语言指令与程序设计 董明皓 minghao@xidian.edu.cn 2
2 1 汇编语言基本概念 2 3 4 分支程序设计 5 循环程序设计 数据运算指令与程序设计 数据位操作指令与编程 目录 微机原理与系统设计 第四章 汇编语言指令与程序设计 董明皓 minghao@xidian.edu.cn

历安毛子绑牧大学 4.3.5循环控制指令 XIDIAN UNIVERSITY LOOP LABEL ;(CX)-(CX)-1, ;(CX)≠0时转LABEL LOOPZ/LOOPE LABEL ;(CX)←-(CX)-1, (CX)≠0且ZF=1时转LABEL LOOPNZ/LOOPNE LABEL (CX)(CX)-1, ;(CX)≠0且ZF=O时转LABEL JCXZ LABEL ;CX=O时转LABEL 循环控制指令的寻址方式均为段内直接转移,而且为短转移方式
4.3.5 循环控制指令 LOOP LABEL LOOPZ/LOOPE LABEL LOOPNZ/LOOPNE LABEL JCXZ LABEL 循环控制指令的寻址方式均为段内直接转移,而且为短转移方式。 ;(CX)←(CX)-1, ;(CX)≠0时转LABEL ;(CX)←(CX)-1, ;(CX)≠0且ZF=1时转LABEL ;(CX)←(CX)-1, ;(CX)≠0且ZF=0时转LABEL ;CX=0时转LABEL

历安毛子代枝大” 4.3.5循环控制指令 XIDIAN UNIVERSITY 1循环程序的构成 >一个标准的循环程序应由以下四部分组成: 初始化准备部分:为循环做准备的,它不在循环体内。 循环工作部分:这部分是循环程序解题所需的核心程序,题 目要完成的功能在此进行。根据题目要求不同,这部分程序 可以很简单,也可以很复杂,甚至是内循环嵌套外循环结构 多重循环程序。 ·参数调整部分:主要用来更新某些数据或修正循环控制的参 数,以保证每次循环所完成的功能不是完全重复的 ·出口判定部分:至少要有一个出口判定,以保证循环程序正 常结束。也有些循环程序有多个出口,程序可以有多个条件 作为循环结束的控制,只要其中一个条件满足即可结束循环。 微机原理与系统设计 第四章汇编语言指令与程序设计 董明皓 minghao@xidian.edu.cn 4
1.循环程序的构成 4.3.5 循环控制指令 微机原理与系统设计 第四章 汇编语言指令与程序设计 董明皓 minghao@xidian.edu.cn 4 一个标准的循环程序应由以下四部分组成: • 初始化准备部分:为循环做准备的,它不在循环体内。 • 循环工作部分:这部分是循环程序解题所需的核心程序,题 目要完成的功能在此进行。根据题目要求不同,这部分程序 可以很简单,也可以很复杂,甚至是内循环嵌套外循环结构 -多重循环程序。 • 参数调整部分:主要用来更新某些数据或修正循环控制的参 数,以保证每次循环所完成的功能不是完全重复的 • 出口判定部分:至少要有一个出口判定,以保证循环程序正 常结束。也有些循环程序有多个出口,程序可以有多个条件 作为循环结束的控制,只要其中一个条件满足即可结束循环

历些毛子种枚大” 4.3.5循环控制指令 XIDIAN UNIVERSITY ●2.L00P指令 (CX)的内容为设定的循环次数,(CX)-(CX)-1 退出条件:(CX)=O 不影响PSW 其循环结构为: MOV CX,次数 ;循环准备 标号: ;循环体 LOOP标号 “标号”与“LOOP标号”指令之间至多包含128字节(循环控制 指令为短转移指令】
2.LOOP指令 4.3.5 循环控制指令 5 • (CX)的内容为设定的循环次数,(CX)←(CX)-1 • 退出条件:(CX)=0 • 不影响PSW 其循环结构为: MOV CX, 次数 ;循环准备 标号: ;循环体 LOOP 标号 “标号”与“LOOP 标号”指令之间至多包含128字节(循环控制 指令为短转移指令)

历粤毛子代枝大学 4.3.5循环控制指令 XIDIAN UNIVERSITY 2.L00P指令 例:DX:AX中存放32位数,将其扩大16倍 解: MOV CX.4 REP1 SHL AX,1 RCL DX,1 LOOP REP1 “标号”与“LOOP标号”指令之间至多包含128字节(循环控制 指令为短转移指令)
2.LOOP指令 4.3.5 循环控制指令 6 例:DX:AX中存放32位数,将其扩大16倍 “标号”与“LOOP 标号”指令之间至多包含128字节(循环控制 指令为短转移指令) 解 : MOV CX, 4 REP1 : SHL AX,1 RCL DX,1 LOOP REP1

历些毛子种枝大学 4.3.5循环控制指令 XIDIAN UNIVERSITY 3.LOOPZ/LOOPNZ指令 (CX)的内容为设定的循环次数,(CX)-(CX)-1 循环条件:当(CX)≠0且ZF=1(ZF为LOOPZ前方指令执行后 的ZF) 退出条件:(CX)=0或ZF=0 ·不影响PSW 。 适合于在区域中查找不同的“字符” 例如: MOV CX,10 L1:CMP AX,BX;若(AX)BX),即ZF=O,则退出循环 LOOPZ L1 微机原理与系统设计 第四章汇编语言指令与程序设计 葚明皓 minghao@xidian.edu.cn 7
3.LOOPZ/LOOPNZ指令 4.3.5 循环控制指令 7 • (CX)的内容为设定的循环次数,(CX)←(CX)-1 • 循环条件:当(CX)≠0且ZF=1(ZF为LOOPZ前方指令执行后 的ZF) • 退出条件:(CX)=0或ZF=0 • 不影响PSW • 适合于在区域中查找不同的“字符” 例如: MOV CX, 10 L1: CMP AX,BX ;若(AX)≠(BX),即ZF=0,则退出循环 LOOPZ L1 微机原理与系统设计 第四章 汇编语言指令与程序设计 董明皓 minghao@xidian.edu.cn

历些毛子代枝大” 4.3.5循环控制指令 XIDIAN UNIVERSITY ●4.LOOPZ/LOOPNZ指令 (CX)的内容为设定的循环次数,(CX)-(CX)-1 •循环条件:当(CX)≠0且ZF=0(ZF为LOOPZ前方指令执行后的 ZF) 退出条件:(CX)=0或ZF=1 不影响PSW 适合于在区域中查找指定的“字符” 例如: MOV CX,10 L2:CMP AX,BX;若(AX)=(BX),即ZF=1,则退出循环 LOOPZ L2 微机原理与系统设计 第四章汇编语言指令与程序设计 董明皓 minghao@xidian.edu.cn 8
4.LOOPZ/LOOPNZ指令 4.3.5 循环控制指令 8 •(CX)的内容为设定的循环次数,(CX)←(CX)-1 •循环条件:当(CX)≠0且ZF=0(ZF为LOOPZ前方指令执行后的 ZF) •退出条件:(CX)=0或ZF=1 •不影响PSW •适合于在区域中查找指定的“字符” 例如: MOV CX, 10 L2: CMP AX,BX ;若(AX)=(BX),即ZF=1,则退出循环 LOOPZ L2 微机原理与系统设计 第四章 汇编语言指令与程序设计 董明皓 minghao@xidian.edu.cn

历安毛子种牧大” 4.3.5循环控制指令 XIDIAN UNIVERSITY ●4.LOOPZ/LOOPNZ指令 例:找到指定字符,找到则自动退出 ;在DS段 masm.exe中有一个位置计数器-$ STRING DB11111211111 (16位),用于指示:汇编程 COUNT EQU $-STRING 序当前执行汇编语句所面向的 ;在CS段 操作单元;本身是一个常数, MOV CX,COUNT 程序中可以引用 MOV SI,-1 L1:INC SI MOV AL,STRING [SI] CMP AL,1' ;影响ZF LOOPZ LI JZ NOFIND ;若ZF=O,跳出LOOPZ,执行该句 NOFIND
4.LOOPZ/LOOPNZ指令 4.3.5 循环控制指令 9 例:找到指定字符,找到则自动退出 ;在DS段 STRING DB ’11111211111’ COUNT EQU $-STRING ;在CS段 MOV CX, COUNT MOV SI,-1 L1:INC SI MOV AL, STRING [SI] CMP AL, ‘1’ ;影响ZF LOOPZ L1 JZ NOFIND ꞏ ;若ZF=0,跳出LOOPZ,执行该句 NOFIND masm.exe中有一个位置计数器-$ (16位),用于指示:汇编程 序当前执行汇编语句所面向的 操作单元;本身是一个常数, 程序中可以引用

历安毛子代枚大学 4.3.5循环控制指令 XIDIAN UNIVERSITY ●5.JCXZ指令 ·退出条件:(CX)=0 ·不影响PSW 。 经常与循环指令配合使用 ·为避免程序空跑:如果循环次数(CX)=0,则要循环65536 次(最大的循环次数) 微机原理与系统设计 第四章汇编语言指令与程序设计 董明皓 minghao@xidian.edu.cn 10
5.JCXZ指令 4.3.5 循环控制指令 10 • 退出条件:(CX)=0 • 不影响PSW • 经常与循环指令配合使用 • 为避免程序空跑:如果循环次数(CX)=0,则要循环65536 次(最大的循环次数) 微机原理与系统设计 第四章 汇编语言指令与程序设计 董明皓 minghao@xidian.edu.cn

三 历安毛子种枝大学 4.3.5循环控制指令 XIDIAN UNIVERSITY ●5.JCXZ指令 例: MOV CX.VARI ;设定循环次数,可能为0 JCXZ DONE ;当(CX)=0时,跳过循环 ;循环准备 L3: ;循环体 LOOP L3 DONE
5.JCXZ指令 4.3.5 循环控制指令 11 例: MOV CX, VAR1 ;设定循环次数,可能为0 JCXZ DONE ;当(CX)=0时,跳过循环 ;循环准备 L3: ;循环体 LOOP L3 DONE:
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第6章 存储器设计.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第4章 汇编语言指令与程序设计 4.3 数据位操作指令与编程 4.3.1 逻辑运算类指令 4.3.2 移位类指令.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第5章 总线及其形成.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第9章 定时/计数器8253应用设计.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第10章 并行接口芯片8255A应用设计.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第3章 汇编语言基础(汇编语言基本概念).pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第4章 汇编语言指令与程序设计 4.4 分支程序设计.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第3章 汇编语言基础 3.2 数据与转移地址的寻址方式.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第1章 微机中的信息表示.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第8章 中断系统与可编程中断控制器8259A.pdf
- 西安电子科技大学:《微机原理与接口技术》课程教学课件(讲稿)第3章 汇编语言基础 3.1 汇编语言程序设计基础.pdf
- 《脑科学与类脑智能》:面向未来的中国科学院脑科学与类脑智能研究——强化基础研究,推进深度融合.pdf
- 《脑科学与类脑智能》:类脑计算芯片与类脑智能机器人发展现状与思考.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)绪论(主讲:董明皓).pdf
- 《软件工程》课程教学资源(实验指导)软件工程基础训练实验指导.pdf
- 《软件工程》课程教学资源(项目开发文档)7.单元测试阶段——单元测试报告.doc
- 《软件工程》课程教学资源(项目开发文档)6.实现阶段——模块开发说明.doc
- 《软件工程》课程教学资源(项目开发文档)5.详细设计阶段——详细设计说明书.doc
- 《软件工程》课程教学资源(项目开发文档)4.概要设计阶段——组装测试计划.doc
- 《软件工程》课程教学资源(项目开发文档)4.概要设计阶段——概要设计说明书的.doc
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第4章 汇编语言指令与程序设计 4.2 数据运算指令与程序设计.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第2章 8086CPU的结构与功能.pdf
- 西安电子科技大学:《微机原理与系统设计》课程教学课件(讲稿)第4章 汇编语言指令与程序设计 4.6 子程序设计.pdf
- 《网页制作》课程教学资源(讲义)第一章和第二章(石河子大学:李伟).doc
- 《网页制作》课程教学资源(讲义)第七章.doc
- 《网页制作》课程教学资源(讲义)第三章.doc
- 《网页制作》课程教学资源(讲义)第九章.doc
- 《网页制作》课程教学资源(讲义)第五章.doc
- 《网页制作》课程教学资源(讲义)第八章.doc
- 《网页制作》课程教学资源(讲义)第六章.doc
- 《网页制作》课程教学资源(讲义)第十一章.doc
- 《网页制作》课程教学资源(讲义)第十章.doc
- 《网页制作》课程教学资源(讲义)第四章.doc
- 《计算机网络》课程授课教案(双语,计算机科学与技术专业).doc
- 《计算机网络》课程教学大纲(供四年制计算机科学与技术本科专业使用).pdf
- 《计算机网络》课程PPT教学课件(自顶向下方法,英文第三版)第一章 Computer Networks and the Internet.ppt
- 《计算机网络》课程PPT教学课件(自顶向下方法,英文第三版)第七章 Multimedia Networking.ppt
- 《计算机网络》课程PPT教学课件(自顶向下方法,英文第三版)第三章 Transport Layer.ppt
- 《计算机网络》课程PPT教学课件(自顶向下方法,英文第三版)第二章 Application Layer.ppt
- 《计算机网络》课程PPT教学课件(自顶向下方法,英文第三版)第五章 Link Layer and LANs.ppt