[工学]第四章 汇编语言及程序设计.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]第四章 汇编语言及程序设计

* 如要在下列数组中查找x=45, 23 34 45 50 56 67 78 89 91 则在Y存储单元中保存偏移量2,在屏幕上显示“OK!”。 * * ?第四章内容结束? * * LEA DX,INFO1 MOV AH,9 ;9号调用,显示输入提示信息 INT 21H LEA DX,BUFA MOV AH,10 ;10号调用,键盘输入字符串到缓冲区BUFA INT 21H LEA SI,BUFA+1 MOV CH,0 ;取字符长度→CX MOV CL,[SI] ADD SI,CX ;SI 指向字符串尾部 LEA DI,BUFB ;DI指向字符串变量BUFB NEXT: MOV AL,[SI] MOV [DI],AL DEC SI INC DI LOOP NEXT MOV BYTE PTR [DI],‘$’ LEA DX,INFO2 MOV AH,9 ;9号调用,显示输出提示信息 INT 21H * LEA DX,BUFB MOV AH,9 ;反向显示字符串 INT 21H MOV AH,4CH INT 21H CODE ENDS END START * 4.5.3 DOS功能调用举例 1.? 字符或字符串输出 P152 2.?? 字符或字符串输入 3. 设置日期与时间 *P155_1 , *P155_3 * 4.5.4 BIOS中断和功能调用 BIOS常驻于PC机的ROM中,只要机器加电,便可调用它们。 通常,用户不必使用BIOS调用,除非感到同样的DOS中断或功能调用速度不够快或不能完成用户所需的工作。 BIOS除常驻留在ROM中外,还使用了256个字节RAM作为数据区(400H~4FFH)。 * P158 清屏程序 裸机 汇编语言程序 * 4.6 程序设计基本方法 一个好的程序具有下列特点: 程序结构模块化,简明、易读、易调试与维护。 执行速度快。 占用内存少。 * 设计源程序的基本步骤 (1) 分析问题,抽象出描述问题的数学模型,确定解决问题的算法与思路。 (2) 绘制流程图或结构图(对简单程序可省略这一步)。 (3) 分配存储单元及工作单元(包括寄存器)。 (4) 编写程序。 (5) 上机调试与修改,结果分析。 * 起始框 终止框 执行框 判别框 Y N 常用流程图的框图 * 4.6.1 顺序结构 顺序结构的程序一般是简单程序,其特点是程序顺序执行,无分支,无循环与转移。 顺序结构程序又称无分支程序,这是一种最简单且大量使用的程序设计方法,在流程图中用若干处理框串行连接表示。P160例4.4,亦可作为上机练习程序之四。 * 4.6.2分支结构 一个大的程序完全顺序结构实际上并不可能,经常会遇到有分支的情况。分支结构程序通常采用条件转移或转移表来实现。 图4.3典型分支程序框图 * P162例4.5: 将符号函数建立标志 补充例题:逻辑尺的概念: 设有数组X和Y,X数组中有X1,…,X10; Y数组中有Y1,…,Y10,试编程计算: Z1=X1+Y1,Z2=X2+Y2,Z3=X3-Y3, Z4=X4-Y4,Z5=X5-Y5,Z6=X6+Y6, Z7=X7-Y7,Z8=X8-Y8,Z9=X9+Y9, Z10=X10+Y10,结果存入Z数组。 本例定义逻辑尺为:0000000011011100 从低位开始计数,高6位没有意义。其中 0:+;1:- * 4.6.3循环结构 (1) 初始化 (2) 循环体 (3) 修改参数 (4) 循环控制 * 例题讲解: P164例4.7 P165例4.8:冒泡法介绍 冒泡排序是一种比较典型的排序算法,具体实现时是从第一个元素开始,依次对N个元素中相邻的两个元素进行比较,若顺序不满足则进行交换,这样经过一轮比较后,最大的元素就排到了最后面;然后进行第二轮,仍然从第一个元素开始,依次对除最后一个元素外的N-1个元素中相邻的两个元素进行比较,若顺序不满足则进行交换,这样经过第二轮比较后第二大元素就排在了倒数第二个位置,……,如此重复,直到所有的元素都排序完毕。可见,冒泡程序也是一个双重循环程序结构。 * 举例说明:要对以下数据进行升序排列 49 35 28 97 76 13 27 第一轮: 35 49

文档评论(0)

ipbohn97 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档