微机原理及应用第四章宏汇编.doc

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

第四章 MASM-86宏汇编语言程序 【基本概念】 语言特点 机器语言: 机器码表示, 例如B8H, C3H (天书) 汇编语言: 用助记符表示机器码, 例机器码B8H, C3H的助记符为MOV AX, BX, CPU不同,机器码不同, 助记符不同, (难学) 高级语言: 语言规范, 可用于不同的CPU (常用) 语言优化 1. 汇编语言: 时间, 空间均优化 但源程序复杂 2. 高级语言: 时间, 空间均较差 但源程序简单 语言到机器码过程 1: 机器语言 —— 直译 —— 2: 汇编语言 —— 汇编, 连接 —— 机器码 3: 高级语言 —— 编译, 连接 —— 程序开发过程 1. 源程序的编辑 产生源文件 如 *.ASM 2. 目标程序的汇编( 编译) 产生目标文件 如 *.OBJ 3. 执行程序的连接 产生执行程序文件 如 *.EXE 汇编程序的设计过程 编辑: 用EDIT.COM软件设计源程序文件*.ASM 汇编: 用MASM.EXE软件对*.ASM文件进行汇编, 产生目标文件 *.OBJ 连接: 用LINK.EXE软件对*.OBJ文件集合进行连接, 产生执行文件 *.EXE §4.1汇编语言与汇编程序 一: 汇编语言(汇编源程序) 1: 用指令助记符表示机器码 2: 用符号地址表示存储器地址 3: 用伪指令管理源程序 二: 汇编程序 1: 用MASM.EXE 对 *.ASM源程序进行汇编 2: 汇编产生文件 A: *.OBJ 浮动地址目标文件, 为连接作准备 B: *.LST 指令, 机器码列表文件 1): 代码段 指令 —— 机器码 伪指令 —— 无机器码 2): 数据段 符号地址 —— 段内地址量 3: 汇编程序例 A: 147页图4-3为用编辑软件编写的MASM-86汇编源程 B: 145页图4-2为用汇编软件MASM.EXE汇编产生的列表文件 1): 数据段列表的特点——数据类型与存储空间分配 2): 代码段列表的特点——指令语句与伪指令语句 3): 符号地址与浮动地址 §4.2 基本语法规范 一: 字符集 1: 字母A ~ Z 或a ~ z 汇编源程序中, 大小写字符功能一样 2: 数字1 ~ 9 3: 特殊符号 二: 保留字 1: 寄存器名 例AX, SP 2: 标志符 例CF, TF 3: 指令助记符 例MOV, ADD 4: 伪指令符 例SEGMENT, END 5: 运算符 例OFFSET, PTR 三: 标识符(标号, 变量名) 1: 标识符的使用 A: 符合字符集要求, 不使用保留字 B: 长度小于32个字符, 第一个符号最好用字母 2: 标识符的作用 A: 段名定义 B: 过程名, 结构名, 宏名等定义 C: 数据段符号地址(地址变量名)定义 注: 地址变量具有段, 偏移量, 数据类型三种属性 3: 标识符的使用特点 A: 数据段的使用特点 地址变量具有存储地址和数据类型的特征 B: 代码段的使用特点 1): 伪指令前的标号定义, 标号 2): 指令前的标号定义, 标号: C: 标识符与常量 1): MOV AL, F8H 从符号地址F8H中取字节数据赋给AL, 即(AL) = [F8H] 2): MOV AL, 0F8H 常量F8H赋给AL, 即(AL) = F8H 4: 语句 A: 指令语句 —— 可译为机器码 B: 伪指令语句 —— 仅管理用 C: 宏指令语句 —— 宏代替, 省时不省空 注: 过程调用为省空不省时 5: 注释 在语句的尾部加 ;( 分号) 可写语句功能说明 §4.3 表达式及运算符 一: 表达式 操作数段含有运算符就构成表达式 1: 数值表达式 MOV AX, 2000H +2 等于 MOV AX, 2002H 2: 地址表达式 MOV AX, [2000H + 2] 等于 MOV AX, [2002H] MOV AX, BUFF + 3 BUFF为符号地址, 从BUFF + 3地址单元取字数据给AX 注: MOV AX, [BX +2] 不是地址表达式, 而是寻址方式, 可写为MOV AX, 2[BX] 二: 运算符(151页表4-1) 1: 算术运算符 A: 数值表达式中可用所有算术运

文档评论(0)

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

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

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档