网站大量收购闲置独家精品文档,联系QQ:2885784924

微机原理及应用版第章汇编语言程序设计.ppt

微机原理及应用版第章汇编语言程序设计.ppt

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

第4章 汇编语言程序设计 4.1 汇编语言语法 源程序结构与组成 段 语 句 指令语句 伪指令 / 指示性语句 宏指令语句 名 字 4.1.2 汇编语言伪指令 伪指令分类 类别: 5. 模块定义和结束伪指令 ⑵ END 其它伪指令 ⑵ 定位伪指令ORG ⑶ 基数控制伪指令RADIX 1. 常 量 2. 变 量 3. 表达式与运算符 运算符 (5)属性运算符 典型应用之二:指定内存操作数的类型 典型应用之三:与EQU一起定义一个新的变量 3) SHORT 4) 其它 运算符的优先级 4. 注释项 例 4.2 汇编语言程序实现 汇编程序返回DOS方法 4.3 汇编语言程序设计方法及应用 (1) 分析问题 2. 结构化程序设计 例题4.3 流程图及编码 跳转的实现 双分支程序 多分支程序设计 多分支程序设计方法 ⑴ 转移表法 跳转表 ⑵ 地址表法 ⑶ 逻辑分解法 零次或先判断后执行 非零次或先执行后判断 循环程序设计建议 4.3.5 子程序设计 采用子程序优点 2. 子程序设计方法 ⑴ 过程定义 ⑵ 子程序的现场保护和现场恢复 1) 利用堆栈实施现场保护和现场恢复 2) 利用空闲的存储区实施现场保护和现场恢复 1) 用寄存器传递参数 2) 用存储单元传递参数 【例题4.12】采用第二种形式,实现无符号字数组的求和。 子程序 SUM_W 3) 通过堆栈实现参数传递 【例题4.13】利用堆栈,采用递归子程序方法,编程实现求N! ⑷ 子程序说明 子程序说明内容 DOS功能(调用INT 21H) 举例 单个字符输入 字符串输入 【例】允许最大输入为100字节的数据定义及功能调用。 单个字符输出 字符串输出 BIOS(INT 16H)功能举例 BIOS(INT 10H)举例 4.4 汇编语言程序设计举例 算法思想 冒泡排序过程示意 操作步骤 代码 查找 顺序查表法 解题设计 程序结构 【例题4.21】调用BIOS显示程序中的13H功能在屏幕上显示多种属性的字符串“HELLO”。 源程序 小 结 字符串输出,可选用多次单个字符的输出或选用9号功能。 9号功能的入口参数是被输出字符串首址,接收入口参数的是寄存器DS和DX,分别存入被输出字符串首址的段基值和偏移量。 采用9号功能输出字符串,要求字符串以“$”结束。该字符作为字符串结束符,不输出。 【例】输出STRING中的字符 DATA SEGMENT STRING DB ‘Where there is a will, there is a way$’ ;定义字符串 …… DATA ENDS CODE SEGMENT …… MOV AX,DATA MOV DS,AX …… MOV DX,OFFSET STRING MOV AH,9 INT 21H …… CODE ENDS 2.BIOS功能调用方法 BIOS常驻ROM,独立于DOS,可与任何操作系统一起工作。 它的主要功能是驱动系统所配置的外部设备,如磁盘驱动器、显示器、打印机及异步通讯接口等。通过INT 10H~INT 1AH向用户提供服务程序的入口,使用户无需对硬件有深入了解,就可完成对I/O设备的控制与操作。 BIOS的中断调用与DOS功能调用类似。 功能 出口参数 AH = 0 从键盘读一个字符 AL=字符的ASCII码 AH= 字符的扫描码 AH = 1 判断键盘是否有键可读 ZF = 1表示无键可读 ZF = 0表示有键可读? AL=字符的ASCII码 AH=字符的扫描码 AH = 2 取变换键状态 AL=变换键状态 AH=3 AH=2 AH=0 功能号 CH=开始行 CL=结束行 DH=行号 DL=列号 BH=显示页号 读光标位置 BH=显示页号 DH=行号 DL=列号 置光标位置 AL=显示模式代号 设置显示模式 出口参数 入口参数 功能 AH=0EH AH=7 AH=6 功能号 BH = 显示页号 BL = 前景色 AL = 字符代码 显示字符 AL=下滚行数 其它参数同AH=6 向下滚屏 AL=上滚行数 BH=填空白行的属性 CH=窗口左上角行号 CL=窗口左上角列号 DH=窗口右下角行号 DL=窗口右下角列号 向上滚屏 出口参数 入口参数 功能 4.4.1 数制和代码转换 ASCII-十进制 二进制-ASCII 4.4.2 表格处理与应用 排序 查找 4.4.3 功能调用 DOS功能 BIOS功能 【例题4.15】将5位ASCII码表示的十进制数(不大于65535)转换成两字节二进制数。 如:‘12345’→ 110000注:两字

文档评论(0)

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

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

1亿VIP精品文档

相关文档