汇编语言程序设计实验报告(2)

2018-12-19 23:36

Avgproc endp bta proc

push ax ;设置断点观察堆栈值的变化 push bx xor ax,ax

mov al,avg mov bl,10 div bl

add ah,30h ;设置断点观察ax寄存器的值 add al,30h

mov ascavg ,al ; mov ascavg+1,ah lea dx,EnMsg mov ah,09h int 21h

lea dx,ascavg mov ah,09h int 21h pop bx pop ax ret bta endp code ends end start

设置断点观察ascavg存储单元的值 dx寄存器的值 第 4 页

;设置断点观察

9、按照程序的执行过程绘制出程序流程图。

开始 调用09h系统调用功能,输出Msg1的内容到屏幕上 输入学生人数,调用子程序Numproc统计学生的人数 调用09h系统调用功能, 输出Msg2的内容到屏幕上 ,输入学生成绩 调用子程序Avgproc统计学生的平均成绩,结果放在avg中 调用子程序bta对平均成绩的ASCALL码化,输出平均成绩在屏幕上 结束

四、实验结果及其分析

1.第一次按下f5后,程序跳至第零个断点处 DS所指示的数据段:

2.第二次按下f5后,程序跳至第一个断点处 屏幕的输出: 堆栈的变化:

3.第三次按下f5后,程序跳至第七个断点处

第 5 页

al的值: al=5BH

4.第四次按下f5后,程序跳至屏幕,输入学生数目1,然后跳至第八个断点处 al的值: al=00H

5.第五次按下f5后,程序跳至第九个断点处 bl的值:

bl=00H

6.第六次按下f5后,程序跳至第七个断点处 al的值: al=00H 7.第七次按下f5后,程序跳至屏幕输出:

8.按下回车后,程序跳至第二个断点 bl的值: bl=01H 堆栈值的变化:

9.第八次按下f5后,程序跳至第三个断点处 屏幕的输出为:

10.第九次按下f5后,程序跳至第十个断点处 堆栈值的变化:

11.第十次按下f5后,程序跳至第十一个断点处 cl的值: cl=00H

12.第十一次按下f5后,程序跳至第七个断点处 al的值:

al=5BH

13.第十二次按下f5后,程序跳至屏幕,输入学生成绩1,然后跳至第八个断点处 al的值: al=00H

14.第十三次按下f5后,程序跳至第九个断点处 bl的值:

bl=00H

15.第十四次按下f5后,程序跳至第七个断点处 al的值:

al=00H

16.第十五次按下f5后,程序跳至屏幕输出:

按下回车后,程序跳至第十二个断点 avg存储单元的值: avg=00

第 6 页

17.第十六次按下f5后,程序跳至第十三个断点 avg存储单元的值:avg=01

18.第十七次按下f5后,程序跳至第十四个断点

堆栈值的变化:

19.第十八次按下f5后,程序跳至第四个断点 avg存储单元的值:avg=01

20.第十九次按下f5后,程序跳至第五个断点 屏幕的输出为:

21.第二十次按下f5后,程序跳至第十五个断点 堆栈值的变化:

22.第二十一次按下f5后,程序跳至第十六个断点 ax寄存器的值:

23.第二十二次按下f5后,程序跳至第十七个断点 ascavg存储单元的值: ascavg=00

24.第二十三次按下f5后,程序跳至第十八个断点

dx寄存器的值:

25.第二十四次按下f5后,程序跳至第六个断点

第 7 页

ascavg存储单元的值:ascavg=30

屏幕

的输出为:

26.第二十五次按下f5后,程序跳至初始状态

五、结论

通过本次实验,学会了汇编语言开发工具的基本功能及基本使用方法及工程的建立、程序的调试等等。

第 8 页


汇编语言程序设计实验报告(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:08-09学年高一上学期期末试题(物理1)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: