- 1、本文档共119页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理及应用 汇编语言程序设计 第3章 汇编语言程序设计 本章主要内容: 1、汇编语言源程序的结构 2、数据定义 3、汇编语言的运算符 4、基本结构程序设计 5、操作系统资源的使用 6、宏汇编和条件汇编 汇 编 语 言 汇编语言:是机器语言的一种符号表示,是用指令的助记符、符号地址、标号等书写指令,编写程序的语言,是汇编指令、汇编伪指令和编程的语法规则的集合。 汇编语言源程序:用汇编语言编写的程序。 汇编程序:是系统软件,将汇编语言源程序翻译成目标程序,完成汇编任务的程序。 汇编:把汇编语言编写的源程序翻译成机器语言程序(即二进制代码表示的目标程序)的过程。 连接:OBJ文件虽然已经是二进制文件,但它还不能上机运行,必须经过连接程序(LINK)把目标文件与库文件和其它目标文件连接在一起形成可执行文件(EXE文件)。 汇编语言的语句格式 常量、变量和标号 标号:8086汇编语言采用的字符集是ASCII或EBCDIC字符集的一个子集,包括: 大小写英文字母:A~Z;a~z 阿拉伯数字:0~9 特殊字符:+ - * / = ()[ ] 〈〉 ;,‘ “ ——:? @ $ 空格制表符,回车,换行 ? 1 在源程序中出现不属于字符集中的字符是非法的,汇编程序一般把它们作为空格处理。 2 虽然 是字符集中的一个字符,但是,汇编程序规定,紧跟在回车换行之后的是连续控制符,代表一个连续行,所以汇编程序也把它作空格处理。 3 字符集中的一些字符是作为界符使用的,主要是〈〉;,+ / ?[ ] ( )* = 等。界符是一种特殊字符,表明某个标记的结束。 数据定义 常量、变量和标号 常量、变量和标号 变量的属性 变量的属性 变量类型与指令要求的操作数类型相符。例如:MOV AL,VAR1;MOV BX,VAR2 变量的偏址。变量定义以后,变量名仅仅对应这个数据区的首地址。 变量的段址。变量使用时,其段属性应与所在指令的缺省段寄存器相符。如若不符,应该将段地址直接表示出来,即段跨越。例如: MOV AX,ES:[BX] MOV AX,DATA:[DI] 标号的属性 汇编语言的语句格式 ●伪指令语句:在汇编程序对源程序汇编期间由汇编程序处理的操作。伪指令主要完成数据定义、分配存储区、指示程序结束等操作。 格式:[名字] 伪指令 [操作数] [;注释] ?1 名字是伪指令取的名称,相当于指令语句的标号。 2 伪指令定义符是由汇编程序规定的保留字,也称为汇编命令。 3 伪指令语句中包含的操作数的个数随不同伪指令而相差悬殊。 8088/8086汇编语言程序结构 由若干逻辑段组成,各逻辑段都有一个段名,由段定义语句(伪指令语句)来定义和说明。 在代码段的起始处,用ASSUME命令说明各段寄存器与逻辑段的关系。 每个逻辑段由若干汇编语句组成,每行只有一条语句且不能超过128个字符,但一条语句允许有后续行,最后以回车结束。整个源程序必须以END语句来结束。 每一条汇编语句最多由4个字段组成,它们均按照一定的规则分别写在一条语句的4个区域内,各个区域之间用空格或TAB键隔开。 每个源程序在代码段中都必须含有返回到DOS操作系统的指令语句,以保证程序执行完毕后,能自动回到DOS状态,以便继续。 汇编语言源程序的段定义 汇编语言源程序的段定义 段名:伪指令名,可作指令语句的操作数,表示该段的段地址值。 SEGMENT:是段定义语句伪指令的定义符,表示定义的是一个段。 定位方式、连接方式、‘类别’:是指段的属性,主要供连接程序在连接定位时使用。 说明:三个可选项一般情况下可不用。但是如果需要用连接程序把本程序与其它程序模块相连接时,就需要使用这些说明。若不省略,各项顺序不能错,且用空格分隔。 汇编语言源程序的段定义 汇编语言的段寻址 汇编语言的过程定义 过程定义伪指令 一个代码段可以由一个或几个过程组成。 格式:过程名 PROC 属性 ? ? 过程体 RET 过程名 ENDP 过程名 :标识符,是子程序入口的符号地址(规定与标号相同) 属性:NEAR:近过程。只提供给本段调用,且汇编程序使RET指 令编码为段内返回指令。 FAR:远过程。可供其他段调用,且使RET指令编码为段间 返回指令。 数据定义及存储器分配伪指令 数据定义语句为一个数据分配存储单元,用一个符号名与一个或一些存储单元相
您可能关注的文档
- (精)六脉科技工作汇报.ppt
- (精)六外部公共关系.ppt
- (精)免疫功能异常.ppt
- (精)免疫缺陷病和免疫功能评价.ppt
- (精)免疫失调病.ppt
- (精)南昌治精神分裂症医院.ppt
- (精)南开大学MBA课件-企业战略管理03.ppt
- (精)南农 食品安全导论 第七章-食品安全控制.ppt
- (精)南农 食品安全导论 第四章 食品营养与食品安全1.ppt
- (精)南信大数据通信与计算机网络第1章 概述.ppt
- 租房安全协议书.docx
- 高中运动会闭幕式主持词.docx
- 高中化学项目式学习在促进学生科学探究素养培养中的应用与探讨教学研究课题报告.docx
- 2023年陕西省商洛市商州区龙王庙乡招聘社区工作者真题及参考答案详解一套.docx
- 高中生物教师教学画像识别与培训课程体系建设教学研究课题报告.docx
- 5G网络切片技术在智能电网分布式发电的协同控制研究教学研究课题报告.docx
- 基于人工智能的初中历史教学个性化学习资源重组效果分析教学研究课题报告.docx
- 参加班主任培训的收获(30篇).docx
- 保险开门红早会主持词.docx
- 八年级数学三角形的高-中线与角平分线省公开课获奖课件说课比赛一等奖课件(1).pptx
最近下载
- 统编版六年级语文上册习作《多彩的活动》精品课件(共84张PPT).pptx VIP
- 电厂2×600MW机组扩建工程建筑及安装工程土建专业主要技术施工方案.docx VIP
- 电厂2×600MW扩建(脱硫土建、安装)工程土建专业主要施工技术方案.docx VIP
- 电厂2×600MW机组扩建工程建筑及安装锅炉专业施工技术方案.docx VIP
- 煤电公司2×600MW机组工程汽机专业主要施工技术方案.pdf VIP
- 2X660MW超超临界燃煤机组工程qtz2500型塔式起重机安装的施工方案.doc VIP
- 2X660MW超超临界燃煤机组工程#2锅炉平台楼梯安装方案全案(终版).doc VIP
- 2X660MW超超临界燃煤机组工程#2锅炉平台楼梯安装的方案.doc VIP
- 电厂(2×660MW超超临界机组)机组安装工程锅炉专业施工方案.docx VIP
- 电厂(2×660MW超超临界机组)机组安装工程汽机专业施工方案.docx VIP
文档评论(0)