网站大量收购独家精品文档,联系QQ:2885784924

第04章微机原理课件.ppt

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

微机原理与接口技术 通信工程系 李宝平 Libaoping@hpu.edu.cn 汇编程序(翻译程序) 4.1.2 汇编语言源程序格式 操作码可以是指令、伪指令或宏指令的助记符。对于指令,汇编程序将其翻译成机器语言指令。 对于伪操作,汇编程序根据其功能进行处理。对于宏指令,则将根据其定义展开,转换成对应的代码。 3.变量 变量——即内存中的存储单元或数据区。 变量名——是存储单元(数据区)的符号地址 或 名字。 变量也有三个属性: 段地址—变量所在段的段地址 偏移量—变量单元地址与段首地址之间的位移量。 类 型—有BYTE、WORD 、DWORD三种之一。 变量在程序中作为存储器操作数被引用。 4.表达式 表达式是常数、寄存器、标号、变量与运算符的组合。 有数字表达式和地址表达式两种。 汇编时按优先规则对表达式进行计算,计算出具体的数值或地址。运行时不能改变。 表达式中的运算符有6类:算术、逻辑、关系、取地址、属性、杂类。 1)算术运算符—— +、-、*、/,MOD 2)逻辑运算符—— AND、OR、XOR、NOT 移位运算符——SHL、SHR 3)关系运算符——EQ、NE、LT、GT、LE、GE 4)数值回送操作符 取值运算符——TYPE、LENGTH、SIZE 5)属性操作符 —PTR,SHORT,THIS,HIGH,LOW,HIGHWORD,LOWWORD PTR 用来指定地址操作数的类型。 格式:类型 PTR 地址操作数 类型∈{BYTE, WORD, DWORD和 NEAR, FAR ,SHORT} BYTE、WORD、DWORD 用于描述数据存储单元(变量)地址 NEAR、FAR (SHORT ?) 用于描述转移、调用的目的地址 SHORT: 用来修饰JMP指令中转向地址的属性,指出转向地址是在下一条指令地址的-128~+127个字节范围之内。 THIS: 格式为: THIS attribute 或 type 它可以象PTR一样建立一个指定类型(BYTE、WORD或DWORD)的或指定距离(NEAR或FAR)的地址操作数。该操作数的段地址和偏移地址与下一个存储单元地址相同。 例如: FIRST_TYPE EQU THIS BYTE WORD_TABLE DW 100 DUP(?) 又如: START EQU THIS FAR MOV CX,l00 MOV指令有一个FAR属性的地址START,这就允许其它段的JMP指令直接跳转到START来。 HIGH和LOW; HIGHWORD 和LOWWORD 称为字节分离操作符字节。它接收一个数或地址表达式,HIGH取其高位字节,LOW取其低位字节。 CONST EQU 0ABCDH MOV AH, HIGH CONST 则汇编完成 MOV AH, 0ABH 6)注释项 注释项用来说明一段程序或一条或几条指令的功能,它是可有可无的。但是,对于汇编语言程序来说,注释项的作用是很明显的,它可以使程序易于被读懂,因此,编制程序必须写好注释。 四、 伪指令与伪操作 数据定义 伪指令 符号定义 伪指令 段定义和段寄存器指定伪指令 过程定义 伪指令 结束 伪指令 例:FIVE EQU 5 COUNT EQU CX TEN EQU 10 DIST = BYTE PTR[SI+BP] GOTO = JMP … MOV AX, TEN MOV CX, COUNT ADD DIST, FIVE DIST = WORD PTR[SI+BP+1] ADD DIST, AX GOTO LABEL (2)数据定义伪指令 用于定义变量,即内存单元或数据区。数据定义伪指令的格式为: 变量名 数据定义伪指令 操作数,操作数,… 常用的数据定义伪指令有如下几种: DB 定义字节 DW 定义字 DD 定义双字 操作数可以是常数、变量或表达式 例2:操作数可以是字符串,例如 STR DB ‘HELLO’ 汇编后的情况如图: 操作数?用来保留存储空间,但不存入数据. 例3:ABC

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档