- 1、本文档共80页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 汇编语言程序设计 一.汇编语言语法 二.汇编语言程序设计 三.汇编程序及上机过程 四.DOS及BIOS功能调用 五.汇编与高级语言混合编程 本章重点 伪指令 汇编语言基本概念 汇编语言的功能 程序的运行 汇编语言程序设计基本方法 (一)计算机程序设计语言的演变 1)机器语言:直接用机器指令来编制计算机程序 2)汇编语言:可以用助记符来表示指令的操作和操作数,也可以用标号和符号来代替地址、常量和变量 3)高级语言:更接近于人们的自然语言和习惯的教学语言来描述算法的执行过程,从而使编写的过程更加直观和简练。 最近,计算机语言的另一个发展方向是混合语言程序设计。混合语言并不是一种新出现的自成系统的新型语言,它采用两种或两种以上的编程语言加以组合编程,是一种程序接口技术,实现不同语言程序之间的相互调用。 (三)汇编语言的语句种类及其格式 3种基本语句:指令语句、伪指令语句、宏指令语句 1、指令语句:每一条指令语句在汇编时都要产生一个可供机器执行的机器目标代码,所以这种语言又叫可执行语句。指令语句的格式如下: 标号:( 前缀指令) 助记符(操作数);(注释) 1)标号。这是一个任选字段。标号是指令语句的标识符,在语句之首,必须以“:”作为结束符。 对标号的规定: ① 由字符A~Z ,a~z ,0~9及符号@、$、下划线_ 等组成, 最长31个字符,超出部分忽略。 ② 不能用数字打头,以免与十六进制数相混。 ③ 不使用汇编程序中的保留字。 (如指令的助记符等) ④ 对定义的符号不区分大小写。 2)指令助记符。为指令操作码规定的符号。 3)操作数。可以根据指令的功能的需要,可不带操作数,带一个操作数或两个操作数,若有两个操作数时,中间用“,”号分开。 操作数给出参与操作的数或数所在的地方。 操作数可以是常数、寄存器、存储器操作数、 标号名、过程名或表达式等。 4)注释。为了方便程序员阅读程序而加的说明。 例3: JMP near ptr progia JMP word ptr table [BX] JMP far ptr NEXT_PROG JMP dword ptr [BX] (五) 伪指令 1)方式伪指令 .8086 .386 2)赋值伪指令EQU 3)定义变量伪指令 4)定义存储单元类型的伪指令BYTE、WORD DWORD 5)LABEL定义标号名称和属性伪指令 6)SEG和OFFEST 取段和偏移地址伪指令 7)TYPE、SIZE和LENGTH 存储器地址操作数类型,字节单元数 8)段定义伪指令 9)过程定义伪指令PROC,ENDP,NEAR,FAR 10)定义结构的伪指令STRUC/ENDS 11)IF ELSE ENDIF条件汇编伪指令 12)逻辑运算伪指令AND、OR、XOR、NOT 13)访问外部标识符的伪指令EXTRN、PUBLIC 14)源程序结束伪指令END (1)赋值伪指令EQU 格式: 符号名 EQU 表达式 作用为表达式定义一个名称 其中 : 表达式可以是任何有效的操作数(包括常量、变量、已定义过的标号、数值表达式、地址表达式甚至是指令助记符或寄存器名等) 汇编时用语句中的 表达式代替程序中符号所在的地方。 EQU 应用: 1. 定义符号常量,方便修改程序。 2. 某表达式多次出现时,用EQU可以方便编程。 3. 汇编时不给符号常量分配内存 例:ABC EQU 2000H COUNT EQU CX ②组合类型 表示该段和其它段的连接方法 PUBLIC :可与其它同名段汇编时依次连接 COMMON:可与其它同名段汇编时共享相同的存贮空间 AT表达式: 表示相应段定位在由表达式求值得到的地址上 STACK: 与PUBLIC用法相同,但仅用于堆栈段 MEMORY:表示相应段定位在其它段之上,具有最高的地址 ③分类名 表示汇编时把不同模块中的相同分类名,在物理地址上依次连接起来 二、 汇编语言程序设计 (1)顺序程序设计 (2)分支程序设计 (3)循环程序设计 (4)子程序设计 (5)多模块程序设计 程序的基本结构有4种: 顺序结构 分支结构 循环结构 子程序结构 (1) 顺序程序设计 顺
文档评论(0)