第4章节3汇编语言程序的设计.pptVIP

  • 29
  • 0
  • 约1.27万字
  • 约 29页
  • 2017-04-01 发布于四川
  • 举报
第4章节3汇编语言程序的设计

4.4 汇编语言程序设计基础 汇编语言程序设计的步骤: 1-根据实际问题抽象出数学模型,确定算法 2-画出程序框图(流程图) 3-分配内存工作单元和寄存器 4-根据框图编写源程序,存成.ASM文件 5-对源程序汇编,生成.OBJ目标文件 6-把.OBJ文件连接成.EXE执行文件 7-运行、调试 源程序的基本结构:顺序、分支、循环、过程 (1)用方框表示工作框,框中用简明语言标明要完成的功能 (4)各框之间用直线连起来表示程序走向。 二、分支程序设计 例3:编程求符号函数 DATA SEGMENT X DB 30 Y DB ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX, DATA XD: CMP AL, 0 MOV DS, AX JZ DY MOV AL, X MOV Y, -1 CMP AL, 0 JMP NEXT JLE XD DY: MOV Y,0 MOV Y, 1 NEXT:MOV AH, 4CH JMP NEXT INT 21H CODE ENDS END START 三、循环程序设计 1.DO…UNTIL条件 结构 先执行,再判断条件。工作部分至少执行一次。 2. DO WHILE条件 结构 先判断条件,再执行。工作部分有可能一次都不执行。 循环程序的构成 循环初始部分:为进入循环做必要的准备工作; 循环体:是程序中重复执行的程序段 循环控制部分:为进入下一次循环,修改地址指针、计数器内容等项参数; 用计数控制循环:对于循环次数已知的程序,或是在进入循环前可由某变量确定循环次数的程序,通常用计数器来控制循环。 用条件控制循环:适用于某些循环次数未知的程序,或循环次数可变的程序,可以由问题给出的条件控制循环结束。 循环结束部分:进行循环之后的处理。 汇编语言源程序的基本结构框架 一个程序提交给操作系统后就能够获得操作系统下放的CPU的控制权,接下来就可以执行这个应用程序了。 程序执行完后有一件重要的事情需要完成,那就是返回操作系统,把CPU的控制权交还给操作系统。 对于DOS来说,如果应用程序不主动把CPU控制权返还给它,那么它将永远失去对CPU的控制,因为这种操作系统太简单,没有剥夺机制。 为了实现应用程序正常返回,可以采用两种程序框架。 1)把应用程序当作操作系统的子程序 DOS操作系统把任何一个程序装入到内存时,都会给它分配一个PSP(程序段前缀)空间,在DS、ES段寄存器未进行初始化之前,它们都是指向PSP的起始地址,该地址中存放了一条中断指令“INT 20H”。 中断调用就是系统提供的子程序,完成一些特殊的系统功能。第20H号中断调用,可以完成终止当前应用程序并返回DOS操作系统的功能。 在初始化DS、ES寄存器的过程中,DS、ES中的内容会改变,不再指向PSP。 如果希望使用PSP起始地址处存放的那条INT 20H指令返回DOS操作系统,那么应该把应用程序整个设置为一个FAR类型的子程序。在程序开始的时候保存逻辑地址(DS):0000H到堆栈,作为返回点。 整个程序执行完毕以后使用RET指令,就会使指令流程转向PSP的起始地址,执行INT 20H后会返回到操作系统。 2)使用特定的中断调用返回DOS 这种程序框架没有什么特别的地方,只是程序最后两条指令语句是固定的:

文档评论(0)

1亿VIP精品文档

相关文档