《太原理工大学硬件实验报告(共26页).docx》由会员分享,可在线阅读,更多相关《太原理工大学硬件实验报告(共26页).docx(26页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上本科实验报告课程名称: 计算机硬件技术基础 实验项目: 汇编语言程序设计 实验地点: 逸夫楼402 专业班级: 1532 学号: 学生姓名: 扬帆 指导教师: 赵涓涓 2017年 4月 29 日专心-专注-专业太原理工大学学生实验报告学院名称软件学院专业班级15032学号学生姓名袁艺通实验日期成绩课程名称顺序程序实验实验题目顺序程序实验实验目的和要求 1通过宏汇编(MASM)上机操作,使学生掌握汇编语言源程序的编辑、汇编、 连接和执行的完整过程。 2掌握汇编过程中各命令的作用及使用方法,了解汇编和连接的过程。 3掌握8086/8088指令系统中已学指令的书写格式、功能
2、及其作用。 4结合实例程序掌握汇编语言程序上机过程,熟悉DEBUG程序中常用命令的使用实验内容和原理 1预习汇编程序上机操作的全过程。 2对已经汇编连接成功的可执行文件,使用DEBUG命令调试程序找出程序的断点,执行程序,显示有关寄存器、存储单元的内容,分析程序的结果 三、主要仪器设备 笔记本电脑操作方法与实验步骤 1. 编写程序计算Z=(A+B)-(C-D),其中A=30H,B=20H,C=10H,D=05H均为字节单元无符号数。2.设W、X、Y、Z、V均为16位字单元有符号数,编程计算W=(X*Y-50)/Z,将结果存入变量W,而余数存入变量W+2中。(X为非零数,并假设X、Y、Z的值分别
3、为50、20、10、15)实验数据记录和处理 DATA SEGMENTX DW 10HY DW 20HZ DW ?DATA ENDSCODE SEGMENTMAIN PROC FAR ASSUME CS:CODE, DS:DATASTART: PUSH DS MOV AX, 0 PUSH AX MOV AX, DATA MOV DS, AX MOV AX, X ADD AX, Y MOV Z, AX RET MAIN ENDP CODE ENDS END START实验结果与分析。七、讨论、心得根据调试的过程可以知道,上述的实验结果正确。实验中没有使用输出,由于仅限于输出一个字符和字符串,对于
4、1题的输出为E,因此没有加入输出刚开始的时候,因为没有存储数据所以导致出现了错误,找到的不是想要的数据地址。经过讨论和查阅课本才得到解决。实验地点逸夫楼402指导教师赵涓涓学院名称软件学院专业班级1532学号学生姓名袁艺通实验日期成绩课程名称分支程序设计实验实验题目分支程序设计实验一、 实验目的和要求1通过分支程序设计实验,掌握无条件转移指令、条件转移指令的格式、功能及使用方法。2掌握分支程序的结构、单分支和多分支程序的设计方法。3掌握分支程序的基本结构和控制循环的方法。4.要求学生按教师指定题目进行汇编语言程序设计,并上机调试,以实现较复杂的程序设计。二、实验内容和原理1. 已知X、Y、Z、
5、MAX为16位的带符号数,求三个数中最大值,结果存入MAX单元。2. 编写程序计算Y的值,当X0时,Y=1,其中,输入数据X和输出数据Y均在数据段中定义,且皆为字节变量。三、主要仪器设笔记本、DOSBOX四、操作方法与实验步骤64位机运行过程:DOS虚拟机,即DOSBox(1)假设编译器在E:masm5,就是masm.exe,debug.exe,link.exe的那个文件夹(2)输入令mountCE:masm5(把文件夹E:masm5当作虚拟机的C盘)(3)然后输入C:(进入虚拟的C盘,其实就是E:masm5)(4)输入dir(5)输入命令:edit,打开编辑窗口,输入如下原程序后保存文件,例
6、如exp1.asm(6)输入下列指令进行编译:d:masmexp1.asm回车检查错误,如结果为0错误0警告则编译成功,产生exp1.obj文(7)输入下列指令进行链接:d:linkexp1.obj回车如结果为0错误0警告则链接成功,产生exp1.exe文件2对已经汇编连接成功的可执行文件,使用DEBUG命令调试程序找出程序的断点,执行程序,显示有关寄存器、存储单元的内容,分析程序的结果。输入下列指令进行调试:d:masmdebugexp1.exe回车,输入指令可以得到相应的调试结果:-D显示储存器内容-T执行和显示内容五、实验数据记录和处理1.2. 六、实验结果与分析1.2.七、讨论、心得由
7、调试步骤可知上述实验结果正确。其中在调试过程中,其中出现了错误,通过一步一步的调试可能找到错误的原因。写循环使用LOOP,其中处理数据的形式忘记其中的语句的语义是否正确可以使用调试开验证。最终可以调试。实验地点逸夫楼402指导教师赵涓涓学院名称软件学院专业班级1532学号学生姓名袁艺通实验日期成绩课程名称循环程序实验实验题目循环设计实验二、 实验目的和要求1通过循环程序设计实验,掌握循环条件转移指令、循环控制的格式、功能及使用方法。2掌握循环程序的基本结构和控制循环的方法。二、实验内容和原理1. 编写程序用来分别统计ARRAY数组中奇数和偶数的个数,输出数据均在数据段中。2. 求10个学生成绩
8、中的最高成绩,结果存入MAX字节单元中,已知成绩为字节型。三、主要仪器设笔记本、DOSBOX四、操作方法与实验步骤64位机运行过程:DOS虚拟机,即DOSBox(1)假设编译器在E:masm5,就是masm.exe,debug.exe,link.exe的那个文件夹(2)输入令mountCE:masm5(把文件夹E:masm5当作虚拟机的C盘)(3)然后输入C:(进入虚拟的C盘,其实就是E:masm5)(4)输入dir(5)输入命令:edit,打开编辑窗口,输入如下原程序后保存文件,例如exp1.asm(6)输入下列指令进行编译:d:masmexp1.asm回车检查错误,如结果为0错误0警告则编
9、译成功,产生exp1.obj文(7)输入下列指令进行链接:d:linkexp1.obj回车如结果为0错误0警告则链接成功,产生exp1.exe文件2对已经汇编连接成功的可执行文件,使用DEBUG命令调试程序找出程序的断点,执行程序,显示有关寄存器、存储单元的内容,分析程序的结果。输入下列指令进行调试:d:masmdebugexp1.exe回车,输入指令可以得到相应的调试结果:-D显示储存器内容-T执行和显示内容五、实验数据记录和处理1.2. 六、实验结果与分析1.2.七、讨论、心得由调试步骤可知上述实验结果正确。其中在调试过程中,其中出现了错误,通过一步一步的调试可能找到错误的原因。写循环使用
10、LOOP,其中处理数据的形式忘记其中的语句的语义是否正确可以使用调试开验证。最终可以调试。实验地点逸夫楼402指导教师赵涓涓学院名称软件学院专业班级1532学号学生姓名袁艺通实验日期成绩课程名称综合程序设计实验实验题目综合设计设计实验三、 实验目的和要求1通过分支程序设计、循环程序设计实验,掌握无条件转移指令、条件转移指令的格式、功能及使用方法。2掌握分支程序的结构、单分支和多分支程序的设计方法。3了解循环程序的基本结构和控制循环的方法。4掌握通过DOS中断调用使用键盘和显示器的方法。二、实验内容和原理1.编写一个汇编程序,要求对键盘输入的大写字母用小写字母显示出来,键盘输入的小写字母用大写字
11、母显示出来。2. 编写一个汇编程序,使得从键盘上输入十个以内的字符,以输入空格结束,然后按数字、字母和其它符号三类统计各自的个数,在屏幕上依次显示出统计结果。三、主要仪器设笔记本、DOSBOX四、操作方法与实验步骤64位机运行过程:DOS虚拟机,即DOSBox(1)假设编译器在E:masm5,就是masm.exe,debug.exe,link.exe的那个文件夹(2)输入令mountCE:masm5(把文件夹E:masm5当作虚拟机的C盘)(3)然后输入C:(进入虚拟的C盘,其实就是E:masm5)(4)输入dir(5)输入命令:edit,打开编辑窗口,输入如下原程序后保存文件,例如exp1.
12、asm(6)输入下列指令进行编译:d:masmexp1.asm回车检查错误,如结果为0错误0警告则编译成功,产生exp1.obj文(7)输入下列指令进行链接:d:linkexp1.obj回车如结果为0错误0警告则链接成功,产生exp1.exe文件2对已经汇编连接成功的可执行文件,使用DEBUG命令调试程序找出程序的断点,执行程序,显示有关寄存器、存储单元的内容,分析程序的结果。输入下列指令进行调试:d:masmdebugexp1.exe回车,输入指令可以得到相应的调试结果:-D显示储存器内容-T执行和显示内容五、实验数据记录和处理STACK SEGMENT STACKDB 200 DUP(0)
13、STACK ENDSDATA SEGMENT A DB PLEASE INPUT (az ):,$ B DB 0DH,0AH,CONVERT RESULT:,$DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,DATA MOV DS,AX MOV DX,OFFSET A MOV AH,09H INT 21H MOV AH,01H INT 21H MOV BL,AL CMP BL,61H JG S1 ADD BL,20H JMP NEXTS1: SUB BL,20HNEXT: MOV DX,OFFSET B MOV AH,09H INT 21H MOV DL,BL MOV AH,02 INT 21H MOV AH,4CH INT 21HCODE ENDSEND START运行结果:七、讨论、心得实验地点逸夫楼402指导教师赵涓涓