《西安交通大学-汇编语言-实验报告(共15页).docx》由会员分享,可在线阅读,更多相关《西安交通大学-汇编语言-实验报告(共15页).docx(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上汇编语言实验报告计算机xx班 21x0505xxx xx2015年6月2日80X86汇编语言程序设计课内实验报告班级计算机xx实验时间2015姓名xx学号21x0505xxx实验内容概述实验一 熟悉汇编语言的实验环境 实验二 数据段中已定义了一个有 n 个字数据的数组 M,试编写一程序求出 M 中绝对值最大的数,把它放在数据段的 M+2n 单元中,并将该数的偏移地址存 放在 M+2(n+1)单元中。 实验三 设计一程序,接收从键盘输入的数字(15),并对每个数字的输入次数进行计数,计数结果存放在以 COUNT 为首地址的数组中。(最好能将计数结果打印出来)。实验四 子
2、程序及 DOS/BIOS 调用程序设计题6.9设有10 个学生的成绩分别是76,69,84,90,73,88,99,63,100 和80 分。 试编制一个子程序统计6069 分,7079 分,8089 分,9099 分和100 分的人数并分别存放到S6, S7, S8, S9 和S10 单元中。实验五 高级汇编语言技术题7.11试编写一段程序,完成以下功能:若给定名为X 的字符串长度大于5 时,下列指令将汇编10 次。ADD AX, AX(要求:使用条件汇编,编译过程中生成LST 文件,查看宏展开情况)实验六 输入输出程序设计编写程序,使类型1CH 的中断向量指向中断处理程序COUNT,COU
3、NT 统计1CH 中断次数并存入单元M 中。实验七 BIOS 和DOS 中断题9.2编写一个程序,接收从键盘输入的10 个十进制数字,输入回车符则停止输入,然后将这些数字加密后(用XLAT 指令变换)存入内存缓冲区BUFFER。加密表为:输入数字: 0,1,2,3,4,5,6,7,8,9密码数字: 7,5,9,1,3,6,8,0,2,4实验步骤第一题1熟悉汇编语言的实验环境,了解各项功能的调用。 2熟悉掌握masm,link,debug等工具,将一个asm文件通过汇编连接成一个可执行文件。 第二题1 编写实验二并调试并调试2 查看数据段寄存器结果是否正确。 第三题1编写实验三并调试,初步了解中
4、断的功能调用。 2从键盘输入若干1-5,看输出结果是否正确。 第四题:1. 在主程序中调用子函数count,完成将每个在数组mark里的成绩一一取出。2. 分别判定其大小而放入统计6069 分,7079 分,8089 分,9099 分和100 分的人数的S6, S7, S8, S9 和S10 单元中,在数据段中查看出S6, S7, S8, S9 和S10中的数。第五题:1使用条件汇编和重复汇编。2判断当给定名为X 的字符串长度大于5 时,重复 ADD AX, AX 10 次。第六题:1 使类型1CH 的中断向量指向中断处理程序COUNT。2 COUNT中 1CH 中断每调用一次则给num加一,
5、计算出num最后的值后存入单元M 中。第七题:1接收从键盘输入的10 个十进制数字,输入回车符则停止输入。2调用xlat使得(al)(al)+(bx)实验中遇到的问题及其解决方法1、关于没有定义堆栈段系统发出warning问题?n Link的时候,如果程序没有定义堆栈,dos系统会发出警告,但不影响后续操作。n 问题是在实验2中遇到,解决的思路是暂且忽略这个警告,因为堆栈是用来保存便于返回的,当程序不是很复杂时,用堆栈显得不叫繁琐。2、关于汇编语言的输出问题?n 汇编语言输出时,预期为数字或者英文字母,但有时会出现乱码。n 经过仔细思考,发现汇编的输出同一为16进制,只要把所有的输出同一为16进制而不是10进制,输出就没有问题。3、关于数据加密问题?n 最后一题为数据加密后输出,题目给定一个密码表,要求将输入的数据加密后输出n 通过查找命令,发现xlat命令的作用是使得(al)almov buffersi,alinc siloop inputexit:mov ax,axretmain endpcode endsend start专心-专注-专业
限制150内