汇编语言程序设计.课程实验教学指导书
汇编语言程序设计实验指导书
汇编语言实验报告题目:子程序设计班级:rbw111姓名:吴德鹏学号:201107092416完成日期:2013.12.22概述:《汇编语言程序设计》实验指导书是非计算机、非电类的其他专业:包括纺织、机械、热能等专业的《汇编语言程序设计》课程配套使用的实验指导。
在理论课的教学中着重介绍微机系统的组成及工作原理,针对INTEL 8088/8086系列介绍相应的指令系统和汇编语言程序设计,介绍了接口的一般概念和CPU与外设交换信息的常用方式的软硬件设计思想。
实验课测重培养学生的汇编语言设计能力及一些简单接口程序设计的方法,训练学生汇编语言程序调试的能力。
通过实验,使学生加深对课堂教学内容的理解,培养学生综合使用微型机的初步能力。
其中实验一、实验二是后续实验的基础,通过该实验,学生应能了解汇编语言源程序的一般格式,熟悉汇编语言程序的上机过程和调试程序的基本方法,重点放在DEBUG调试程序的命令使用方法上。
也可以将实验一、实验二合并为一个实验,按照*实验一的要求进行;实验三、四、五进一步培养学生的各种结构的程序设计能力;实验六主要是简单接口的综合应用,为学生建立一个微机应用系统的概念,使学生通过具体的实例对相关的接口有感性认识,提高学生的实际动手能力和独立解决问题的能力。
教师可以根据专业学时的多少和学生的具体情况来开设实验。
一、实验目的:1.进一步熟悉分支、循环程序设计的方法及用DEBUG调式程序的方法。
2.熟练掌握子程序的参数传递的方式、子程序的嵌套、递归调用及其设计方法和技巧。
3、培养学生创新精神和独立运用所学基本知识和技能分析问题和解决问题的能力。
二、实验属性:显示学生名次表:编制一程序,要求接收从键盘输入的一个班的学生成绩,并存放于50字的grade数组中,其中grade+i保存学号为i+1的学生的成绩。
然后根据grade中的学生成绩,把学生名次填入50字的rank数组中,其中rank+i的内容是学号为i+1学生的名次。
新版汇编语言程序设计实验指导书(精)
新版汇编语言程序设计实验指导书(精)汇编语言实验指导书目录实验一debug的启动及其基本命令的使用(2实验二内存操作数及寻址方法(6实验三汇编语言程序的调试与运行(8实验四查表程序设计(10实验五系统功能调用(12实验六循环程序设计(13实验七分支程序设计(15实验八子程序设计(18实验九综合程序设计(20附录实验报告(21实验一debug的启动及其基本命令的采用一.实验目的:掌握debug的基本命令及其功能二.实验内容:debug就是专门为汇编语言设计的一种调试工具,它通过STM,设置断点等方式为汇编语言程序员提供更多了非常有效率的调试手段。
1、debug程序的启动在dos提示符下,可以键入命令:c>debug[d:][path][文件名][参数1][参数2]其中文件名就是被调试文件的名称,它须就是继续执行文件(exe,两个参数就是运转被调试文件时所须要的命令参数,在debug程序调到后,发生提示符“-”,此时,可以键入所需的debug命令。
在启动debug时,如果输入了文件名,则debug程序把指定文件装入内存。
用户可以通过debug的命令对指定文件进行修改、显示和执行。
如果没有文件名,则是以当前内存的内容工作,或者用命名命令和装入命令把需要的文件装入内存,然后再用debug的命令进行修改、显示和执行。
2、debug的主要命令(1编订命令a,格式为:-a[地址]该命令从指定地址开始允许输入汇编语句,把它们汇编成机器代码相继存放在从指定地址开始的存储器中。
(2反汇编命令u,有两种格式:1-u[地址]该命令从选定地址已经开始,反汇编32个字节,若地址省略,则从上一个u命令的最后一条指令的之下一个单元已经开始表明32个字节。
2-u范围该命令对指定范围的内存单元进行反汇编,例如:-u04ba:01000108或cu04ba:0100l9此二命令就是耦合的。
(3运转命令g,格式为:-g[=地址1][地址2[地址3。
汇编语言程序设计实验指导书
重庆师范大学涉外商贸学院计算机各专业实验用书汇编语言程序设计实验指导书(第一版)张开成编前言为适应教学内容由简到繁、由易到难、由浅入深的教学特点,我们编写了这本简易实验指导书,用以指导实验教学。
该指导书分两部分,第一部分指出实验的实验目的、实验内容、实验准备、实验要求、共提出十五个实验,需三十个学时完成。
第二部分为十五个实验的全部程序,仅供学生参考。
该实验指导书由数计学院计算机教研室张开成同志编写。
2010年2月第一部分提出各实验的实验内容、实验目的、实验要求和学时分配实验一:汇编语言基本操作实验(2学时)一、实验目的:明确QE、MASM、LINK三个系统软件的作用。
掌握汇编语言程序的编辑、汇编、连接过程。
二、实验内容:1、编写一个程序:用十进制输出一个按键的AS CⅡ值。
2、从键盘上读入两个一位数(必须保证按下数字键),输出它们的积。
三、实验准备:1、预习QE、MASM、LINK 三个软件的使用方法。
2、按实验要求,编写好实验源程序。
四、实验步骤:1、用QE编辑扩展名为.ASM的源文件。
2、汇编、连接生成扩展名为.EXE的可执行文件。
3、运行程序。
五、实验报告要求:1、总结用QE编辑源程序的方法。
2、说明源程序的连接、汇编过程。
3、分析运行结果。
4、按要求写出完整的实验报告(必须列出程序清单)。
实验二:分支程序设计实验(2学时)一、实验目的:1、学会简单分支和多分支程序的设计方法。
2、掌握程序的调试方法。
二、实验内容:1、从键盘读入两个一位数,输出它们的积。
若为非数字键,则显示字符“E”,退出程序。
2、从键盘接收一个按键,如为小写字母,则显示“L”,是大写字母,则显示“U”,如是数字,则显示“N”,都不是则显示“*”。
三、实验准备:1、预习分支程序设计方法。
2、按实验内容要求,编写好实验源程序。
四、实验步骤:1、用QE编辑扩展名为.ASM的源文件。
2、汇编、连接生成可执行文件.EXE。
3、运行程序。
《汇编语言程序设计》实验指导书
前言《汇编语言程序设》在计算机科学中是一门综合性的专业基础课,是计算机专业的核心课程。
它不仅是一般程序设计的基础,而且也是设计和实现编译程序、操作系统及其它系统程序和大型应用程序的重要基础。
它为后续专业课程的学习打下了理论基础和实践基础。
由于汇编语言程序设中有大量的指令,因此汇编语言程序设实验课在教学中占有重要的地位。
通过实验可以使学生更好的巩固和掌握所学的内容,进一步增强动手能力和解决实际问题的能力。
为了提高实验的效率,任课教师提前一周布置实验任务,并且进行一定的分析和讲解,要求学生进行准备工作。
准备工作包括查找资料,设计算法,写出预习报告,其中预习报告包括题目的解题思想,概要设计,实现算法的源代码清单等。
每次实验前,学生应向实验指导教师上交实验预习报告,预习报告经指导教师认可后方能进行实验。
实验完毕写出实验报告,用A4纸打印成册(源程序存盘),由学习委员统一收齐交指导教师审阅评定。
实验成绩考核:实验成绩占《数据结构》总评成绩的20%,其中实验效果占10分,出勤率和实验报告各占5分。
有以下情形之一者,实验成绩为不及格:1.迟到,早退,无故缺勤总共3次及以上者;2.未按时完成实验达4次及以上者;3.缺交实验报告3次及以上者。
实验一简单程序编制和上机过程一.实验目的1.掌握计算机常用代码的软件转换技术。
2.熟悉DEBUG软件的使用。
3.掌握简单程序的编程方法。
二.实验内容代码转换是计算机和I/O设备进行信息交换的重要技术之一。
各种I/O设备所提供和接收的数据编码不尽相同。
为了处理这些信息,计算机必须将各种不同编码形式的信息转换成别种适当的数据形式。
例如,键盘输入的数据均为ASC Ⅱ码形式存储在内存中,通常要求将其转换成相应的数据形式。
一般实现代码转换有两种方法:1.软件法利用CPU的算术逻辑运算功能,通过运算或查表实现各种数据代码间的转换。
该方法经济但速度慢。
2.硬件法利用专用代码转换集成电路进行转换。
汇编语言程序设计实验指导书
汇编语⾔程序设计实验指导书汇编语⾔程序设计实验指导书信息学院⼆OO七年九⽉汇编语⾔程序设计实验指导讲义⽬录序⾔ IBM PC汇编语⾔实践操作 (1)实验⼀ DOS常⽤命令及8088指令使⽤ (8)实验⼆内存操作数及寻址⽅法 (11)实验三数据串传送和查表程序 (13)实验四屏幕字符显⽰程序 (15)实验五条件转移指令 (17)实验六汇编语⾔程序上机过程 (20)实验七分⽀程序 (22)实验⼋多重循环程序 (24)实验九⼦程序 (25)实验⼗⾳乐程序 (28)实验⼗⼀数码转换程序 (30)实验⼗⼆键盘和窗⼝程序 (33)实验⼗三活动图形显⽰程序 (35)实验⼗四磁盘⽂件操作程序 (38)实验⼗五绝对磁盘读写程序 (44)IBM PC汇编语⾔实践操作本章主要介绍了汇编语⾔源程序的编辑、汇编、连接的⽅法,DEBUG调试命令及其使⽤⽅法⼀、编辑源程序汇编语⾔源程序:⽤汇编语句编写的解决应⽤问题的程序。
汇编程序:将汇编语⾔源程序翻译成机器语⾔程序的系统。
汇编:将汇编语⾔程序翻译成机器语⾔程序的过程。
在编辑汇编语⾔源程序时,对计算机硬件⼯作环境⽆特殊要求,对软件⼯作环境要求也很简单,只需⽤建⽴ASCII码⽂本⽂件的软件即可。
(1)编辑软件⾏编辑软件:/doc/9a62dcfd770bf78a65295449.html全屏编辑软件:WPS、/doc/9a62dcfd770bf78a65295449.html 、/doc/9a62dcfd770bf78a65295449.html 、WORD、PE等。
当输⼊、建⽴和修改源程序时,可任选⼀种编辑软件,不要⽤格式控制符,要求编辑完成的⽂件扩展名⼀定是.ASM。
(2)汇编程序有汇编ASM.EXE、宏汇编MASM.EXE及TASM等,⼀般使⽤宏汇编MASM.EXE,因它⽐ASM.EXE功能强。
TASM适⽤于8086/8088~Pentium系列指令系统所编写的汇编语⾔程序,是⽐较先进的汇编⼯具。
汇编语言程序设计实验指导书
实验一宏汇编MASM5.0运行环境一、实验目的1、熟悉的MASM5.0宏汇编程序运行环境2、掌握用MASM5.0运行汇编语言程序的步骤3、学习及掌握的debug程序的各种命令并调试汇编语言程序。
二、实验仪器计算机、masm汇编运行环境三、实验原理1、建立汇编语言的工作环境(1)编辑程序:EDIT .COM(2)汇编程序:MASM .EXE(3)连接过程:LINK.EXE(4)调试程序:DEBUG .EXE2、运行汇编语言程序的步骤(汇编语言程序的上机过程)在汇编实验步骤的word文档中(请下载参考)。
(1)用汇编程序建立源文件(*.asm)汇编程序:记事本,写字板或EDIT.EXE 。
(文本文件编辑器)扩展名为:.asm(2)用汇编程序(MASM、EXE)产生OBJ文件。
(3)用连接程序(LINK 、EXE)生成EXE文件。
(4)程序的执行直接输入文件名LINKEDIT记事本写字板MASM3、用DEBUG 运行、调试汇编语言程序(1)进入DEBUGC:\ DEBUG (前提DEBUG .COM 程序在C 盘)屏幕显示:- “-”这个符号是进入DEBUG的提示符,在该提示符下可键入任意DEBUG 命令,现在用A命令送程序。
(2)送程序并汇编-A 100169C:0100 MOV DL ,33169C:0102 MOV AH ,2169C:0104 MOV INT 21169C:0106 MOV INT 20169C:0101此程序已送完,并汇编成机器指令(3)现在用G命令一运送程序-G3看一下机器指令是什么样的用反汇编命令U(4)反汇编-U 100 :108段地址偏移地址指令169C :0100 B233 MOV DL ,33169C :0102 B402 MOV AH ,02169C :0104 CD21 INT 21169C :0106 CD20 INT 20169C :D108(5)用Q命令退出DEBUG 返回DOS-QC:\4、DEBUG 命令(1)汇编命令A格式1)A < 段寄存器名>:<位移> ;(段寄器)为段地址2)A <段地址> :<位移> ;(c s) 为段地址3)A <位移> ;4)A ;以CS:100作地址功能:键入该命令后显示的地址和位移并等待用户从键盘逐条键入汇编命令。
汇编语言程序设计课程设计指导书
汇编语言程序设计课程设计指导书一、课程设计的目的本课程设计是《汇编语言程序设计》课程的后继教学环节,其宗旨是使学生通过对一个较大型的、综合性的应用程序进行阅读、修改、添加功能等工作,对汇编语言程序设计有更进一步的认识,提高编程技巧和阅读理解复杂程序的能力。
二、课程设计的任务要求根据所给的“Reader.asm”应用程序框架,在此基础上修改和添加功能。
1.基本任务:认真阅读“Reader.asm”源程序,理解程序每一条指令在程序中的作用;用→、←键在窗口内左右移动文本;用PgDn,PgUp键上下快速移动文本(每次移半帧);设计专用键放大、缩小窗口,改变窗口位置。
2.扩展任务:对文本内的Tab字符(ASCII码09H)进行处理:遇到Tab键,下一个字符显示在下一个表站开始处(每个6个字符一个表站);设置状态行,显示当前文件名、文本位置(仿垂直滚动条)。
3.自行设计的其它任务:三、课程设计报告的内容1. 课程设计题目名称、班级号、学号、学生姓名和课程设计起止日期(封面);2. 上海应用技术学院课程设计任务书(下发)3. 课程设计目的和要求;4. 课程设计任务内容;5. 详细设计说明;6. 软件使用说明;7. 课程设计总结;8. 附录:1 参考文献2 程序清单(电子版)。
四、课程设计详细设计说明及其它要求1.分析原“Reader.asm”程序结构:每个模块说明,较大模块程序流程图;2.对你已经实现的功能做详细的说明,并附上流程图及部分程序清单;3.自己对该“文件阅读器”的进一步设想;4.对于有设想但最终未实现的功能的大致编程思路的阐述;5.论述在设计过程中遇到的并且对你具有启发性的问题;6.交课程设计报告手写版,源程序交电子版。
五、评分标准1. 根据平时出勤情况和设计时的工作情况;2. 根据课程设计程序的完成情况,必须有可运行的软件。
3. 根据课程设计报告的质量。
课程设计报告不能抄袭,抄袭判为不及格。
4. 在题目要求之外附加具有实用性的功能。
汇编语言程序设计实验指导书
重庆师范大学涉外商贸学院计算机各专业实验用书汇编语言程序设计实验指导书(第一版)张开成编前言为适应教学内容由简到繁、由易到难、由浅入深的教学特点,我们编写了这本简易实验指导书,用以指导实验教学。
该指导书分两部分,第一部分指出实验的实验目的、实验内容、实验准备、实验要求、共提出十五个实验,需三十个学时完成。
第二部分为十五个实验的全部程序,仅供学生参考。
该实验指导书由数计学院计算机教研室张开成同志编写。
2010年2月第一部分提出各实验的实验内容、实验目的、实验要求和学时分配实验一:汇编语言基本操作实验(2学时)一、实验目的:明确QE、MASM、LINK三个系统软件的作用。
掌握汇编语言程序的编辑、汇编、连接过程。
二、实验内容:1、编写一个程序:用十进制输出一个按键的AS CⅡ值。
2、从键盘上读入两个一位数(必须保证按下数字键),输出它们的积。
三、实验准备:1、预习QE、MASM、LINK 三个软件的使用方法。
2、按实验要求,编写好实验源程序。
四、实验步骤:1、用QE编辑扩展名为.ASM的源文件。
2、汇编、连接生成扩展名为.EXE的可执行文件。
3、运行程序。
五、实验报告要求:1、总结用QE编辑源程序的方法。
2、说明源程序的连接、汇编过程。
3、分析运行结果。
4、按要求写出完整的实验报告(必须列出程序清单)。
实验二:分支程序设计实验(2学时)一、实验目的:1、学会简单分支和多分支程序的设计方法。
2、掌握程序的调试方法。
二、实验内容:1、从键盘读入两个一位数,输出它们的积。
若为非数字键,则显示字符“E”,退出程序。
2、从键盘接收一个按键,如为小写字母,则显示“L”,是大写字母,则显示“U”,如是数字,则显示“N”,都不是则显示“*”。
三、实验准备:1、预习分支程序设计方法。
2、按实验内容要求,编写好实验源程序。
四、实验步骤:1、用QE编辑扩展名为.ASM的源文件。
2、汇编、连接生成可执行文件.EXE。
3、运行程序。
汇编语言程序 实验指导书
《汇编语言程序设计》实验指导书计算机系统结构团队编西南科技大学计算机科学与技术学院2011年3月实验指导书说明汇编语言程序设计是一门实践性很强的课程,只有通过上机实践才有可能掌握设计技术并使其达到较高的水平,因此编写了实验指导书,为汇编语言程序设计课程的实验教学服务。
实验指导书共分三部分,第一部分是实验的预备知识,介绍了汇编语言程序运行时所需要的一些应用程序;第二部分是对实验报告的要求。
第三部分是实验题目,分为验证型实验和设计型实验。
在具体的实验过程中可以根据学生情况进行选择。
目录:第一部分汇编语言程序设计实验基础知识概述 (4)1.1、汇编程序MASM.EXE (4)1.1.1 宏汇编程序的功能 (4)1.1.2 汇编程序的用法 (4)1.1.3 MASM出错信息 (5)1.1.4 连接程序LINK.EXE (6)1.2 DEBUG命令详解 (7)1.2.1 DEBUG的功能 (7)1.2.2 DEBUG的使用方法 (7)1.2.3 DEBUG命令功能说明 (8)第二部分实验要求 (36)2.1 实验要求 (36)2.2 实验报告要求 (36)2.3 加强实践能力的培养 (36)第三部分实验内容 (37)实验1 MASM、LINK指令的使用实验 (37)实验2 汇编命令(伪指令)实验...................................................... 错误!未定义书签。
实验3 顺序结构程序实验................................................................ 错误!未定义书签。
实验4 简单分支结构程序实验 (39)实验5 循环结构程序实验 (41)实验6 子程序实验 (43)实验7 DOS功能调用 (46)实验8 排序和检索程序实验 (47)实验9 字符串操作实验 (51)第四部分参考资料 (57)第一部分汇编语言程序设计实验基础知识概述1.1、汇编程序MASM.EXE经过编辑的程序所建立的汇编语言源程序,是不能直接在计算机上运行的。
8086汇编语言程序设计实验指导书x
8086汇编语言程序设计实验指导书计算机科学与技术学院计算机科学与技术系二〇一一年九月目录第一部分实验方法 ............................................................................. - 1 -1.1 实验目的与要求 ...................................................................... - 1 -1.2 实验方法 .................................................................................. - 2 - 第二部分实验内容 ............................................................................. - 7 - 实验1 简单汇编语言程序设计 .................................................. - 7 - 实验2 分支循环及程序设计 ...................................................... - 8 - 实验3 子程序程序设计 .............................................................. - 9 - 实验4 综合程序设计 ................................................................ - 10 - 附录.................................................................................................. - 11 - 附录1 常用DOS命令 ................................................................ - 11 - 附录2 DEBUG主要命令............................................................. - 13 - 附录3 汇编程序出错信息 .......................................................... - 16 - 附录4 常用字符ASCII码值...................................................... - 20 - 附录5 8088/8086指令系统 ...................................................... - 21 - 附录6 IBM PC/A T中断功能表................................................ - 25 - 附录7 常用DOS功能调用(INT 21H).................................. - 27 - 附录8 BIOS功能调用 ................................................................. - 30 -第一部分实验方法1.1 实验目的与要求一、实验目的学习汇编语言程序设计的基本方法和技能,进一步加深对8086汇编语言程序设计的理解,熟练掌握用汇编语言设计、编写、调试和运行程序的方法,为后继课程——接口技术打下坚实的程序设计基础。
汇编语言程序设计实验指导书
实验一汇编语言环境一、实验时间:2010年3月4日二、实验设备:硬件:计算机系统软件:MS-DOS、DEBUG三、实验目的及要求:本实验属于指令操作类实验,学生通过DOS指令及DEBUG指令的操作进行实验环境的熟悉,主要要求有如下几点:1、了解DOS的一般操作指令2、掌握DEBUG程序的基本参数的使用四、实验内容:1、操作DOS的盘符之间的转换及子目录命令2、使用DEBUG命令: D,E,F,H,Q,R五、实验步骤:1、DOS常用命令练习:1)练习在DOS的各个分区之间进行切换:命令格式为盘符:如进入D盘命令为 D:2)练习在各个文件夹之间进行切换:2.1退回本盘符根目录 cd\2.2退回上层目录 cd..2.3进入下层目录 cd(空格)目录名3)练习使用功能键“F3”输入一行命令后,回车,如果需要重复输入可以按功能键F3,如果是前面几行的命令可以用方向键上下来调节。
4)用命令 COPY BUG 复制一个文件。
5)用命令 RENAME BUG BG 将BUG 文件改为BG。
6)用命令 DEL BG 将文件BG删除。
7)用命令 DIR查找当前目录当中的文件,并会使用/P及/W两个参数。
2、DEBUG 命令使用:1)打 DEBUG 进入 DEBUG 控制,显示提示符 '- '。
2)用命令 F 100 10F 'A' 将'A'的ASCII码填入内存。
3)用命令 D 100 10F 观察内存中的16进制码及屏幕右边的ASCII字符。
4)用命令 F 110 11F 41 重复上二项实验,观察结果并比较。
5)用命令 E 100 30 31 32 …… 3F将30H-3FH写入地址为100开始的内存。
单元中,再用D命令观察结果,看键入的16进制数是什么字符的ASCII码?6)用H命令检查下列各组16进制数加减结果并和你的手算结果比较:-H 34 22会得出34与22的和与差(1)34H,22H (2)56H,78H (3)A5,79H (4)1284H,5678H (5)A758,347FH7)用R 命令检查各寄存器内容,特别注意AX,BX,CX,DX,IP及标志位中ZF,CF和AF的内容。
汇编语言实验指导书
实验一实验名称:DEBUG练习和简单程序设计实验目的:通过对调试程序DEBUG的使用和简单汇编源程序的设计的训练,掌握汇编语言设计、编写和运行程序的方法,为后续试验打下基础。
实验内容:(注:操作验证性实验需写出实验步骤及每步的实验结果,并对实验结果进行必要的分析;设计性实验需包含:软硬件平台、流程图、源程序、调试步骤、运行结果等,源程序应加必要的注释。
)(一)DEBUG练习:学习DEBUG的主要用法1、进入DEBUG;2、用DEBUG的R命令查看、改变CPU寄存器的内容;1)用R命令查看各寄存器的内容并纪录;2)用R命令修改寄存器BX、SI、BP的值。
3、用DEBUG的D命令查看内存中的内容(以下内容分别使用不同的D命令);1)用D命令查看从1000:0开始的128个内存单元的内容并纪录;2)用D命令查看从2000:8开始的128个内存单元的内容并纪录;3)用D命令查看从3000:0开始的10个内存单元的内容并纪录;4、用DEBUG的E命令改写内存中的内容;用E命令将内存1000:0—1000:9单元中的内容改写为0、1、2、3、4、5、6、7、8、9,并进行验证。
5、用DEBUG的U命令将内存中的机器指令翻译成汇编指令;用E命令从1000:0单元开始写入如下机器码,然后用U命令将内存中的机器指令翻译成汇编指令,并分析实验结果各部分的含义。
机器码对应的汇编指令b80100b9020001c86、用DEBUG的T命令执行机器指令;用T命令单步执行上题程序段的每条指令并纪录结果。
7、用DEBUG的A命令以汇编指令的格式在内存中写入一条机器指令。
用A命令将下面的程序段写入内存,用U命令翻译成机器指令,逐条执行,观察每条指令执行后,CPU中相关寄存器中内容的变化。
MOV AX,4E20HADD AX,1416HMOV BX,2000HADD AX,BXMOV BX,AXADD AX,BXMOV AX,001AHMOV BX,0026HADD AL,BLADD AH,BLADD BH,ALMOV AH,0ADD AL,BLADD AL,9CH(二)简单程序设计1、按要求编写汇编源程序,练习源程序的上机过程,并练习用DEBUG调试程序。
汇编语言实验指导书(用)
汇编语言程序设计实验指导书汇编语言程序设计课程建设小组二〇〇五年九月内容简介本书是为了配合《IBM汇编语言程序设计》课程而编写的实验指导书。
配合微型计算机汇编语言程序设计的教学体系及方法,通过上机实验循序渐进地加深对8086/88汇编语言的认识与理解,进而掌握程序设计的一般方法和技巧,并通过对程序的调试和运行,熟悉DEBUG的使用。
本书编排了9个单元实验:3个验证性实验,5个设计性实验,1个综合性实验(选做)。
每个验证性实验包括实验目的,实验环境,实验内容,原理和步骤等,设计性实验给出了基本要求,启发学生的思考和动手的能力。
本书可供各高校计算机专业、非计算机专业开设汇编语言程序设计课程用作实验教材。
前言汇编语言是计算机能够提供给用户使用的最快而又最有效的语言,也是能够利用计算机所有硬件特性并能直接控制硬件的惟一语言。
因而,对程序的存储空间和运行时间要求较高的一些实际任务,一般都使用汇编语言进行编程处理;至于很多实时性强、需要直接控制硬件的应用场合,则更是非用汇编语言不可了。
汇编语言程序设计是高等院校计算机科学与技术专业“汇编语言程序设计”必修课,实践环节是帮助学生加深认识和理解理论教学知识的重要途径。
学生应该通过大量的上机实验熟悉8086 CPU的指令功能、用途和使用技巧,进而通过循序渐进的程序设计练习,验证各类指令的功能和提高程序设计的能力。
本实验指导书由9个单元实验组成:汇编语言的调试和运行、堆栈指令和算术指令、逻辑指令和串处理指令、汇编语言程序格式、逻辑指令和程序设计、循环程序设计、子程序结构、DOS功能调用和综合实验。
本书所给实验程序全部通过上机验证,各实验之间相互配合而又自成体系,易于为不同类型专业按其实验教学要求选做,所以本书具有较宽的适用面。
目录实验一汇编语言的调试和运行 (1)实验二堆栈指令和算术指令 (2)实验三逻辑指令和串处理指令 (4)实验四汇编语言程序格式 (6)实验五分支程序设计 (5)实验六循环程序设计 (9)实验七子程序结构 (13)实验八 DOS功能调用 (16)实验九综合实验 (20)附录 1 ASCII码表 (22)附录 2 汇编语言常用出错信息 (23)附录 3 DEBUG命令 (27)附录 4 C语言调用汇编语言 (30)实验一汇编语言的调试和运行一、实验目的1、熟悉DEBUG程序和命令,并用它运行基本指令和察看运行结果。
8086汇编语言程序设计实验指导书.
汇编语言上机实验指导书一、概述上机实验总学时为16学时,其中综合性实验为2学时。
实验共有6项暂定为8次,每次2学时。
1.实验辅导的主要内容实验辅导的内容包括每个实验的实验目的;实验内容;对实验的算法及实验方法的必要说明;实验准备;实验步骤;实验报告要求;实验程序及参考框图。
开始的实验介绍较细,后面的实验简要介绍。
2.实验的软硬件要求关于汇编语言程序设计的硬件要求不高,有IBM-PC/XT即可,但应有彩色显示器以便进行图形实验。
软件方面应有MASM.EXE5.0版(包括LINK.EXE),与MS-DOS版本配套的DEBUG程序和EDIT.EXE编辑软件(其它编辑软件也可以)。
3.加强实践能力的培养实验目的不光是为了验证书本理论,更重要的是对实践能力的培养。
其中包括:实际调试程序的能力,例如修改程序参数的能力,查看结果的能力,设置断点调试运行的能力等;开发汇编语言应用程序的能力,例如应用有关汇编软件的能力,进行系统调用和BIOS功能调用的能力,进行模块程序设计的能力等。
对某一问题用不同的程序实现的能力,例如我们为每个实验提供了参考程序(或程序段),目的是让每个实验者参照样板程序将实验成功地实现,在掌握其方法后,自己改变程序或自己编制程序加以实现。
实验一汇编语言运行环境及方法、简单程序设计(2学时、验证性)1.实验目的:(1) 熟悉汇编语言运行环境和方法(2)了解如何使用汇编语言编制程序(3) 熟悉DEBUG有关命令的使用方法(4) 利用DEBUG掌握有关指令的功能(5) 利用DEBUG运行简单的程序段2.实验内容(1)学会输入、编辑汇编语言程序(2)学会对汇编语言程序进行汇编、连接和运行(3)进入和退出DEBUG程序(4)学会DEBUG中的D命令、E命令、R命令、T命令、A命令、G命令等的使用。
对于U命令、N命令、W命令等,也应试一下。
3.实验准备(1)仔细阅读有关汇编语言环境的内容,事先准备好使用的例子。
(完整word)《汇编语言》实验指导书-201610,推荐文档
《汇编语言》实验指导书计算机学院网络工程系李冬艳2016.10.1实验一汇编语言上机环境及基本操作一、实验目的及要求1.学习及掌握汇编语言源程序的书写格式和要求,明确程序中各段的功能和相互之间的关系。
2.熟练掌握在计算机上建立、汇编、连接、调试及运行程序的方法。
二、实验内容1.汇编语言源程序的建立本例中给出的程序是要求编写3+5=8的程序,并把8存入AL或AX中。
设定源程序的文件名为ABC.ASM 。
(用任何一个种文本编辑器编写此程序,存盘)或双击桌面的“Masm for Windows 集成实验环境 2012.5”快捷文件图标,进入汇编语言集成开发环境DATAS SEGMENT;此处输入数据段代码DATAS ENDSSTACKS SEGMENT;此处输入堆栈段代码STACKS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATAS,SS:STACKSSTART:MOV AX,DATASMOV DS,AX;======================================MOV AX ,3 ;自己写的代码Mov BX ,5 ;自己写的代码ADD AX ,BX ;自己写的代码(只有3条);此处输入代码段代码;======================================MOV AH,4CHINT 21HCODES ENDSEND START程序输入完毕后一定要将源程序文件存入盘中,以便进行汇编及连接,也可以再次调出源程序进行修改。
2.将源程序文件汇编成目标程序文件一般情况下,汇编程序MASM.exe的主要功能有以下3点:(1)检查源程序中存在的语法错误,并给出错误信息。
(2)源程序经汇编后没有错误,则产生目标程序文件,扩展名为.OBJ。
(3)若程序中使用了宏指令,则汇编程序将展开宏指令。
3.用链接程序link.exe生成可执行程序文件经汇编以后产生的目标程序文件(.OBJ文件)并不是可执行程序文件,必须经过链接以后,才能成为可执行文件(即扩展名为.EXE)。
汇编语言程序设计实验指导书、实验教学大纲
附件1-3《汇编语言程序设计课程》实验教学指导书课程编号:撰写人:刘伏贵审核人:湘潭大学信息工程学院二○○七年十月十八日前言一、实验总体目标《汇编语言程序设计》是一门重要的专业选修课,同时也是一门实践性很强的课程。
通过实验使学生对所学的汇编语言程序设计内容加深理解,增强实践动手能力,培养学生分析问题和解决问题的能力,以及进行汇编语言程序设计的实践。
在汇编语言程序设计课程的学习过程中,将分别开出《汇编程序与调试器的使用》、《DOS 命令与磁盘文件操作》、《汇编语言与结构化程序设计》、《汇编语言子程序设计》、《十进制数据直接处理程序设计》、《结构数据与汇编语言程序设计》、《记录数据与汇编语言程序设计》、《汇编语言程序设计综合实验》等八个实验。
由于汇编语言程序设计涉及到硬件、操作系统等诸方面的知识,完成实验的难度大。
因此,要求每一个学生必须按照教师的安排和要求,认真完成每一个实验,从而达到培养现代程序设计基本素养的目的。
二、适用专业年级专业:计算机科学与技术、网络工程年级:二年级三、先修课程《C语言程序设计》、《计算机组成原理》四、实验项目及课时分配五、实验环境个人计算机:120台Win 32 操作系统MS DOSMASM 6.0 及其以上版本的汇编程序及配套的80x86 汇编语言程序开发环境六、实验总体要求1、汇编语言程序设计的实验课主要是供学生测试、调试汇编语言程序。
2、必须充分重视实验课。
实验课是汇编语言程序设计课程的重要组成部分,是理论联系实践的重要环节。
通过它,能够培养学生独立分析和解决问题的能力。
3、在每个实验之前,学生必须准备好被测程序的有关设计资料(包括程序的基本设计说明、程序流程图、汇编语言程序清单等)、测试数据、测试驱动程序、测试需要的“桩模块”等。
4、必须做好实验前的一切准备工作,包括程序测试/调试的详细过程安排等。
在实验中应严格按照预先确定的实验过程进行实验,决不允许在实验过程中准备实验程序、测试数据与测试/调试过程计划。
《汇编语言程序设计》-实验指导书
《汇编语言程序设计》课程实验指导书(Assembly Language Programming)计算机科学与技术系杨定安编写佛山科学技术学院摘要汇编语言实验主要使学生掌握DEBUG或DEB2000调试程序中各命令的使用方法,掌握MASM汇编程序对汇编语言源程序进行编辑、汇编、连接、装配、调试到运行的上机操作方法。
本实验大纲要求学生熟练掌握汇编语言指令练习、顺序程序设计、分支程序设计、循环程序设计和子程序设计。
目录实验一宏汇编程序(MASM)及汇编语言上机过程 (3)实验二程序的基本结构练习 (8)实验三汇编编译器的使用及程序调试 (11)实验四分支程序设计 (17)实验五循环程序设计 (19)实验六子程序设计 (23)实验七汇编语言与C语言混合程序设计 (29)实验一宏汇编程序(MASM)及汇编语言上机过程一、实验目的1.通过实验了解和熟悉微机系统的配置。
2.学习在DEBUG状态下输入汇编源程序的方法。
3.初步掌握调试(在DEBUG状态下)的过程。
二、实验原理1. 本实验要求在DEBUG状态下输入汇编源程序,并用DEBUG命令进行调试。
用单步跟踪的方法验证指令的功能。
2. 以下是给定的参考程序,并在实验时在每条指令的“;”符号右边按要求填写指令的执行结果。
注:⑴微机进入DEBUG状态下之后,一切立即数和地址数据均被默认为十六进制数,在输入时数的后面不加后缀“H”;⑵在DEBUG状态下执行程序时,“INT 20H”指令可使系统执行完该指令前的程序时返回到“-”提示符状态,并且恢复CS和IP寄存器原来的值。
三、实验仪器微机一台,U盘一块。
四、实验步骤1.开机和关机操作顺序开机:先打开微机外部设备电源开关,如显示器,最后打开主机电源开关。
关机:与开机相反,先关掉主机电源开关,然后关闭所有外设的电源开关。
2. 装入DEBUG程序若计算机系统启动正常,可以进入MASM文件夹或MASM5文件夹从磁盘上调用DEBUG,程序到内存。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
附件1-3《汇编语言程序设计课程》实验教学指导书撰写人:刘伏贵审核人:湘潭大学信息工程学院二○○七年十月十八日前言一、实验总体目标《汇编语言程序设计》是一门重要的专业选修课,同时也是一门实践性很强的课程。
通过实验使学生对所学的汇编语言程序设计内容加深理解,增强实践动手能力,培养学生分析问题和解决问题的能力,以及进行汇编语言程序设计的实践。
在汇编语言程序设计课程的学习过程中,将分别开出《汇编程序与调试器的使用》、《DOS 命令与磁盘文件操作》、《汇编语言与结构化程序设计》、《汇编语言子程序设计》、《十进制数据直接处理程序设计》、《结构数据与汇编语言程序设计》、《记录数据与汇编语言程序设计》、《汇编语言程序设计综合实验》等八个实验。
由于汇编语言程序设计涉及到硬件、操作系统等诸方面的知识,完成实验的难度大。
因此,要求每一个学生必须按照教师的安排和要求,认真完成每一个实验,从而达到培养现代程序设计基本素养的目的。
二、适用专业年级专业:计算机科学与技术、网络工程年级:二年级三、先修课程《C语言程序设计》、《计算机组成原理》四、实验项目及课时分配实验项目实验要求实验类型每组人数实验学时实验一汇编程序与调试器的使用必修验证性 1 2实验二DOS 命令与磁盘文件操作必修设计性 1 2实验三汇编语言与结构化程序设计必修设计性 1 2实验四汇编语言子程序设计必修设计性 1 2实验五十进制数据直接处理程序设计必修设计性 1 2实验六结构数据与汇编语言程序设计必修设计性 1 2实验七记录数据与汇编语言程序设计必修设计性 1 2实验八汇编语言程序设计综合实验必修设计性 1 2实验九实验十五、实验环境个人计算机:120台Win 32 操作系统MS DOSMASM 6.0 及其以上版本的汇编程序及配套的80x86 汇编语言程序开发环境六、实验总体要求1、汇编语言程序设计的实验课主要是供学生测试、调试汇编语言程序。
2、必须充分重视实验课。
实验课是汇编语言程序设计课程的重要组成部分,是理论联系实践的重要环节。
通过它,能够培养学生独立分析和解决问题的能力。
3、在每个实验之前,学生必须准备好被测程序的有关设计资料(包括程序的基本设计说明、程序流程图、汇编语言程序清单等)、测试数据、测试驱动程序、测试需要的“桩模块”等。
4、必须做好实验前的一切准备工作,包括程序测试/调试的详细过程安排等。
在实验中应严格按照预先确定的实验过程进行实验,决不允许在实验过程中准备实验程序、测试数据与测试/调试过程计划。
凡未做好实验准备者,一律禁止进入实验室。
5、应当系统记录实验过程中的现象(通过情况、排除问题的调试过程等),以便写出充实的实验报告。
七、本课程实验的重点、难点及方法建议重点:远过程性质的汇编语言子程序的设计;良好程序设计习惯的培养;程序测试-调试能力的培养。
难点:开发可被高级语言程序调用的汇编语言子程序;测试数据的设计;调试器命令的熟练使用;汇编语言程序设计能力的提高。
建议:学生最好是将在高级语言程序设计课程中已完成的、程序效率受制于硬件资源利用率的综合性程序改用汇编语言程序实现;在实验前系统地“走查”被测程序,并使之成为习惯。
附件1-4:验证性实验教学指导书实验一:汇编程序与调试器的使用一、实验目的熟悉DOS操作系统环境下的汇编程序MASM的使用、掌握DEBUG的基本命令及其功能。
二、实验内容1.编写一个小程序,从键盘接收一个大写字母,存放到指定的内存单元BUFF1,并转换其为对应的小写字母,存放到指定的内存单元BUF2中。
上机编辑、汇编、连接并运行该程序。
程序结构参见教材相应章节的内容。
数据单元定义、源程序参考如下:DATA SEGMENTBUF1 DB ?BUF2 DB ?DATA ENDSCODE SEGMENTMAIN PROC FARASSUME CS: COD E,DS:DA TASTAR T: MOV AX, DATAMOV DS,AXMOV AH, 01 ;调用读键盘功能INT 21H ;结果在AL寄存器中MOV BUF1,ALOR AL,20H ;转换为小写字母MOV BUF2,ALMOV AX,4C00HINT 21HMAIN ENDPCODE ENDSEND START2. 输入源程序、汇编、连接并执行相应程序,并用DEBUG 实现以下操作:(1)用反汇编命令查看相应程序的可执行语句序列,分析其与源程序的异同,查看相应程序占用内存单元的字节数。
(2)用数据查看命令查看执行前的数据单元的内容。
(3)分别用P命令和T命令逐步执行程序,分析这两种方式的区别,记录“转换为小写字母”指令执行后的状态字。
(4)查看程序执行后数据单元的内容。
(5)查看0000:0000 起始的32个单元的内容。
(6)用DEBUG中的汇编命令编写一个计算“3+5”的加法程序。
三、实验要求学生要提前做好相关内容的预习(包括源程序的分段组织、DEBUG的系列命令等),熟悉被调试的程序(学生应当在本实验中自行设计一些汇编语言程序,其目的是熟悉相关编程环境的特性),并对程序的测试/调试过程(包括所用的编程环境命令、DEBUG命令等)作出详细计划。
认真完成实验,正确记录各项数据,记录实验过程中出现的问题及其解决过程。
四、实验报告写出各实验程序的测试/调试的详细过程(包括DEBUG命令的使用等),特别是要写出在DEBUG状态下编写、运行程序的过程。
要系统给出各程序在测试/调试过程中所遇到的问题、解决问题的方法与途径。
要对程序在测试/调试过程中的问题进行分析,对相关的执行结果进行分析。
附件1-5:设计性实验教学指导书实验二DOS命令与磁盘文件操作一、实验目的1. 熟悉DOS的基本系统调用(特别是系统输入/输出关联的基本系统调用)及其在汇编语言程序设计中的应用。
2. 熟悉磁盘文件操作相关的DOS系统调用及其在汇编语言程序设计中的应用。
二、实验内容编制若干个子程序以实现确定位数的数值数据(位数应使系统收到的数据达到或超过“字”数据的表示范围)的输入输出;编制若干个子程序实现对于数据文件的操作。
三、实验要求1. 数值数据的输入/输出要系统考虑无符号数和有符号数据。
2. 输入的数据按BCD码串保存,保存结果的存储区首址作为相应子程序的参数。
3. 待输出的数据被按BCD码串保存,其存储区首址作为相应子程序的参数。
4. 文件处理要完成包括文件的创建等在内的系列文件操作。
四、实验报告1. 实验程序的设计说明。
2. 实验程序的测试数据及其实测情况记录。
3. 程序的系统调试记录。
4. 实验的结果分析与总结。
实验三汇编语言与结构化程序设计一、实验目的系统了解在汇编语言程序中构建“if-then”、“if–then-else”、“switch-case”、“for”、“while”和“do-while”等结构的特殊性。
二、实验内容编制若干个子程序使结构化程序设计允许出现在程序中的“if-then”、“if–then-else”、“switch-case”、“for”、“while”和“do-while”几种程序结构被系统实现。
其中的“循环结构”必须至少有一种以上包含嵌套的循环结构。
三、实验要求1. 各子程序必须具有单一的逻辑功能,具有单一的出口和入口。
2. 必须使所有程序都符合结构化程序设计的要求。
3. 系统提供各子程序的测试数据及其所测试的程序特性。
4. 必须提供测试相关的“驱动模块”和“桩模块”的设计说明。
四、实验报告1. 实验程序的设计说明。
2. 实验程序的测试数据及其实测情况记录。
3. 程序的系统调试记录。
4. 实验的结果分析与总结。
实验四汇编语言子程序设计一、实验目的熟悉汇编语言子程序的构建及调用,了解子程序的参数传递机制(特别是利用堆栈传递参数),了解在子程序中面向堆栈分配程序局部变量的程序设计实现。
二、实验内容1. 必须包含将BCD码串表示的数值数据转换为相应二进制表示的子程序。
2. 必须包含将二进制的字节/字/双字(无符号/有符号)数据转换为相应BCD码串的子程序。
三、实验要求1. 所有子程序都必须具有“远过程”性质。
2. 使用堆栈传递成组参数的指针。
3. 除AX或者DX:AX可用作参数寄存器外,子程序不得破坏其他寄存器。
4. 当使用堆栈传递参数时,由子程序负责平衡堆栈。
四、实验报告1. 实验程序的设计说明。
2. 实验程序的测试数据及其实测情况记录。
3. 程序的系统调试记录。
4. 实验的结果分析与总结。
实验五十进制数据直接处理程序设计一、实验目的熟悉超长位数的数值数据的直接十进制处理的汇编语言程序实现。
二、实验内容设计若干个具有“远过程”性质的子程序,通过引用相关的DOS系统调用,从键盘上接受用户输入的长于12位的十进制数,应用硬件的十进制运算支持机制,实现对相关数据的直接处理。
三、实验要求1. 设计多个相对独立、但逻辑关联的子程序来完成实验任务。
2. 要提供无符号数和有符号数的处理支持。
3. 数值运算包括“加”、“减”、“乘”、“除”。
四、实验报告1. 实验程序的设计说明。
2. 实验程序的测试数据及其实测情况记录。
3. 程序的系统调试记录。
4. 实验的结果分析与总结。
实验六结构数据与汇编语言程序设计一、实验目的系统了解在汇编语言程序设计中处理结构数据、实现数据文件的高效处理的相关技术。
二、实验内容设计若干个具有“远过程”性质的子程序,通过引用相关的DOS系统调用,实现面向数据文件内容的、基于汇编语言结构数据应用的系列处理。
三、实验要求1. 相关子程序处理的数据应当来自确定的数据文件,处理的结果保存在确定的数据文件中。
2. 应当尽可能的引用先前实验中已通过的子程序。
3. 相关的数据文件应事先已创建并具有预知的内容。
4. 相关的子程序应能协同作用、实现确定的逻辑功能。
四、实验报告1. 实验程序的设计说明。
2. 实验程序的测试数据及其实测情况记录。
3. 程序的系统调试记录。
4. 实验的结果分析与总结。
实验七记录数据与汇编语言程序设计一、实验目的了解86汇编语言的记录数据,掌握相关的汇编语言程序设计技术。
二、实验内容设计若干个具有“远过程”性质的子程序,实现在字节对象、字对象和双字对象中位和位段数据的逻辑关联处理。
三、实验要求1. 相关的子程序要实现对于确定数据对象的功能配套的处理。
2. 所涉及的记录数据至少要包含三个字段、且具有确定的逻辑独立性。
四、实验报告1. 实验程序的设计说明。
2. 实验程序的测试数据及其实测情况记录。
3. 程序的系统调试记录。
4. 实验的结果分析与总结。
实验八汇编语言程序设计综合实验一、实验目的系统了解用汇编语言开发一个小型的、面向应用的系统的特殊性。
二、实验内容用汇编语言程序实现一个总代码行数不低于300行的、可独立运作的小型应用系统。