资源描述
汇编语言程序上机实验报告(实验一下)一、 实验题目、内容及要求题目:多字节加法内容:1、熟悉DEBUG的常用命令2、按实验教材中“实验一”给出语句,在debug环境下输入指令并单步执行,观察执行结果。3、debug下编程,完成两个32位数的加法运算。这两个数从地址10050H(物理地址)开始连续存放,结果放在其后。假设这两个数分别为12345678H和2468ACE0H要求:实验前要做好充分准备,包括程序清单、调试步骤、调试方法、对程序结果的分析等。实验过程要注意观察标志位的变化。本实验要求在debug状态下进行。二、实验时间及地点日期:4.16 节次:7,8 地点:三、实验目的通过本实验掌握各种寻址方式和算数类指令对标志位的影响。理解所学指令的功能,熟悉debug的调试命令。掌握多字节运算的方法。四、简述在实验过程中遇到的问题和解决的方法在实验中,刚开始对数据在内存中存放顺序、段地址和偏移地址概念理解不清,所以导致在实验开始时,不能有效地将数据存放到内存中。通过多次反复实验和同学讨论,一步步解决了所有问题。比如原来程序中指针调整使用的是add si,2 add bx,2 add di,2 指令,使用运行结果不正确,经过分析知道加法指令add影响标识位,破坏了低位相加时产生的进位,所以高位相加时使用了相对寻址方式。当然还可以有其他的方法完成,程序设计是不唯一的。数据12345678的低位修改物理地址为10050单元的内容A命令输入程序数据段地址偏移地址偏 运行结果:程序的结束地址程序的运行结果两个数相加用MASM工具完成四字节的加法:结果分析及实验体会通过反复实验,输入了两组数据均得到了正确结果。通过编写一个简短的汇编语言程序,最终得到了正确的实验结果。以上所写的程序不是唯一的,还可以有多种方法完成该实验,比如,由于两个数相加和结果是连续存放的,程序中可以只设置一个指针,采用相对寻址也可以完成该实验。总之,通过本次实验,基本掌握对多字节的运算。对显示存储单元的d命令,修改内存单元e命令,检查和修改寄存器内容的r命令,运行g命令,跟踪d命令,汇编a命令和反汇编u命令已经能够熟练运用。 4 / 4文档可自由编辑打印
展开阅读全文