1、汇编语言实验报告哈尔滨师范大学计算机科学与信息工程学院实验报告手册课程名称:汇编语言程序设计 指导教师: 伊波 专业: 计算机科学与技术2016年2017年第二学期姓名: 胡菲 学号:2015020021年级: 2015级 班级:四班 实验报告填写及打印要求:1、 A4纸正反面打印;2、 实验报告封面、封面上填写内容必须打印;3、 实验报告内容,学生可手写也可打印,可根据内容自行加页;4、 指导教师必须手写签名;5、 左侧装订。实验报告内容实验题目:用DEBUG调试程序实验目的:1、掌握DEBUG命令的使用;2、了解8086指令的基本格式;3、掌握8086指令的寻址方式;4、掌握8086指令系
2、统及使用实验要求: 利用DEBUG调试程序,可以将一个可执行程序(如。EXE、。COM等)装入内存中,并接管对程序运行的控制权,通过采取如反汇编、断点运行、单步执行、寄存器内容修改等方法,对可执行程序进行跟踪、调试,以找出其中的设计错误,然后再对源程序进行相应修改,重新生成正确的可执行程序。实验器材:计算机实验电路图/程序流程图:1.准备被调试程序2.进入DEBUG环境3.输入各种调试命令实验步骤/程序源代码:DATA SEGMENTSTR DB HELLO,DENMARK$DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,D
3、ATAMOV DS,AXMOV DX,OFFSET STRMOV AH,09H INT 21HMOV AH,4CH INT 21HCODE ENDS END START 实验结果分析: 实验日期:2017.3.29成绩评定:优秀(100-90分)良好(89-80分)中等(79-70分)及格(69-60分)不及格(60-0分)教师签名:年 月 日实验报告内容实验题目:单重循环程序设计实验目的:1.掌握单重循环设计的方法。 2.掌握正确分配与使用寄存器。3.掌握控制循环的 方法。实验要求:1、利用循环程序计算1+2+3+。+100的和,结果放入SUM单元2、设内存中以BUFFER为首地址的缓冲区中
4、有若干个以非压缩BCD码形式存放的十进制数,并以“$”结束。它们的值可能是09中的任意一个,编程序将这些十进制数顺序显示在屏幕上。实验器材:计算机实验电路图/程序流程图:实验步骤/程序源代码:DATA SEGMENTBUFFER DB 1,6,2,5,4,7,3,8,9,6,$DATA ENDSCODE SEGMENTASSUME CS:CODE, DS:DATASTART: MOV AX,DATAMOV DS,AXLEA SI, BUFFERLOP: MOV AL,SICMP AL,$JE NEXTOR AL,30HMOV SI,ALINC SIJMP LOPNEXT: MOV AH,9LE
5、A DX, BUFFERINT 21HMOV AH,4CHINT 21HCODE ENDSEND START实验结果分析:实验日期: 2017.4.5成绩评定:优秀(100-90分)良好(89-80分)中等(79-70分)及格(69-60分)不及格(60-0分)教师签名:年 月 日实验报告内容实验题目:多重循环程序设计实验目的:1、加深对循环结构的理解2、掌握多重循环设计的方法3、掌握控制循环的方法实验要求:建立学生名次表RANK实验器材:计算机实验电路图/程序流程图:实验步骤/程序源代码:DATA SEGMENTGRADE DW 88,76,65,RANK DW 30 DUP(?)DATA
6、ENDSSTART: MOV AX,DATAMOV DS,AXMOV DI,30MOV BX,0LP1: MOV AX,GRADEBXMOV DX,0MOV CX,30LEA SI,GRADELP2: CMP AX,SIJG NEXTINC DXNEXT: ADD SI,2LOOP LP2NOV RANKBXADD BX,2DEC DIJNZ LP1MOV AH,4CHINT 21HPROGNAM ENDSEND START实验结果分析:实验日期:2017.4.12成绩评定:优秀(100-90分)良好(89-80分)中等(79-70分)及格(69-60分)不及格(60-0分)教师签名:年 月
7、日实验报告内容实验题目:分支程序设计实验目的:1、熟练掌握逻辑运算和转移指令2、掌握分支程序设计的原理和方法,重点掌握各种分支程序中形成和判断条件而产生的程序段的设计方法和技巧实验要求:编制程序实现如下操作:设有10个学生成绩存放在TAB为首地址的内存中,编程序分别统计低于60分。6069分、7079分、8089分、9099分及100分的人数,并存放于s5,s6,s7,s8,s9,s10单元中,同时显示在屏幕上。实验器材:计算机实验电路图/程序流程图:实验步骤/程序源代码:DATAS SEGMENTtab db 66,54,76,71,88,96,99,75,68,70s5 db 0s6 db
8、 0s7 db 0s8 db 0s9 db 0s10 db 0buf db output data:$ DATAS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATAS,START:MOV AX,DATASMOV DS,AXlea si,tabmov cx,10lopa: mov al,sicmp al,60jl a5cmp al,70jl a6cmp al,80jl a7cmp al,90jl a8cmp al,100jz a10inc s9jmp exita10:inc s10jmp exita8: inc s8jmp exita7: inc s7jmp ex
9、it a6: inc s6jmp exita5: inc s5jmp exit exit:inc sidec cxjnz lopalea dx,bufmov ah, 9int 21hlea si,s5mov cx,6lopb: mov al,simov ah,0mov dl,10div dl;(al)=十位 (ah)=个位mov bh,ahor al,30hmov dl,almov ah,2int 21hor bh,30hmov dl,bhmov ah,2int 21hmov dl, mov ah,2int 21hinc si dec cxjnz lopbMOV AH,4CHINT 21HCO
10、DES ENDSEND START实验结果分析:实验日期:2017.4.19成绩评定:优秀(100-90分)良好(89-80分)中等(79-70分)及格(69-60分)不及格(60-0分)教师签名:年 月 日实验报告内容实验题目:系统调用程序设计实验目的:学习和掌握DOS系统功能调用的程序设计方法实验要求:编程将内存中的一串字符输出,再从键盘上输入一串字符,再输出。实验器材:计算机实验电路图/程序流程图:实验步骤/程序源代码:DATA SEGMENTBUF1 DB abcdefghijklm,$BUF2 DB 20,?,20 DUP(?)DATA ENDSCODE SEGMENTASSUME
11、CS:CODE,DS:DATASTART:MOV AX, DATAMOV DS,AXMOV AH,09HLEA DX,BUF1INT 21HLEA DX,BUF2MOV AH,0AHINT 21HMOV DL,0AH MOV AH,02HINT 21HMOV AL,BUF2+1 MOV AH,0MOV SI,AX MOV DX,OFFSET BUF2+2MOV BX,DXMOV BYTE PTR BX+SI,$ MOV AH,09HINT 21HMOV AH,4CHINT 21HCODE ENDSEND START 实验结果分析:实验日期:2017.4.26成绩评定:优秀(100-90分)良好(89-80分)中等(79-70分)及格(69-60分)不及格(60-0分)教师签名:年 月 日
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1