




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、本科实验报告课程名称: 计算机硬件技术基础(实验一) 实验地点: 专业班级:软件13xx班 学号: 201300xxxx 学生姓名: 指导教师: 高劲松 2015年 5月 8 日太原理工大学学生实验报告学院名称软件学院专业班级学号学生姓名实验日期2015-5-8成绩课程名称硬件技术基础实验题目汇编语言程序设计:顺序程序实验一、 实验目的和要求1通过宏汇编(MASM)上机操作,使学生掌握汇编语言源程序的编辑、汇编、连接和执行的完整过程。2掌握汇编过程中各命令的作用及使用方法,了解汇编和连接的过程。3掌握8086/8088指令系统中已学指令的书写格式、功能及其作用。4结合实例程序掌握汇编语言程序上
2、机过程,熟悉DEBUG程序中常用命令的使用。二、实验内容和原理1预习汇编程序上机操作的全过程。以下是MASM5环境中运行步骤:(同学们也可以使用CV集成编译环境) 32位机运行过程:编写一个汇编语言源程序如exp1.asm,放在MASM5文件夹下;(1)在dos环境下,如:d:masm 下输入命令:edit(2)打开编辑窗口(3)输入如下原程序后保存文件,例如 exp1.asm(4)输入下列指令进行编译: d:masm masm exp1.asm回车,出现如下界面: Microsoft(R)Macro Assmbler Version 500 Copyright(C)Microsoft Cor
3、p l981-1985,1987AH rights reserved Object filename exp1obj: (回车)Source Listing NULLST: (回车) Croes referencsNUL.CRF: (回车) 0 Warning Errors 0 Severs Errors检查错误,如结果为0错误 0警告则编译成功,产生exp1.obj文件(5)输入下列指令进行链接: d:masmlink exp1.obj回车,出现如下界面: Run Fileexp1.EXE:8 (回车)List FILENUL.MAP: (回车) Libraries.LIB:8 (回车)LI
4、NK:warning L4021:No STACK segment如结果为0错误 0警告则链接成功,产生exp1.exe文件64位机运行过程:汇编编译器masm无法在64位下运行,在64位下使用masm编译器会提示不兼容,这时我们可以安装DOS虚拟机,即DOSBox。(1) 假设编译器在E:masm5,就是那个有masm.exe,debug.exe,link.exe的那个文件夹 (2) 输入命令 mount C E:masm5 (把文件夹E:masm5当作虚拟机的C盘) (3) 然后输入 C:
5、0;(进入虚拟的C盘,其实就是E:masm5)(4) 之后就跟32位机上运行过程一样。2对已经汇编连接成功的可执行文件,使用DEBUG命令调试程序找出程序的断点,执行程序,显示有关寄存器、存储单元的内容,分析程序的结果。三、主要仪器设备 HP 242 g1四、操作方法与实验步骤编制程序计算Z=X+Y,其中X、Y、Z均为字型无符号数。参考源程序如下DATA SEGMENTX DW 10HY DW 20HZ DW ?DATA ENDSCODE SEGMENTMAIN PROC FAR ASSUME CS:CODE, DS:DATASTART: PUSH DS MOV AX, 0 PUSH AX M
6、OV AX, DATA MOV DS, AX MOV AX, X ADD AX, Y MOV Z, AX RET MAIN ENDP CODE ENDS END START(1) 编辑源程序,汇编并连接之,若有错误则编辑修改并重新汇编、连接,形成EXE文件。(2) 分别用DEBUG 调试程序中的T命令、D命令找到断点、运行程序、显示程序的运行结果。实验内容与要求1. 编写程序计算Z=(A+B)-(C-D),其中A=30H,B=20H,C=10H,D=05H均为字节单元无符号数。STACK SEGMENT STACKDB 50 DUP(0)STACK ENDSDATA SEGMENTA DB 3
7、0HB DB 20HC DB 10HD DB 05HZ DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX, DATAMOV DS, AXMOV AL, AADD AL, BMOV AH, DSUB AH, CSUB AH, ALMOV Z, ALCODE ENDSEND START2. 设W、X、Y、Z、V均为16位字单元有符号数,编程计算W=(X*Y-50)/Z,将结果存入变量W,而余数存入变量W+2中。(X为非零数,并假设X、Y、Z的值分别为50、20、10、15)STACK SEGMENT STAC
8、KDB 50 DUP(0)STACK ENDSDATA SEGMENTX DW 50HY DW 20HZ DW 10HW DW ?DATA ENDS第3/7页CODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX, DATAMOV DS, AXMOV AX, XIMUL YSUB AX, 50MOV BX, ZIDIV BXMOV W, AXMOV W+2,DXCODE ENDSEND START五、实验数据记录和处理。6、 实验结果与分析 由调试过程可知,上述实验结果正确7、 讨论、心得 在实验过程中,遇到了许多困难,第一次实验,有很
9、大程度上是对基本知识不熟悉造成的,通过查阅书籍和上网查资料找到了解决问题的方法,在今后的学习中,我要多注重基本知识的学习,回归课本,在课本中再延伸。本科实验报告课程名称: 计算机硬件技术基础(实验二) 实验地点: 专业班级:软件13xx班 学号: 201300xxxx 学生姓名: 指导教师: 高劲松 2015年 5月 15 日太原理工大学学生实验报告学院名称软件学院专业班级学号学生姓名实验日期2015-5-15成绩课程名称硬件技术基础实验题目汇编语言程序设计:分支和循环程序实验一,实验目的和要求1通过分支程序设计、循环程序设计实验,掌握无条件转移指令、条件转移指令的格式、功能及使用方法。2掌握
10、分支程序的结构、单分支和多分支程序的设计方法。3了解循环程序的基本结构和控制循环的方法。二、实验内容和原理要求学生按教师指定题目进行汇编语言程序设计,并上机调试,以实现较复杂的程序设计。1. 已知X、Y、Z、MAX为16位的带符号数,求三个数中最大值,结果存入MAX单元。2. 求10个学生成绩中的最高成绩,结果存入MAX字节单元中,已知成绩为字节型。三、主要仪器设备 HP 242 g1四、操作方法与实验步骤DB 200 DUP(0)STACK ENDSDATA SEGMENTX DW 10HY DW 20HZ DW 30HMAX DW ?DATA ENDS第2/6页CODE SEGMENTAS
11、SUME CS:CODE, DS:DATA, SS:STACKSTART: MOV AX, DATAMOV DS, AXMOV AX ,XMOV BX ,YCMP AX , BXJNL NEXTXCHG AX,BXNEXT: MOV BX,ZJNL NEXT1XCHG AX,BXNEXT1: MOV MAX,AXCODE ENDSEND START STACK SEGMENT STACKDB 200 DUP(0)STACK ENDSDATA SEGMENTA1 DB 96,73,34,86,99,20,15,4,100,0MAX DB ?DATA ENDSCODE SEGMENTASSUME
12、CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV CX,10MOV BX,0MOV AL,A1BXAGAIN: INC BXCMP A1BX,ALJBE NEXTXCHG AL,A1BXNEXT: LOOP AGAINMOV MAX,ALCODE ENDSEND START五、实验数据记录和处理六、实验结果与分析由以上的调试步骤以及分析可知实验正确。七、讨论、心得通过一步一步的调试可能找到错误的原因。写循环使用LOOP,其中处理数据的形式,即A1BX。 忘记其中的语句的语义是否正确可以使用调试开验证是否正确。在自己一步步的调试过程中,
13、我的动手能力和实际编程能力得到了极大的提高。实验地点指导教师高劲松本科实验报告课程名称: 计算机硬件技术基础(实验三) 实验地点: 专业班级:软件13xx班 学号: 201300xxxx 学生姓名: 指导教师: 高劲松 2015年 5月 22 日太原理工大学学生实验报告学院名称软件学院专业班级学号学生姓名实验日期2015-5-22成绩课程名称硬件技术基础实验题目 汇编语言程序设计:综合程序设计实验一,实验目的和要求1通过分支程序设计、循环程序设计实验,掌握无条件转移指令、条件转移指令的格式、功能及使用方法。2掌握分支程序的结构、单分支和多分支程序的设计方法。3了解循环程序的基本结构和控制循环的
14、方法。4掌握通过DOS中断调用使用键盘和显示器的方法。二、实验内容和原理 编写一个汇编程序,要求对键盘输入的大写字母用小写字母显示出来,键盘输入的小写字母用大写字母显示出来。三、主要仪器设备 笔记本电脑四、操作方法与实验步骤 STACK SEGMENT STACKDB 200 DUP(0)STACK ENDSDATA SEGMENTX DB 0;DATA ENDS第2/5页CODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXMOV AH,01HINT 21HCMP AL,'a'JNL NEX
15、TMOV X,'a'-'A'ADD X,ALMOV AH,02HMOV DL,XINT 21HMOV AH,4CHINT 21HNEXT: MOV X,'A'-'a'ADD X,ALMOV AH,02HMOV DL,XINT 21HMOV AH,4CHCODE ENDSEND START五、实验数据记录和处理六、实验结果与分析 由上述过程得知,实验结果正确。七、讨论、心得 通过使用-u来进行反编译也是一种很好的进行测试的方法。并且对于一些并不熟悉的ASCALL码有时可以通过直接用字符的方法去做,省去记忆字符。实验地点指导教师高劲松
16、本科实验报告课程名称: 计算机硬件技术基础(实验四) 实验地点: 专业班级:软件13xx班 学号: 201300xxxx 学生姓名: 指导教师: 高劲松 2015年 5月 29太原理工大学学生实验报告学院名称软件学院专业班级学号学生姓名实验日期2015-5-29成绩课程名称硬件技术基础实验题目汇编语言程序设计:综合程序设计实验一,实验目的和要求1通过分支程序设计、循环程序设计实验,掌握无条件转移指令、条件转移指令的格式、功能及使用方法。2掌握分支程序的结构、单分支和多分支程序的设计方法。3了解循环程序的基本结构和控制循环的方法。 4掌握通过DOS中断调用使用键盘和显示器的方法。二、实验内容和原
17、理编写一个汇编程序,使得从键盘上输入十个以内的字符,以输入空格结束,然后按数字、字母和其它符号三类统计各自的个数,在屏幕上依次显示出统计结果。完善下面的原程序CODE SEGMENTMAIN PROC FARASSUME CS:CODESTART : PUSH DSSUB AX,AXPUSH AXMOV BH,0; 统计数字的个数MOV BL,0; 统计字母的个数MOV DH,0; 统计其它字符的个数MOV CX,10AA1:CMP CX,0JZ STOP ;输入字符超过10个MOV AH,1INT 21H ;从键盘接收一个字符CMP AL,20HJZ STOPCMP AL,0JB CC1CM
18、P AL,9JA CC1INC BH自行写出比较是否为字母的情况 CC2:INC DHDEC CXSTOP:MOV DL,BHMOV AH,02INT 21H自行写出输出字母的个数自行写出输出其它字符的个数RETMain endpCode endsEnd 三、主要仪器设备 HP 242 g1四、操作方法与实验步骤STACK SEGMENT STACKDB 200 DUP(0)STACK ENDSDATA SEGMENTX DB '0'DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART: MOV AX,DATAMOV DS,AXSUB AX,AXMOV BX,0MOV DX,0MOV CX,10AA1: CMP CX,0JZ STOPMOV AH,1INT 21H
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年心理发展与教育技术考试试卷及答案
- 2025年国际贸易与经济学考研试卷及答案分析
- 2025年全国高中数学竞赛试卷及答案
- 2025年人力资源管理考试题及答案
- 海外城市综合体施工进度监理及技术支持合同
- 商标品牌授权运营及市场拓展协议
- 电子商务平台技术研发与业务模式创新协议
- 基因治疗项目临床试验研究员派遣合同
- 果园无人机植保租赁与智能植保解决方案协议
- 网红蛋糕店区域代理加盟连锁经营合同
- 三年级数学-《年月日》整理和复习课件
- 兼职教师任职承诺书
- 两器车间产能分析
- JIS C9335-1-2014 家用和类似用途电器.安全性.第1部分:通用要求
- TSG Z7002-2022 特种设备检测机构核准规则
- 上海市2020年中考化学试卷(word版含解析)
- 史上最全的数列通项公式的求法15种
- 配电室高低压运行记录表
- 番茄采摘机械手
- 报联商——有效沟通PPT课件
- 安全技术交底附件签到表
评论
0/150
提交评论