- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
lec05汇编语言中的操作数解读
汇编时,对EQU定义的符号名用对应的表达式进行“替换”。 例如: NUM EQU 215 MOD 15 ERR_MSG EQU “Data Override ” MESSAGE DB ERR_MSG ;等价于MESSAGE DB “Data Override ” MOV CX, NUM+1 ;等价于MOV CX, 215 MOD 15+1 (4) 数值表达式 数值表达式一般是指由运算符连接的各种常量所构成的表达式 汇编程序在汇编过程中计算表达式,最终得到一个确定的数值,所以也是常量 表达式的数值在程序运行前的汇编阶段计算,所以组成表达式的各部分必须在汇编时就能确定 汇编语言支持多种运算符 例如: mov ax,3*4+5 ;等价于:mov ax,17 构成数值表达式可使用以下几类运算符: 算术运算符 (+,-,*,/,mod) 逻辑运算符 (shl, shr, and, or, xor, not) 关系运算符 (gt, ge, eq, le, lt, ne) 地址运算符 (seg, offset) 类型运算符 (type, length, size) 【例 2?5】数值表达式及其应用 ;汇编语言指令 MOV DH, SHR 2 MOV BL, 8CH AND 73H MOV AH, 8CH OR 73H MOV AX, 10H GT 16 MOV BL, 6 EQ 0110B MOV BX, 32+((13/6)MOD 3) ;汇编后形成的指令 ;MOV DH,19H ;MOV BL,0 ;MOV AH,0FFH ;MOV AX,0 ;MOV BL,0FFH ;MOV BX,0022H MOV AX, BX+2 需要把BX的值与常数2相加并存入AX的操作只能在程序执行阶段由以下两条指令完成: MOV AX, BX ;BX寄存器值存入AX寄存器 ADD AX, 2 ;AX寄存器的值加2,结果存AX √ × 不良用法 二、 变量 变量实质上是指内存单元的数据,虽然内存单元地址不变,但其中存放的数据可以改变 变量需要事先定义才能使用 变量定义伪指令为变量申请以固定长度为单位的存储空间,并可以同时将相应的存储单元初始化 定义后的变量可以利用变量名等方法引用其中的数据,即变量的数值 (1) 变量的定义 变量定义的汇编语言格式为: 变量名 伪指令 初值表 变量名为用户自定义标识符,表示初值表首元素的逻辑地址,常称为符号地址。 初值表是用逗号分隔的参数,主要由常量或“?”组成。其中“?”表示未赋初值 多个存储单元如果初值相同,可以用复制操作符(重复定义符)DUP进行定义: 重复次数 DUP(重复参数) 变量定义伪指令 DB(Define Byte):每个数据占用一个字节(8b) DW(Define Word):每个数据占用一个字(16b) DD(Define Double Word):每个数据占用一个双字(32b) DQ(Define QuartWord):每个数据占用8个字节(64b) DT(Define Ten Byte ):每个数据占用10个字节(80b) 【例 2?3】 变量定义举例 DSEG SEGMENT BVAR DB 1,-2,AB,3 DUP(a),? ;字节变量, 8项 WVAR DW 1,-2,AB,3 DUP(a),? ;字变量,7项 DVAR DD 1,-2,AB,3 DUP(a),? ;双字变量,7项 VAR1 DW WVAR, DVAR, DVAR-WVAR, VAR1-DVAR ;字变量,4项 VAR2 DD WVAR, DVAR, DVAR-WVAR, VAR1-DVAR ;双字变量,4项 VAR3 DB DVAR-WVAR, VAR1-DVAR ;字节变量,2项 DSEG ENDS 有符号数用它的补码存储 字符用ASCII代码存储 DB定义的数据在 [-128~255] 之内 变量名代表首个单元的地址 DW定义的数据在[-32768, 65535]内 出现在参数部分的变量名用这个变量的偏移地址代替 多字节数据的存放: “高高低低”(小端方式) 存储区域分配 (1,-2,AB,3 DUP(a),?) (
您可能关注的文档
- 好电磁铁的应用精要.ppt
- kzgcjc_skja_11解读.ppt
- 好的开始是成功的一半3精要.ppt
- 新第五章-项目成本管理讲述.ppt
- 如东县1#地块安置房项目瓦工招标文件精要.docx
- kummell病解读.pptx
- KVMPDU解读.pptx
- 如何不被淘汰精要.ppt
- L80冷却塔风机使用说明书解读.doc
- 如何为客人提供优质服务精要.ppt
- 2024高考物理一轮复习规范演练7共点力的平衡含解析新人教版.doc
- 高中语文第5课苏轼词两首学案3新人教版必修4.doc
- 2024_2025学年高中英语课时分层作业9Unit3LifeinthefutureSectionⅢⅣ含解析新人教版必修5.doc
- 2024_2025学年新教材高中英语模块素养检测含解析译林版必修第一册.doc
- 2024_2025学年新教材高中英语单元综合检测5含解析外研版选择性必修第一册.doc
- 2024高考政治一轮复习第1单元生活与消费第三课多彩的消费练习含解析新人教版必修1.doc
- 2024_2025学年新教材高中英语WELCOMEUNITSectionⅡReadingandThi.doc
- 2024_2025学年高中历史专题九当今世界政治格局的多极化趋势测评含解析人民版必修1.docx
- 2024高考生物一轮复习第9单元生物与环境第29讲生态系统的结构和功能教案.docx
- 2024_2025学年新教材高中英语UNIT5LANGUAGESAROUNDTHEWORLDSect.doc
文档评论(0)