文档详情

微机原理04第四章new.ppt

发布:2017-06-21约字共125页下载文档
文本预览下载声明
4.5 程序设计 4.5.1 程序设计步骤 (1)分析问题 (2)建立数学模型 (3)确定算法 (4)绘制流程图 (5)分配内存空间 (6)编制程序与静态检查 (7)上机调试 (8)试运行和分析结果 (9)整理资料投入运行 顺序结构程序设计 例 编写程序,计算(W-(X*Y+Z-100))/W,其中W、X、Y、Z均为16位带符号数,计算结果的商存入AX,余数存入DX。 DATA SEGMENT W DW 268 X DW –73 Y DW 48 Z DW –85 DATA ENDS STACK SEGMENT DW 100 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK 分支结构程序设计 程序如下: DATA SEGMENT ;定义数据段 TABLE DW CLASS1,CLASS2,CLASS3,CLASS4,CLASS5 DW CLASS6,CLASS7,CLASS8,CLASS9,CLASS10 NUM DB ? ;分类号 DATA ENDS STACK SEGMENT STACK ;定义堆栈段 DW 100 DUP(?) STACK ENDS CODE SEGMENT ;定义代码段 MAIN PROC FAR ;主过程 ASSUME CS :CODE,DS:DATA,SS:STACK START:PUSH DS ;保存当前信息 SUB AX,AX PUSH AX MOV AX,DATA ;把DATA段基址置入DS MOV DS,AX MOV AL,NUM ;取分类号 MOV AH,0 SHL AX ;NUM*2 SUB AX,2 ;NUM*2-2 LEA BX,TABLE ;取表的偏移地址首地址 ADD BX,AX JMP [BX] ;转对应分支的入口地址 CLASS1: …… ;分支1处理程序段 CLASS2: …… ;分支2处理程序段 CLASS10: …… ;分支10处理程序段 RET MAIN ENDP CODE ENDS END START ;程序结束 循环结构程序设计 循环程序在结构上包括循环的初始化、循环体和循环控制三部分。 循环初始化部分用于设置循环体的初值,包括设置循环计数器的初值、变量的初值和地址初值等。 循环体是循环的基本部分,是要反复执行的那些操作,循环体中必须有改变循环条件的指令。 循环控制部分是循环的核心部分,用于控制重复执行的次数,检测和修改循环控制计数器,控制循环的运行和结束。 保存与恢复寄存器 子程序设计时,应注意以下几点: 现场保护和返回 子程序的嵌套和递归调用 参数传递 编写子程序调用方法说明 例 通过寄存器传递参数,将数据块BUF1中的内容传递到数据块BUF2中。 DATA SEGMENT BUF1 DB 11,22,33,……,99 CUNT EQU $-BUF1 BUF2 DB CUNT DUP(?) DATA ENDS STACK SEGMENT TOS DW 128H DUP(?) STACK ENDS CODE SE
显示全部
相似文档