汇编顺序程序设计

汇编顺序程序设计

ID:1249619

大小:243.50 KB

页数:15页

时间:2017-11-09

汇编顺序程序设计_第1页
汇编顺序程序设计_第2页
汇编顺序程序设计_第3页
汇编顺序程序设计_第4页
汇编顺序程序设计_第5页
资源描述:

《汇编顺序程序设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验顺序程序设计实验内容1.在BUF和BUF+1、BUF+2单元分别放有一个有符号字节型数,编程序将其中最小数存入MIN单元中。2.输入字符的判别。要求:从键盘输入字符,若是0~9,则直接显示。若是A~Z或a~z,则均显示‘*’。若是其它字符则不显示,继续等待新的字符输入。用回车键结束程序。3.统计学生成绩要求:在数据段定义10个学生成绩。统计不及格、及格、中等,良好,优秀,满分的学生人数。统计结果分别存于自己定义各内存单元。一、实验目的熟悉运算类指令对标志位的状态影响以及标志位状态的表示方法1.掌握条件

2、转移、无条件转移指令的使用方法2.掌握分支结构程序设计、编写、调试和运行的方法二、实验源代码第一个实验两种方法(1)DatasegmentData1db05bhData2db63hDataendsCodesegment‘code’Assumecs:code,ds:dataStart:Movax,data1Movds,axMoval,data1Movbl,data2Movdata1,blMovdata2,alMovah,4chInt21hCodeendsEndstartdsegsegmentdata1db9

3、6,67,85,90,56,73,100,88,52,79Adb0Bdb0Pdb0Edb0Fdb0Gdb0dsegendscsegsegment'code'assumecs:cseg,ds:dsegstart:movax,dsegmovds,axleasi,data1movcx,10gxj:movax,[si]cmpal,60jbgxj1cmpal,70jbgxj2cmpal,80jbgxj3cmpal,90jbgxj4cmpal,100jbgxj5cmpal,100jegxj6gxj1:incGincs

4、iloopgxjjmpgxj7gxj2:incFincsiloopgxjjmpgxj7gxj3:incEincsiloopgxjjmpgxj7gxj4:incPincsiloopgxjjmpgxj7gxj5:incBincsiloopgxjjmpgxj7gxj6:incAincsiloopgxjjmpgxj7gxj7:movah,4chint21hcsegendsendstart方法二DatasegmentData1db05bhDataendsExtrasegmentData2db63hExtraends

5、Codesegment‘code’Assumecs:code,ds:data,es:extraStart:start:movax,ssegmovss,axmovsp,sizestkmovah,1int21hcmpal,0dhjezwf1cmpal,30hjbzwf2cmpal,39hjbzwf3cmpal,41hjbzwf2cmpal,5ahMovax,data1Movds,axMoves,axMoval,data1Movbl,es:data2Xchgal,blMovdata1,alMoves:data2

6、,blMovah,4chInt21hCodeendsEndstart实验二DatasegmentXdb6Ydb?DataendsCodesegment‘code’Assumecs:code,ds:dataStart:Movax,dataMovds,axMoval,10MulxMovy,alMovah,4chInt21hCodeendsEndstart三、实验总结对于第一个实验的第一种方法:这个实验主要是实现两个数据的交换,在编写的时候我并没有用xchg而是采用最常用的MOV指令,只是两个数据的交换。发现用

7、一个中间转量是不行的,立即数与立即数是不能直接传送的,所以我采用了两个中间转换量!进而实现了交换。对于第一个实验第二种方法:这个实验也是主要实现转换,只是和上个不同的是这个是数据段与附加段数据的转换,在转换过程中我用了xchg直接进行转换,可能是第一次上机编写不太熟练,很多地方出现了错误,例如标点的使用,对xchg的使用需要注意的方面不是很熟悉,例如不能同为存储器操作数,段寄存器不能作为操作数。还有对这个程序的编写虽然知道个大概,但是细细写来还是很多地方不会。在观察程序在内存中的变化时,有时候忘记了修改段

8、寄存器的数据,导致整个程序都执行完了。我还没有看到有什么变化,所以以后在执行前一定要记得修改段寄存器的地址先找到存放数据的地方才能观察到!第二个实验:这个实验主要实现Y=10X这个函数,在编译的时候我把10赋给了AL,把要进行计算的数赋给了X,然后再使用函数MULX,进而实现了函数的计算,在这个实验中主要遇到了一些细节问题,比如在进行输入代码的时候符号及一些很小的地方出现了问题,可能是由于刚开始接触汇编语言的语言吧,感觉它不如

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

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

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