辽宁工程技术大学硬件基础上机实验2

辽宁工程技术大学硬件基础上机实验2

ID:22505182

大小:126.44 KB

页数:9页

时间:2018-10-29

辽宁工程技术大学硬件基础上机实验2_第1页
辽宁工程技术大学硬件基础上机实验2_第2页
辽宁工程技术大学硬件基础上机实验2_第3页
辽宁工程技术大学硬件基础上机实验2_第4页
辽宁工程技术大学硬件基础上机实验2_第5页
资源描述:

《辽宁工程技术大学硬件基础上机实验2》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、辽宁工程技木大学上机实验报告成绩课程名称计算机硬件基础实验题目综合程序设计(二)院系软件学院专业软件工程班级软件12-5姓名验的实01234王义武学号1220010518实验日期2014.11.14熟练掌握子程序的结构。掌握子程序设计的思想、方法及上机调试过程。熟练掌握系统功能调用的作用。掌握系统功能调用的思想、方法。1.8086/8088汇编语言指令及伪指令的用法2.子程序设计的思想和方法(1)子程序是功能相对独立的程序段,它可以实现源程序的模块化,简化源程序结构,提高编程效率(2)子程序定义:利用过程伪指令P

2、R0C和EXDP,格式如下:过程名PROC[NEAR

3、FAR]……;过程体实验准备过程名EXDP其中:可选的参数指定过程的调用属性。没有指定过程属性,则采用默认属性NEAR。NEAR属性:段内近调用,子程序只能被相同代码段的其他程序调用FAR属性:段间远调用,子程序可以被相同或不同代码段的程序调用(3)主程序(调用程序)调用子程序(被调用程序):利用CALL指令(4)子程序返回主程序:利用RET指令(1)保护现场:子程序开始处应该保护子程序中使用的寄存器(通常利用堆栈),子程序返回前相应进行恢复。(2)子程序中对

4、堆栈的压入和弹出操作通常成对使用,以保持堆栈的平衡。(3)子程序允许嵌套和递归(4)处理好子程序与主程序之间的参数传递问题:利用寄存器、内存缓冲本次共有2个练:>J,完成2个。【练习1】编写主程序调用一个过程,实现将两个非压缩BCD码转换为一个压缩BCD码,并用字符显示功能和字符串显示功能完成在屏幕上显示一个字符串“HelloWorld!”的功能。(1)实现方法数据段中定义2个十六进制数据,一个八进制数,分别为01H、10H,result,定义了字符串str,值为‘Helloworld!(2)程序代码dsegse

5、gmentdldb06h,01hresultdb?strdb’HelloWorld!•,’$'countequ$-str-ldsegendscsegsegmentassumecs:cseg,ds:dsegstart:movax,dsegmovds,axcallproclmovah,4chint21h实验内容(续)proclprocnearcallproc2callproc3retproclendpproc2procnearmoval,dlmovbl,dl+lmovcl,4shlbl,claddal,blmovre

6、sult,alretproc2endpproc3procnearleadx,strmovah,O9hint21hretproc3endpcsegendsendstart【练习2】(1)在

7、Aj存建立一个表TABLE,其屮存放20个字节型无符号数,从键盘输入一个数X(—位数),査找该数X在TABLE中是否存在,若存在,则在RESULT单元存入1,否则存入-1。(2)实现方法数据段中定义20个16进制数据,分别为Olh,02h,03h,04h,05h,06h,07h,08h,09h,Oah,Obh,Och,Odh,O

8、eh,Ofh,10h,1lh,12h,12h,14h待存入结果,定义了字符串str代表输入的数据(2)程序代码dsegsegmentTabledb01h,02h,03h,04h,05h,06h,07h,08h,09h,0ah,0bh,0ch,0dh,0eh,0fh,1Oh,11h,12h,13h,14hresultdb?strdb’pleaseputinanumber•,’$’dsegendscsegsegmentassumecs:cseg,ds:dsegstart:movax,dsegmovds,axcallp

9、roclmovah,4chint21hproclprocmovdx,offsetstrmovah,09hint21hmovah,01hint21hcmpal,Wjnslljmpandl11:addal,09hjmpandlandl:andal,Ofhmovsi,offsettablemovex,20tab:movbljsilempal,bljzlabel1incsilooptabmovresult,-Idjmpexitlabel1:movresult,Idjmpexitexit:retproclendpcsege

10、ndsendstart实验分析实验分析(续)【练习1】(1)该源程序取名1.ASM,通过汇编、连接后生成可执行文件1.EXE,运行该文件显示的内容如下:G:masm5>debugl.exeHelloWorld!Programterminatednormally(2)调试方法和运行结果利用Ll命令查找数据段基址L457:0000B85614MOVAX,1456逻辑移动命令

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。