第四章 微机原理和接口技术 科大 周荷琴.ppt

第四章 微机原理和接口技术 科大 周荷琴.ppt

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

第四章 汇编语言程序设计;§4.1 概述;(2) 汇编语言;(3)高级语言;汇编语言或高级语言的程序处理过程:;汇编语言或高级语言的程序处理过程:;语言源程序结构:;§4.2 汇编语言格式;汇编语言有两种类型语句,即指令和伪指令,前者属于指令性语句,后者属于指示性语句 指令性语句:指令,由汇编程序翻译成机器指令,在汇编过程中产生对应的目标代码 典型的汇编指令是:ADD AX, [SI] 指示性语句:为汇编程序提供一些信息,让汇编程序在汇编过程执行某些特定的功能,不产生目标代码 典型的伪指令是:COST DW ? ;定义一个字空间,并将标 识符COST指向该字空间 ;1、汇编指令格式 [标号:] 助记符 [操作数,操作数] [;注释] 标号是指为该指令所在地址取的名字,后面必须跟冒号“:”。标号是可供选择的标识符 8086/8088汇编语言中使用的标识符必须遵循下列规则: 标识符由字母(a~z,A~Z)、数字(0~9)或下划线组成 标识符必须以字母开头 标识符有效长度为31个字符,若超过31个字符,则只保留前面的31个字符为有效字符;[标号:] 助记符 [操作数,操作数] [;注释] 指令助记符是指令名称的代表符号,是指令语句中的关键字,不能省略,它表示本指令的操作类型,必要时可在助记符前加一个或多个“前缀” 操作数是参加本指令运算的数据,有些指令不需要操作数,有些指令只需要一个操作数,有些指令需要两个操作数,需要用逗号隔开;有些操作数可以用表达式表示 注释为可选项,需用分号开头,便于阅读程序,汇编程序不对其进行任何处理;2、伪指令格式 [名称] 伪指令定义符 [操作数] [;注释] 伪指令格式与指令格式有以下几点不同: 名称相当于指令语句中的标号,但在名称后不允许带冒号 伪指令定义符是由MASM规定的符号,又称汇编命令,不可缺省,如DB、DW、PROC等 操作数个数随不同的伪指令不同,有的伪指令不允许带操作数,有的允许带多个操作数;三、汇编语言的数据;2、变量 变量通常指存放在存储单元中的值,在程序运行中是可以修改的。 (1)段值(SEGMENT) (2)段内偏移地址(OFFSET) (3)类型(TYPE):指变量中每个元素包含的字节数 3、标号 标号是可执行指令语句的地址的符号表示,它可以作为转移指令和调用指令的目标操作数,以确定程序转向的目标地址,它也具有三个属性:段值、段内偏移地址、类型(指在转移指令中标号可转移的距离) ;4、保留字 保留字是汇编语言中预先保留下的具有特殊意义的符号,只能作为固定的用途 指令、伪指令。寄存器名等都是保留字 5、注释 从分号(;)开始,到本行结束 ;§ 4.3 MASM中的表达式;*;*;*;*;*;(3)TYPE:返回变量的类型属性或标号的距离属性 格式:TYPE 变量或标号 A1 DB 20H,30H A2 DW 0438H L1:MOV AH, TYPE A1 MOV BH, TYPE A2 MOV BL, TYPE L1 (4)LENGTH:当变量中使用DUP时,LENGTH返回此变量所包含的单元数,对其它变量则返回1 格式:LENGTH 变量;M1 DW 100 DUP (?) M2 DW 1,2,3 M3 DB ‘A B C D’ MOV CX, LENGTH M1 MOV BL, LENGTH M2 MOV AL, LENGTH M3 (5)SIZE:返回变量包含的字节数 格式:SIZE 变量 SIZE=LENGTH*TYPE;*;*;*;*;6、其他运算符 其它运算符有(),[ ], ,●,MASK和WIDTH等六种 圆括号():用来改变运算符的优先级别,()中的运算符具有最高优先权 方括号[ ]:主要用来表示地址表达式或多重变量的下标值 尖括号 及原点:在结构中专用 MASK和WIDTH:在记录中专用;*;*;*;*;*;*;*;2、符号定义伪指令 EQU;2、符号定义伪指令 =;3、段定义伪指令 SEGMENT ENDS AEEUME ORG;3、段定义伪指令;举例;实现两个16位二进制数的相乘;*;4、过程定义伪指令 PROC、ENDP、NEAR、FAR;4、过程定义伪指令;例子:多字节的BCD码相加;*

文档评论(0)

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

教师资格证持证人

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

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档