- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计算机组成技术第7章
第7章 8086/8088汇编语言程序设计 7.1 引言 7.2 顺序程序设计 7.3 分支结构程序设计 7.4 循环结构程序设计 7.5 字符串操作程序设计 7.6 宏、条件汇编与重复汇编 7.7 子程序设计 7.8 8086/8088微处理器的其他指令与应用 7.1 引言 1.汇编语言的基本概念与学习汇编语言的重要性 汇编语言是一种面向机器(处理器)的程序设计语言,是机器语言的符号化表示。 汇编语言的执行语句与机器指令有着一一对应的关系,即一个执行语句对应一条机器指令。 按照某种机器汇编语言的语法规则编写的源程序必须翻译成相应的机器语言才能在计算机上运行。这个翻译过程称为汇编。 从汇编语言到机器语言的翻译程序叫汇编程序。 本课程介绍的汇编程序是微软公司开发的MASM。 交叉汇编、反汇编 7.1 引言 1.汇编语言的基本概念与学习汇编语言的重要性 学习汇编语言有助于加深对计算机组成、寻址方式和指令集的理解,全面、客观地评价计算机/处理器的性能。 使用汇编语言可以直接操作、控制计算机的底层硬件。 相对于高级语言源程序经过编译得到的目标程序,汇编语言源程序经汇编得到的目标程序具有代码精练、占用存储空间小、执行速度快的特点,甚至还可以降低机器的功耗。 不同的机器有不同的汇编语言,不同的汇编语言有不同的语法规则。本课程只介绍8086/8088汇编语言。 7.1 引言 2.8086/8088汇编语言的基本语法 合法的字符 英文字母A~Z / a~z (汇编语言不区分字母大小写) 数字0~9 符号+、–、*、/、=、、、(、)、[、]、;、,、?、:、’、”、_、@、$、、#、?、! 数据分为常量和变量 在汇编期间,常量的值完全确定。在程序运行期间,常量的值不会发生变化。 在汇编语言中,变量名代表的是该变量在计算机中的存储地址(和类型)。 7.1 引言 2.8086/8088汇编语言的基本语法 常量 二进制整数,例如 八进制整数,例如:567O、567Q 十进制整数,例如:1234 十六进制整数,例如: 12H , 0ABH 字符,例如:‘O’、“GOOD” 十进制实数,例如:12.34E–5 十六进制实数,例如:1A2B345R 7.1 引言 2.8086/8088汇编语言的基本语法 符号常量 用途:提高程序的可读性、降低发生错误的可能性 通过“EQU”或“=”语句来定义 例如:PI EQU 3.141592 ALPHT = PI* 3 一个符号用“EQU”定义后就不允许对其再次定义,而用“=”定义的符号可以对其再次定义 符号常量及其数值保存在汇编程序管理的符号表中,在汇编过程中,一旦遇到符号就用它的数值替换 。 7.1 引言 2.8086/8088汇编语言的基本语法 变量 两种类型:寄存器变量和主存变量 寄存器变量就是寄存器名。例如:AX(AH|AL),BX(BH|BL),CX(CH|CL),DX(DH|DL),SI,DI,BP,SP,CS,DS,ES,SS,IP 主存变量简称为变量, 变量名具有段地址、偏移地址和类型三个属性 。 变量的类型有:DB、DW、DD、DQ和DT。 一个实现字节型变量X+Y?Z的源程序 一个实现字节型变量X+Y?Z的源程序 7.1 引言 2.8086/8088汇编语言的基本语法 上例的伪指令有段定义伪指令、变量定义伪指令和段值设置伪指令 段定义伪指令由语句“段名 SEGMENT”开始,以语句“段名 ENDS”结束。 变量定义伪指令的格式是: 变量名 变量类型 变量初值序列 [;注释] 段值设置伪指令ASSUME,放在代码段的开始处 7.1 引言 2.8086/8088汇编语言的基本语法 上例的指令性语句有MOV指令、ADD指令和INT指令 指令性语句的一般格式是: [标号:] 指令操作符 [操作数] [,操作数] [;注释] 操作数分为源操作数和目的操作数,前者表示欲处理数据的源地址,后者表示处理结果的存储地址,两者的数据类型必须一致。 标号是后面紧跟着冒号的标识符,代表冒号后面语句的存储地址,供转移指令或循环指令作为操作数使用 标号的属性:NEAR、FAR 7.1 引言 2.8086/8088汇编语言的基本语法 标号、段名和变量名统称为标识符 是一个由字母、符号或数字组成的字符串。这个字符串有三个限制:一是必须采用合法的字符;二是第一个字符必须是字母、问号、@或下划线中的一个,不能是数字;三是不能使用汇编语言的保留字。 标识符中字符个数没有明确的限制,但只有前面的31个字符能够被汇编程序识别。 标识符的命名应该有一些含义,以增强程序的
文档评论(0)