《ibm pc 80x86汇编语言程序设计》ppt电子课件教案-第五章 基本结构程序设计

上传人:aa****6 文档编号:49612211 上传时间:2018-07-31 格式:PPT 页数:70 大小:377KB
返回 下载 相关 举报
《ibm pc 80x86汇编语言程序设计》ppt电子课件教案-第五章  基本结构程序设计_第1页
第1页 / 共70页
《ibm pc 80x86汇编语言程序设计》ppt电子课件教案-第五章  基本结构程序设计_第2页
第2页 / 共70页
《ibm pc 80x86汇编语言程序设计》ppt电子课件教案-第五章  基本结构程序设计_第3页
第3页 / 共70页
《ibm pc 80x86汇编语言程序设计》ppt电子课件教案-第五章  基本结构程序设计_第4页
第4页 / 共70页
《ibm pc 80x86汇编语言程序设计》ppt电子课件教案-第五章  基本结构程序设计_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《《ibm pc 80x86汇编语言程序设计》ppt电子课件教案-第五章 基本结构程序设计》由会员分享,可在线阅读,更多相关《《ibm pc 80x86汇编语言程序设计》ppt电子课件教案-第五章 基本结构程序设计(70页珍藏版)》请在金锄头文库上搜索。

1、第五章 基本结构程序设计5.1 顺序结构程序设计5.2 分支结构程序设计5.3 循环结构程序设计IBM PC 80X86汇编语言程序设计 冶金工业出版社第5章第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社5.1 顺序结构程序设计在讲顺序结构程序设计之前,先了解以 下三方面的内容v汇编语言程序设计的基本步骤v 流程图的画法规定v程序的基本结构第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社汇编语言程序设计一般有以下几个步骤: v1. 分析问题,归纳出数学模型 v2. 确定算法 v3绘制流程图 v4. 分配存储空间和工作单元 v5根据流程图编制程序 v6. 静态检查

2、v7调试程序第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社1流程图的概念 v流程图是由特定的几何图形、指向线 、文字说明来表示数据处理的步骤,形象 描述逻辑控制结构以及数据流程的示意图 。流程图具有简洁、明了、直观的特点。2流程图符号表示(1)开始框:表示 程序的开始。开始第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社(3)判断框 (2)处理框(执行框) 条件NY(4)结束框 结束第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社v结构程序设计程序的每个部分都由有限结构结合中的单元组 成,并且只有单一的入口和单一的出口。基本结构有:顺序结构(线性结构

3、)选择结构(分支结构)循环结构三种结构可以任意组合和嵌套构成 复杂的程序。第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社这三种结构可归纳为五种逻辑结构:(1)顺序结构(2)双分支结构(3)多分支结构YN条件条件第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社YN(4)DO_UNTIL循环结构NY(5)DO_WHILE循环结构图程序的逻辑结构格式第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社5.1 顺序结构程序设计特点:指令顺序执行,无分支、无循环、无转移 。例5-1 编写程序段,完成下面公式的计算(其中:变量X和Y 是32位有符号数,变量A,B和Z

4、是16位有符号数)。A(XY24)/Z的商,B(XY24)/Z的余数程序如下:DATA1 SEGMENT X DD ? Y DD ? Z DW ? A DW ? B DW ? DATA1 ENDS 第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社CODE1 SEGMENT MOV AX, X MOV DX, X2 ;用(DX:AX)来保存32位变量X的数值 SUB AX, Y SBB DX, Y2 ;(DX:AX)(Y2:Y) ADD AX, 24D ADC DX, 0 ;(DX:AX)24 IDIV Z MOV A, AX MOV B, DX CODE1 ENDS 第5章IBM

5、 PC 80X86汇编语言程序设计 冶金工业出版社START:MOV AX,DATAMOV DS,AXMOV AL,AD1ADD AL,AD2MOV SUM,ALMOV AH,4CHINT 21H ;返回DOSCODE ENDSEND START第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社例5-2 利用直接查表法完成将一位16进制数转换成对应它相 应的ASCII码。DATA SEGMENTTABLE DB 30H,31H,32H,33H,34H,35H,36H,37HDB 38H,39H,41H,42H,43H,44H,45H,46HNUM DB 4ASCII DB ? DA

6、TA ENDSCOSEG SEGMENTASSUME CS:COSEG,DS:DATASTART:MOV AX,DATAMOV DS,AX第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社MOV BX,OFFSET TABLEXOR AX,AX ;AX清零MOV AL,NUMADD BX,AXMOV AL,BXMOV ASCII,ALMOV AH,4CH ;返回DOSINT 21HCOSEG ENDS END START第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社说明:vDOS的1号功能调用MOV AH,01H ;从标准输入设备读一个字符INT 21H ;AL=键

