实验1 初级程序的编写与调试实验
更新时间:2023-09-13 19:20:01 阅读量: 教学研究 文档下载
- 实验1号马铃薯种薯简介推荐度:
- 相关推荐
南昌大学实验报告
学生姓名: 学 号: 专业班级: 实验类型:■ 验证 □ 综合 □ 设计 □ 创新 实验日期: 2015年11月19日 实验成绩:
实验1 初级程序的编写与调试实验(一)
一.实验目的
1.熟悉DEBUG命令;学会DEBUG中的D命令、E命令、R命令、T命令、A命令、G命令等的使用。对于U命令、N命令、W命令等,也应该试用一下;
2.掌握数据在内存中的存放方式和内存操作数的几种寻址方式,段寄存器和物理地址计算;
3.熟悉数据传送指令、算术运算指令、逻辑指令、循环指令的使用。 4.掌握简单的汇编语言程序编写与调试。
二.实验内容
1.内存操作数及各种寻址方式使用; 2.求累加和程序; 3.多字节加法程序; 4.数据串搬家程序;
5.段寄存器概念及字符串传送指令练习。
三.实验要求
1.仔细阅读有关DEBUG命令的内容,对有关命令,要求事先准备好使用的例子; 2.阅读数据传送指令、算术运算指令、逻辑指令、循环指令的使用方法
3.用DEBUG的有关命令调试本实验中的求累加和程序、多字节加法程序、程序段
四.实验环境
PC微机;
DOS操作系统或 Windows 操作系统;
MASM.EXE,LINK.EXE,DEBUG.COM或宏汇编集成环境。
五.实验步骤
1.内存操作数及各种寻址方式使用
MOV AX,1234 MOV [1000],AX MOV BX,1002
MOV BYTE PTR [BX],20 MOV DL,39 INC BX
MOV [BX],DL DEC DL MOV SI,3
MOV [BX+SI],DL MOV [BX+SI+1],DL
MOV WORD PTR[BX+SI+2],2846
步骤:
(1) 用A命令键入上述程序,并用T命令逐条运行。
(2) 每运行一条有关内存操作数的指令,要用D命令检查并记录有关内存单元的内容并注明是什么寻址方式。
注意D命令显示结果中右边的ASCII字符及双字节数存放法。
Mov [1000],ax 直接寻址方式
Mov [bx+si],dl 相对变址寻址方式 Mov [bx+si+1],dl 相对基址变址寻址方式
Mov [bx+si+2],2846 相对基址变址寻址方式
2.求累加和程序:
程序: MOV BX,1000 MOV CX,10 SUB AX,AX LOP: ADD AL,[BX]
ADC AH,0 INC BX J: LOOP LOP
INT 3
步骤:
(1)用A命令将程序键入到100H开始的内存中,在键入时记下标号LOP和J的实际地址,在键入LOOP指令时LOP用实际地址值代替;
(2)用命令N AA 将此程序命名为文件AA(文件名可任取);
(3)用R命令将BX:CX改为程序长度值(即最后一条指令后面的地址减去开始地址; (4)用命令W 100将此程序存到AA命名的磁盘文件中; (5)用命令Q退出DEBUG;
(6)用命令DEBUG AA再次调入DEBUG和文件AA,可用U命令检查调入程序; 若调入DEBUG时忘了加AA文件名,可用N命令和L命令将文件调入; (7)用E命令在内存地址1000H处键入16个数字;
(8)用命令G=100 J(J用实际地址代替),使程序运行并停在断点J上,检查AX,BX的值是否符合你的预计值;
(9)用T命令运行一步,观察程序方向(IP值)和CX值是否与你的估计一样,若不一样,检查程序是否有错;
(10)重复G、J与T,再检查AX是否正确;
(11)用G命令使程序运行到结束,检查AX值是否正确。
3.多字节加法程序
程序:
MOV DI,1000 MOV CX,8 MOV SI,2000 CLC
LOP: MOV AL,[SI]
ADC [DI],AL INC SI INC DI LOOP LOP INT 20
步骤:
(1) 用命令键入此程序
(2) 用E命令在1000H开始处键入一个8字节被加数,在2000H开始处键入一个8字节加数,
均为低字节在前面。4.数据串搬家程序
(1)用A命令键入下列程序:
MOV SI,1000 MOV DI,1500 MOV CX,0FH LOP:MOV AL,[SI]
MOV [DI],AL
INC SI INC DI DEC CX JNZ LOP INT 20
(2)用A命令DB伪指令在1000H键入下列字符串:
‘
IBM_PC
COMPUTER'
(3)用G命令运行此程序,并用D命令检查目的地址处的字符与源串是否一致。
5.自编程序
用16位减法指令编一个32位(4字节)数减法程序,两个源数及结果存放地址同多字节加法程序,调试并做记录。
MOV DI,1000 MOV CX,4 MOV SI,2000 CLC
LOP: MOV AL,[SI] SBB [DI],AL INC SI INC DI
LOOP LOP INT 20
六.实验报告要求
1.各项实验记录,可以用截图或文字进行说明。
2.要求你修改的程序的清单(修改后)和调试记录,源程序请添加适当的注释。 3.自编程序原稿及调试后修正稿,写出原稿错在那里。
七.简答题
1.MOV BYTE PTR[BX],20
MOV WORD PTR[BX+SI+2],2846
上述指令中BYTE PTR及WORD PTR伪操作不加行不行?试一试。 答:不行
2.用G命令运行多字节加法程序,并用D命令检查其结果(存放在哪里?),是否正确? 答:正确。G命令完后,就可以以直接执行D命令,而D命令后接着你所要存放的地址,如:D1200H
3.将多字节加法程序中的INT 20H指令改为INT 3,有何区别?若这条指令不加,行不行?试一试。
答:行。改为int3的话则会停留在dos界面中,没什么区别。比价,也行。
4.数据串搬家程序中的目的地址改为1002H,再运行此程序,看能不能把1000H开始的字符串搬到1002H开始的地方去?修改程序以做到这一点。
5.答:不能,应该放到1015H.
八、实验总结
这次试验让我加强认识了许多指令。而且在些程序进行要注意是16进制。而且写程序的时候要时刻注意每一符号,空格。o与0的区别。学会了许多指令并会运用实际操作
正在阅读:
实验1 初级程序的编写与调试实验09-13
个人小额贷款申请书02-24
关于做好2012届本科毕业生毕业设计(论文)后期工作的通知03-20
【最新2018】中国最新医疗机构药事管理规定-范文模板 (9页)04-25
APOS理论在初中数学概念教学中运用的策略研究--以函数概念为例07-03
MATLAB结合PSPICE在模拟电路故障特征提取中的应用10-03
珠海外贸公司详细联系方式07-24
ABC集中备份项目实施方案 - 图文05-13
- 公务员上岸同学告诉你,怎样走出面试中常见的十大误区
- 作表率,我们怎么办(办公室主任)
- 乘务员安全责任书
- 增员面试流程
- 河南省焦作市规模以上租赁和商务服务业企业应付职工薪酬数据洞察报告2019版
- 最新4社区工作者面试题
- 个人简历表
- 男教工体检必检项目
- 河南省兰考县规模以上租赁和商务服务业企业应付职工薪酬数据洞察报告2019版
- 兼职译员测试稿
- 河南省开封市规模以上租赁和商务服务业企业应付职工薪酬数据洞察报告2019版
- 永州职业技术学院校园总体规划-永州职业学院
- 最新5、培训科长笔试题(答案)
- 2019雅商酒店境外人员登记培训稀有资料,不可错过
- 小学教师求职简历范文
- 红酒知识与礼仪
- 春节给领导拜年的短信拜年词
- 2019年上半年中小学教师资格证结构化面试真题1
- 20XX年县干部培训工作目标
- 硬笔试听课
- 实验
- 调试
- 初级
- 编写
- 程序
- 锡安堂历史--荣教士
- 高考语文(通用版)二轮专题复习天天增分练:(35)病句+语言连贯+图文转换+文言翻译+- 副本 doc
- 湖南省社区综合服务行业企业名录1156家
- 2011年平塘县克度中学考点工作实施方案
- 大学校外实训基地建设方案
- 接触网下部施工技术交底
- 电磁场实验之有限差分法求解金属槽电位问题matlab程序
- 2012年3月月考试卷
- 《教育知识与能力》教育家总结
- 实验七 杀虫剂胃毒作用毒力测定
- 回转窑除尘脱硫方案5.1(1)
- 学校管理案例分析及解决方案
- 校园一卡通行业应用解决方案 - 图文
- 2015内镜室培训试题
- 国家文物局关于八达岭长城设置无障碍升降机方案的批复文物保函%E3%80
- 广东省肇庆市2018届高三第三次模拟文科综合地理试题
- 12014年下期幼儿园中班2教学内容
- (北师大版)小学四年级数学下册第一单元测试题
- 英语求职信范文20篇(汉英对照)
- 医学免疫学重点整理