- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 汇编语言程序设计 本章内容 汇编语言源程序的格式 伪操作命令 DOS及BIOS功能调用 计算机程序设计语言的演变 1. 机器语言 直接用机器指令来编制计算机程序的方法。 2. 汇编语言 可以用助记符来表示指令的操作和操作数,也可以用标号和符号来代替地址、常量和变量。 3. 高级语言 更接近于人们的自然语言和习惯的教学语言来描述算法的执行过程,从而使编写的过程更加直观和简练。 为什么要用汇编语言 汇编语言非常接近机器语言程序,通过编制汇编语言程序,可以清楚地了解计算机的工作过程。 现在的微机系统中,底层的一些功能仍然靠汇编语言程序来实现。 汇编语言程序的效率通常高于高级语言程序。 举例 data SEGMENT msg DB Hello, World!$ data ENDS code SEGMENT ASSUME CS : code , DS : data MAIN PROC NEAR start: MOV AX , data MOV DS , AX LEA DX , msg MOV AH , 9h INT 21h MOV AX , 4C00h INT 21h MAIN ENDP code ENDS END start 3.2.1 分析1—分段结构 分析2 代码段开头执行了一次功能号09H的21号DOS中断,用于在屏幕上显示字符串。关于DOS功能调用,后文将有详细解释。 此处先列出功能号09H的21号DOS中断的相关资料: 汇编语言开发过程 开发工具 (了解) X86+Windows平台下常用的汇编编译器有: Microsoft公司的 MASM Borland公司的 TASM 开源社区的 NASM MASM是微软推出的宏汇编语言,自发布以来已有多次版本更新,下页表格中列出了几个较为典型的版本。 注:容易与之混淆的是MASM32,它是Steve Hutchesson以个人名义发布、基于MASM而构建的软件包。其版本号和MASM的版本号是不同的,比如MASM32V8使用的汇编编译器是MASM6。MASM32的最新版本为MASM32V12。 MASM版本历史(了解) 开发工具 (了解) Masm5适合进行DOS程序开发; Masm6以后的版本开始支持Win32程序开发。 (微软官方发布的Masm6所附的link.exe是Segmented Executable Linker,只能开发DOS程序;要进行Win32开发必须配备Incremental Linker,该类型的link.exe可以从Visual Studio中获取。开发Win32程序推荐使用MASM32开发包) 开发DOS程序的Masm下载地址: Masm5.00 [罗云彬的编程乐园] 30:22366/view.asp?file=51 Masm615 For Dos [aogo汇编小站] /downpage.asp?table=softid=116 开发步骤演示 (了解) 使用MASM 5.0 开发步骤演示 (了解) 使用MASM 6.15 For DOS 3.2.2 语句的类型 汇编语言源程序中的语句主要有以下两种类型: 指令性语句 指示性语句 指令性语句主要由CPU指令组成,对应实际的机器指令; (比如“Hello例”中的 MOV DS , AX ) 指示性语句又称伪操作语句,主要由伪操作指令组成。 (比如“Hello例”中的 code SEGMENT ) 语句的组成 汇编语言的语句可以有1~4个组成部分,如下所示: [名字] 操作码/伪操作码 [操作数] [;注释] 带方括号的部分表示可选项。以“Hello例”中的几条语句为例: 3.2.3 语句的组成—名字 名字 在指令性语句中,名字是一个标号,实际上就是指令的符号地址。比如“start : MOV AX , data”中的 start: 。并非每条指令性语句都必须有标号。但如果有了这个标号,程序中其他地方就可引用这个标号,比如执行跳转或者CALL调用。指令性语句中的标号后面通常有一个冒号。 标号有三种属性:段、偏移量和类型。 段属性是定义标号的程序段的段地址。 偏移量表示标号所在段的起始地址到定义该标号的地址之间的字节数。 标号的类型有两种:NEAR和FAR。前者可以在段内被引用,地址指针为两个字节;后者可以在其他段中被引用,地址指针为4个字节。 语句的组成—名字 在指示性语句中,名字可以是变量名、段名、过程名。 比如“He
您可能关注的文档
- 【普通逻辑】“推理”附答案解析.doc
- 【文】2013上海高考数学.doc
- 【恒心】【好卷速递】辽宁省大连市、沈阳市2012届高三第二次联合考试语文试题【辽宁专用】.doc
- 【模拟】二级人力师模拟试题四(含答案).doc
- 【星级员工】有效开展TPM-教师手册.doc
- 【早教】如何正确引导孩子阅读.doc
- 【村上英记】オフィス敬语の正しい使い方1.doc
- 【正式文件】关于评选2010年度“五__四”红旗团工委、先进团支部、十佳团员、优秀团干、优秀团员的通知.doc
- 【正文】大型游乐设施安全监察规定20130815.doc
- 【新课标通用第1部分】2014届高考语文二轮复习方案专题课件:专题三 选用、仿用、变换句式和正确使用修辞.ppt
最近下载
- 柑橘基地质量管理体系.pdf
- CAD2007入门教程_图文版.ppt VIP
- TSG Z7005—2015 特种设备无损检测机构 核准规则_可搜索.pdf VIP
- DB4419_T 24-2024 社区社会组织孵化服务指南.docx VIP
- 安全可靠分布式事务型数据库技术要求.pdf VIP
- SH3124-2001T 石油化工给水排水工艺流程设计图例.pdf VIP
- 电缆敷设图集 12D101-5.pdf VIP
- 《银行业法律法规与综合能力》课件.pptx VIP
- 2024新信息科技四年级《第二单元 用编码描绘世界》大单元整体教学设计.docx
- 淮北矿业2015年矿瓦斯综合治理“六项指标”考核办法淮北矿业2015年矿井瓦斯综合治理“六项指标”考核办法.doc VIP
文档评论(0)