如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
实验二显示程序实验1.1实验目的(1)掌握在PC机上以十六进制形式显示数据的方法。(2)掌握部分DOS功能调用使用方法。(3)熟悉集成软件调试环境。1.2实验设备及软件环境通用微型计算机一台。软件环境要求:操作系统:DOS、Windowsxp语言环境:Debug调试程序、MASM宏汇编。1.3实验内容(1)一般来说,有很多程序需要显示输出提示运行的状况和结果,有的还需要将数据区中的内容显示在屏幕上,本实验要求将指定数据区的字符以十六进制数形式显示在屏幕上,并通过DOS功能调用完成一些提示信息的显示。实验中可使用DOS功能用(INT21H)。本实验显示第一行“Showaashex:”,第二行“ⅹⅹ”,ⅹⅹ是字符“a”的十进制数(61)。1.4实验步骤(1)运行汇编语言编辑软件,选择编辑Edit菜单,根据实验内容的描述编写实验程序或选择Open菜单打开程序。(2)使用“ASM编绎”菜单中“编译+连接+运行”选项,对实验程序进行汇编、连接。汇编、连接无误的话,就直接运行程序。观察运行结果。(3)或使用动态调试,进行调试环境,观察调试过程中,指令执行情况,包括各寄存器及数据区内容的变化等。(4)更改数据区中的数据,考察程序的正确性。1.5实验程序流程图绘制实验程序流程图。1.6实验源程序设计SSEGSEGMENTPARASTACK'stack'dw100hdup(0);初始化堆栈大小为100SSEGENDSDSEGSEGMENTmesdb'showaashex:',0ah,0dh,'$'sddb'a';数据段:在此处添加程序所需的数据DSEGENDS;ESEGSEGMENT;附加段:在此处添加程序所需的数据;ESEGENDSCSEGSEGMENTassumecs:CSEG,ds:DSEG,ss:SSEGMAINPROCFAR;主程序入口movax,dsegmovds,ax;movax,eseg;moves,axmovdx,offsetmesmovah,09hint21hmovsi,offsetsdmoval,ds:[si]andal,0f0hshral,4cmpal,0ahjbc2addal,07hc2:addal,30hmovdl,almovah,02hint21hmoval,ds:[si]andal,0fhcmpal,0ahjbc3addal,07hc3:addal,30hmovdl,almovah,02hint21hstarto:movah,06hmovdl,0ffhint21hjestarto;此处添加主程序代码;按任意键退出movah,1int21hmovax,4c00h;程序结束,返回到操作系统系统int21hMAINENDPCSEGENDSENDMAIN1.7实验思考题在CRT上连续显示0-9数字100遍后返回DOS。为了使输出的字符之间有间隔,在每一循环中输出一个空格和一个数字,并插入一段延时程序。为了显示十进制数字,在增量指令后用DAA十进制调制指令。当DL中放入0DH即回车符进行02号DOS功能调用时,执行回车命令,显示屏上光标回原处。程序如下:1.8实验总结总结实验过程遇到的问题及采取的解决方法。上交实验报告。