汇编语言实验归纳总结报告模块化程序设计内容.docVIP

汇编语言实验归纳总结报告模块化程序设计内容.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
汇 编 语 言 实 验 报 告 Assembly Language Programming Lab?Reports ______________________________________________________________________________ 班级:姓名: 学号: 实验日期: 学院: 专业: 实验顺序: 原创:___ 实验名称:模块化程序设计 实验分数:_______ 考评日期:________ 指导教师: ______________________________________________________________________________ 实验目的 掌握宏定义的相关内容。 伪指令: MACRO,ENDM。 掌握宏定义时的哑元,变元,分割符的使用。变元可以是操作数,操作码,操作码的一部分和联合使用,存储单元,字符串。 掌握宏调用时的实元和宏的展开。 掌握宏运算 替换运算符 传递运算符 !转义运算符号 %表达式运算符 ;;宏注释符 其它宏功能 宏标号LOCAL 宏删除purge 宏嵌套,宏展开中的数字1代表插入的程序是宏定义实体中的。宏嵌套在展开时里层被嵌套调用的宏会显示嵌套调用的层次,待验证。 宏库的建立和调用 结构伪操作 结构定义 结构名 STRUG 结构体 结构名 ENDS 结构预置 结构引用 5、重复汇编和条件汇编。 多模块结构程序设计 (1)全局符号定义PUBLIC (2)外部符号说明EXTRN (3)段属性与段组合 (4)参数传递 7、宏指令和子程序的区别 (1)工作方式的区别,在多次调用时,使用宏指令占用较大空间但速度较快。使用子程序占用空间小但执行时间长。 (2)参数传递的方便性。 (3)参数的多样性和灵活性,宏指令的实参数可以是常数,寄存器,内存变量,操作码或操作码的一部分,操作数的一部分等,子程序是不可以比拟的。 鉴于以上区别,编程时应该扬长避短地使用宏指令和子程序,通常宏指令被用在代码较短且参数较多的场合,子程序被用在代码较长的场合。 模块连接 外部引用与全局符号说明 使用公用数据段实现通信过程 段定义伪指令在定义组合类型时定义为COMMON类型,这样在连接时会把多个程序的同名数据段连接时重叠形成一个段,产生段覆盖。允许各模块使用不同的变量名,但是主模块和子模块的数据在定义这些变量上应当有对应的结构。 使用寄存器或者堆栈实现过程通信。 ______________________________________________________________________________ 实验环境 操作系统:windows 8 编译程序:masm 5.0 ______________________________________________________________________________ 实验原理 1、宏库的建立和调用 2、多模块结构程序设计 _______________________________________________________________________ 实验步骤及结果分析 宏库的建立和调用 宏库的建立: ;8-1.mac input macro mov ah,01h int 21h endm output macro x mov dl,x mov ah,02h int 21h endm retsys macro mov ah,4ch int 21h endm addi macro x1,x2,result mov ax,x1 add ax,x2 mov result,ax endm str_mov macro opr1,opr2,opr3 mov cx,opr1 lea si,opr2 lea di,opr3 cld rep movsb Endm 主程序: include 8-1.mac .model small .stack 100h data segment x db 33h,34h y dw ? mess1 db 1,2,3,4,5,6,7,8,9,0 mess2 db 10 dup(?) data ends code segment assume cs:code,ds:data start: mov ax,data mov ds,ax str_mov 10,mess1,mess2 str_mov 2,x,y input sub al,20h output al addi 34,25,y retsys code ends end start LST文件: Microsoft (R) Macro Assembler Version 5.00

文档评论(0)

勤劳的小厮 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档