7、入的ASCII码vDOS的2号功能调用MOV AH,02H ;向标准输出设备输出一个字符INT 21H ;DL=输出字符的ASCII码v注意XLAT的换码指令的操作第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社5.2 分支程序设计v 转移指令转移指令无条件转移指令有条件转移指令1、无条件转移指令 功能是无条件转移到指定地址,执行从该地址开始的 指令。根据转移时是否重置CS的内容,无条件转移指令 段内转移段间转移第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社v段内转移(近转移):转移时只改变IP寄存器的 内容,CS的值保持不变,条件转移和循环指令只能 实现段内转移

8、。v段间转移(远转移):是在不同代码段之间转移 ,不仅改变IP的值,也改变CS的值,软中断和中断 返回总是段间转移。(1)段内直接短转移格式:JMP SHORT OPR功能:IPIP+8位偏移量其中OPR为一般标号,转移范围-128127第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社例:NEXT: MOV AX,CXJMP NEXTJMP OVEROVER: MOV AX,1第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社(2)段内直接近转移格式 :JMP NEAR PTR OPR功能:IPIP+16位的偏移量其中OPR为一般标号,转移范围为-3276832767

9、地址差为065535,所以近转移可以到达实模式下当 前代码段的任何位置。(3)段内间接转移格式:JMP WORD PTR OPR功能:IP(EA)OPR是16位的通用寄存器或字存储器。例:JMP CX ;CX寄存器的内容送IPJMP WORD PTR 1234 ;字存储单元1234的内容送IP 7856JMP3412 MOV AX,1DS:1234H原IP=新IP=5678H转移指令第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社(4)段间直接转移格式:JMP FAR PTR OPR功能:IPOPR的偏移地址,CSOPR的段地址其中OPR是一个标号,所代表的指令与JMP指令不在同

10、 一个代码段中,标号前的FAR PTR向汇编程序说明这 是段间转移。无条件段间直接转移指令机器指令格式如下: 指令操作码目标地址偏移目标地址段值第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社跳转转至此A300 0127JMP远转移1000010001100021000310004A3126A3127第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社(5)段间间接转移格式:JMP DWORD PTR OPR功能:IP(EA),CS(EA+2)其中OPR是一个双字存储器,低字存放转移目 标的偏移地址,高字存放转移目标的段地址 。例如:JMP DWORD PTR 1234

11、双字存储单元的低字节送IP双字存储单元的高字节送CS第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社2.条件转移指令条件转移只能实现段内转移,而且转移范围是 -128127。(1)单条件转移指令根据标志位的值进行转移 JZ/JE OPR ; ZF=1转移 (结果为零或相等转移)JNZ/JNE OPR; ZF=0转移(结果不为零或不相等转)JS OPR ; SF=1转移(结果为负转移)JNS OPR ; SF=0转移 (结果为正转移) 格式转移条件说明第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社 JO OPR ; OF=1转移 (结果溢出转移)JNO OPR ;

12、OF=0转移 (结果不溢出转移)JP/JPE OPR; PF=1转移 (结果为偶转移)JNP/JPO OPR;PF=0转移 (结果为奇转移)JC OPR ; CF=1转移 (有进位或借位转移)JNC OPR ; CF=0转移 (无进位或借位转移)注:通常在使用条件指令前,总有用于条件判断的 相关指令第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社例如:要测试寄存器AX的低四位是否全为0 ,如果全为0,则CX=0,否则CX=-1MOV CX,-1 ;CX赋初值TEST AX,0FH ;测试AX的低4位JNZ NZERO ;不全为0转NZEROMOV CX,0 ;全为0,置CX=0N

13、ZERO: 第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社例3-45已知一个字节变量Char,试编写一程序段,把其所存 的大写字母变成小写字母。程序如下:Char DB F ;变量说明NEXT: MOV AL,CharCMP AL, AJB NEXT ;注意:字符是无符号数 CMP AL, ZJA NEXTADD Char,20H ;大小写转换 第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社(2)两个无符号数比较(X,Y) JB/JNAE/JC OPR X= Y 转移JBE/JNA OPR XY 转移指令系统提供了两组指令,分别用于无符号数和有 符号数的比较。v无符号数比较,用A代表大于,用B代表小于,用E代表等于v有符号数比较,用G代表大于,用L代表小于,用E代表等于第5章IBM PC 80X86汇编语言程序设计 冶金工业出版社(3)两个有符号数的比较(X,Y) JL/JNGE OPR

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > 教育/培训/课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号