2022年2022年汇编语言实验报告模块化程序设计 .pdf
《2022年2022年汇编语言实验报告模块化程序设计 .pdf》由会员分享,可在线阅读,更多相关《2022年2022年汇编语言实验报告模块化程序设计 .pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、汇 编 语 言 实 验 报 告Assembly Language Programming Lab Reports_ 班级:姓名:学号:实验日期:学院:专业:实验顺序:原创:_ 实验名称:模块化程序设计实验分数:_ 考评日期:_ 指导教师:_ 一实验目的1、掌握宏定义的相关内容。(1)伪指令:MACRO,ENDM。(2)掌握宏定义时的哑元,变元,&分割符的使用。变元可以是操作数,操作码,操作码的一部分和&联合使用,存储单元,字符串。(3)掌握宏调用时的实元和宏的展开。2.掌握宏运算(1)&替换运算符(2)传递运算符(3)!转义运算符号(4)%表达式运算符(5);宏注释符3、其它宏功能(1)宏标号
2、 LOCAL(2)宏删除 purge(3)宏嵌套,宏展开中的数字1代表插入的程序是宏定义实体中的。宏嵌套在展开时里层被嵌套调用的宏会显示嵌套调用的层次,待验证。(4)宏库的建立和调用4、结构伪操作(1)结构定义结构名 STRUG 结构体结构名 ENDS(2)结构预置(3)结构引用5、重复汇编和条件汇编。6、多模块结构程序设计(1)全局符号定义 PUBLIC 名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 11 页 -(2)外部符号说明 EXTRN(3)段属性与段组合(4)参数传递7、宏指令和子程序的区别(1)工作方式的区别,在多次调用时,使用宏指令占用较大空间但速度较快。使用子程
3、序占用空间小但执行时间长。(2)参数传递的方便性。(3)参数的多样性和灵活性,宏指令的实参数可以是常数,寄存器,内存变量,操作码或操作码的一部分,操作数的一部分等,子程序是不可以比拟的。鉴于以上区别,编程时应该扬长避短地使用宏指令和子程序,通常宏指令被用在代码较短且参数较多的场合,子程序被用在代码较长的场合。8、模块连接(1)外部引用与全局符号说明(2)使用公用数据段实现通信过程段定义伪指令在定义组合类型时定义为COMMON类型,这样在连接时会把多个程序的同名数据段连接时重叠形成一个段,产生段覆盖。允许各模块使用不同的变量名,但是主模块和子模块的数据在定义这些变量上应当有对应的结构。(3)使用
4、寄存器或者堆栈实现过程通信。_二实验环境操作系统:windows 8 编译程序:masm 5.0 _三实验原理1、宏库的建立和调用2、多模块结构程序设计_四实验步骤及结果分析1、宏库的建立和调用宏库的建立:;8-1.mac input macro mov ah,01h int 21h endm output macro x mov dl,x 名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 11 页 -mov ah,02h int 21h endm retsys macro mov ah,4ch int 21h endm addi macro x1,x2,result mov ax
5、,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,dat
6、a mov ds,ax str_mov 10,mess1,mess2 名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 11 页 -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 5/23/15 10:51:45 Page 1-1 include 8-1.mac C input macro C mov ah,01h C int 21h C endm C C output mac
7、ro x C mov dl,x C mov ah,02h C int 21h C endm C C retsys macro C mov ah,4ch C int 21h C endm C C addi macro x1,x2,result C mov ax,x1 C add ax,x2 C mov result,ax C endm C C str_mov macro opr1,opr2,opr3 名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共 11 页 -C mov cx,opr1 C lea si,opr2 C lea di,opr3 C cld C rep movsb C
8、endm .model small 0100.stack 100h 0000 data segment 0000 33 34 x db 33h,34h 0002?y dw?0004 01 02 03 04 05 06 07 mess1 db 1,2,3,4,5,6,7,8,9,0 08 09 00 000E 000A mess2 db 10 dup(?)?0018 data ends 0000 code segment assume cs:code,ds:data 0000 start:0000 B8-R mov ax,data 0003 8E D8 mov ds,ax str_mov 10,
9、mess1,mess2 0005 B9 000A 1 mov cx,10 0008 8D 36 0004 R 1 lea si,mess1 000C 8D 3E 000E R 1 lea di,mess2 0010 FC 1 cld 0011 F3/A4 1 rep movsb Microsoft(R)Macro Assembler Version 5.00 5/23/15 10:51:45 Page 1-2 str_mov 2,x,y 0013 B9 0002 1 mov cx,2 0016 8D 36 0000 R 1 lea si,x 名师资料总结-精品资料欢迎下载-名师精心整理-第 5
10、 页,共 11 页 -001A 8D 3E 0002 R 1 lea di,y 001E FC 1 cld 001F F3/A4 1 rep movsb input 0021 B4 01 1 mov ah,01h 0023 CD 21 1 int 21h 0025 2C 20 sub al,20h output al 0027 8A D0 1 mov dl,al 0029 B4 02 1 mov ah,02h 002B CD 21 1 int 21h addi 34,25,y 002D B8 0022 1 mov ax,34 0030 05 0019 1 add ax,25 0033 A3 0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年2022年汇编语言实验报告模块化程序设计 2022 汇编语言 实验 报告 模块化 程序设计
限制150内