合肥工业大学程序设计实验报告完整代码.pdf
文本预览下载声明
合肥工业大学
计算机与信息学院
实验报告
课 程:汇编语言程序设计
专业班级:信息安全 13-1
学 号: 2013211869
姓 名:马骏
实验一 Debug程序的使用
一 . 实验目的
1、熟悉 DEBUG 程序中的命令,学会在 DEBUG 下调试运行汇编语言源程序。
2、掌握 8086/8088 的寻址方式及多字节数据的处理方法。
二 . 实验内容
1、利用 DEBUG 程序中的“ E ”命令,将两个多字节数“ 003F1AE7H ”和
“006BE5C4H”分别送入起始地址为 DS:0200H 和 DS:0204H 两个单元中。
2、分别用直接寻址方式和寄存器间接寻址方式编写程序段,实现将 DS:0200H
单元和 DS:0204H 单元中的数据相加,并将运算结果存放在 DS:0208H 单元中。
要求:
本次实验的内容均在 DEBUG 下完成,实现数据的装入、修改、显示;汇编
语言程序段的编辑、汇编和反汇编;程序的运行和结果检查。
三 . 实验过程和程序
实验将 ”和 ”FEDCBA98H”分别送入起始地址为 DS:200H 和 DS:204H
的两个单元中。还包含两个附加题,一是从 DS:0000H 开始的 5 个 16 位带符
号 数 分 别 记 为 x,y,z,v,w , E 命 令 初 始 化 为 : 540,1,-1,1080,0, 试 求
w=(v-(x*y+z-540))/x ,二是统计 bx 中 1 的个数
四. 实验结果(包括必要的截图)
将两个多字节数 “003F1AE7H ”和 “006BE5C4H”分别送入起始地址为 DS:0200H
和 DS:0204H 两个单元中。
直接寻址方式实现数据相加
寄存器间接寻址实现数据相加
附加题一:
从 DS:0000H 开始的 5 个 16 位带符号数分别记为 x,y,z,v,w ,用 E 命令初
始化为: 540,1,-1,1080,0, 试求 w=(v-(x*y+z-540))/x
附加题二:完成 BX 中 1 的个数的统计。
五 . 实验体会
通过本次实验, 了解了使用 debug 的各种指令。 同时在 debug下进行编
程,比较麻烦。由于是第一次编写汇编程序,还是需要多练习。
实验二 汇编语言程序设计 (顺序、循环 )
一 . 实验目的
1、掌握顺序和循环程序结构和设计方法;
2、熟悉在 PC 机上建立、汇编、连接、调试和运行 8086/8088 汇编语言程序的过程。
二 . 实验内容
1、X 、Y 、Z 、V 均为字变量,在 X 、Y 、Z 、V 字单元中存放是 16 位带符号数。
试编写汇编语言程序完成以下功能:
①计算表达式值( V –(X*Y+Z-720 ))/X ;
②将上述表达式运算结果整数放在 SUM1 单元,余数放在 SUM2 单元。
2、求一个班 50 名学生成绩的平均值(附加题:最大值和最小值 ,并将结果显示
出来)
3、从键盘读入一个字符串,以 Enter 结束,字符串不超过 50 个字符,并打印
该字符串 (附加题:查找中间是否有‘ asm’子串。如果有
显示全部