哈工程微机原理4-1.pptVIP

  • 16
  • 0
  • 约1.07万字
  • 约 63页
  • 2019-10-20 发布于湖北
  • 举报
4.3.6 模块定义与连接伪指令 1.模块定义伪指令 格式:NAME 标识符 ┇ END 启动标号 2.模块连接伪指令 (1)全局符号伪指令 格式:PUBLIC 符号名1,符号名2,… (2)引用伪指令 格式:EXTRN 符号名1:类型,符号名2:类型,… 了解 4.3.7 宏命令伪指令 1.宏定义 格式 宏名 MACRO [形式参数,…] ┇(宏体) ENDM 4.3.7 宏命令伪指令 例4-18 用宏指令定义两个字节数相加,结果存入RESULT单元的操作。 ADDM MACRO OPR1,OPR2,RESULT MOV AL,OPR1 ADD AL,OPR2 MOV RESULT,AL ENDM 2.宏调用 例4-19将例4-18中的宏定义进行宏调用、宏展开操作如下: ADDM 88,36,SUM ┇ ADDM BR,TAB,SUM 3.宏展开: ┇ + MOV AL,88 + ADD AL,36 + MOV SUM,AL ┇ + MOV AL,BR + ADD AL,TAB + MOV SUM,AL 4.宏的取消 PURGE 4.3.8 其它伪指令 1.定位伪指令 格式: ORG 表达式 功能 :将表达式的值赋给当前位置计数器 例4-20 伪指令ORG和当前位置计数器值符号$的应用 DATA SEGMENT ORG 30H DB1 DB 12H,34H ORG $ +20H STRING DB ‘STRING’ ┇ DATA ENDS 4.3.8 其它伪指令 2.方式选择伪指令 ·8086 ;汇编程序只接受8086/8088的指令,这是默认方式 ·286 ;汇编程序接受8086/8088及286的指令 ·286P ;除与·286功能相同之外,汇编程序还接受286保护方式下的指令 ·386 ,·386P ,·486 ,·486P含义类推, ·586 ;汇编程序接受8086/8088、286、386、486及586的指令 ·586P ;除与·586功能相同之外,汇编程序还接受586保护方式下的指令 3.简化的段定义伪指令 · DOSSEG ;标记简化段,各段顺序由系统安排,用于主模块前面 ·MODEL SMALL;指明内存使用模式,指示数据与代码允许使用的长度 ·DATA ;定义数据段,隐含段名为@DATA ·STACK[长度] ;定义堆栈段,隐含段名为@STACK,并形成SS及SP初值 ·CODE[名字] ;定义代码段,隐含段名为@CODE ·END ;汇编结束 4.4 汇编语言程序的开发过程 编辑 文本编辑器,如 EDIT.COM 源程序:文件名.asm 汇编 汇编程序,如 MASM.EXE 目标模块:文件名.obj 连接 连接程序,如 LINK.EXE 可执行文件:文件名.exe 调试 调试程序,如 DEBUG.EXE 或返回源程序修改 应用程序 错误 错误 错误 错误 开发过程1:源程序的编辑 源程序文件要以ASM为扩展名 源程序文件的形成(编辑)可以通过任何一个文本编辑器实现: DOS中的全屏幕文本编辑器EDIT 其他程序开发工具中的编辑环境 MASM程序员工作平台PWB中的编辑环境 EDIT t81501.asm 开发过程2:源程序的汇编 汇编是将源程序翻译成由机器代码组成的目标模块文件的过程 MASM 提供的汇编程序是MASM.EXE: MASM t81501.asm ↙ 如果源程序中没有语法错误,MASM将自动生成一个目标模块文件(t81501.obj);否则MASM将给出相应的错误信息 这时应根据错误信息,重新编辑修改源程序后,再进行汇编 开发过程3:目标模块的连接 连接程序能把一个或多个目标文件和库文件合成一个可执行程序(.EXE、.COM文件): LINK t81501.obj 如果没有严重错误,LINK将生成一个可执行文件(t81501.exe);否则将提示相应的错误信息 这时需要根据错误信息重新修改源程序后再汇编、链接,直到生

文档评论(0)

1亿VIP精品文档

相关文档