汇编语言实验大纲
最新12版《汇编语言》实验教学大纲
《汇编语言》课程实验教学大纲课程名称:汇编语言课程编号:26010205课程性质:非独立设课课面向专业:计算机科学与技术及相关专业课程学分:3考核方法:以实验的上机操作过程、完成情况和实验报告为主要考核依据,将各次实验的平均成绩作为实验总成绩。
实验教学目的和任务《汇编语言》实验课是汇编语言课程的重要组成部分,本实验教学大纲是依据《汇编语言》课程教学大纲编制。
本实验教学主要是是配合《汇编语言》课程理论教学,训练学生在PC平台、MASM6.0开发环境中,利用汇编语言进行简单的汇编应用程序设计开发;其目的是使学生掌握指令级的编程方法和技巧,能够熟练使用汇编语言进行设计、编写、调试和运行程序,从而更好地提升学生分析问题、解决问题的应用能力。
为后续课程的学习打下扎实的基础。
实验一 DEBUG的启动及其基本命令的使用一、实验类型:验证性二、实验目的:1.熟练掌握DEBUG的主要命令的用法,为下一步编程打下基础。
三、实验内容及要求:1、进入DEBUG ,用D命令查看数据段中0100H——0200H单元的内容2、用U命令查看代码段中0100H开始的程序3、用R命令查看并修改IP寄存器的值为04、用E命令修改数据段5号、6号单元的内容为12 、345、用A命令实现Z=56+41,用T命令执行并用D命令查看结果6、将数据段的0号~4号字节单元填入'a'、'b'、'c'、'd'7、根据自己的理解和喜好,提出并完成若干种相关实验内容四、仪器设备:微机每人一台,Windows 操作系统实验二操作数及寻址方法一、实验类型:验证性二、实验目的:1、通过实验观察和分析,加深对寄存器作用和各种寻址方式的表示和应用的理解;2、进一步熟练DEBUG的R命令、A命令、T命令和D命令的用法。
三、实验内容及要求:在DEBUG中执行下列命令,并观察和分析在不同的寻址方式下存储单元的逻辑地址的表示以及指令的执行结果,包括标志位的变化。
《汇编语言》实验指导书.
《汇编语言》实验指导书目录实验一Debug命令的使用 (3)实验二基本汇编指令的使用 (7)实验三汇编语言程序的调试与运行 (10)实验四系统功能调用程序的调试与运行 (15)实验五分支程序设计 (17)实验六循环程序设计 (20)实验七子程序设计 (23)实验八高级汇编语言程序设计 (25)实验九I/O程序设计 (30)实验十中断程序设计 (33)实验十一综合程序设计 (38)实验一Debug命令的使用一、知识点1、DEBUG简介DEBUG.EXE是DOS提供的用于调试可执行程序的一个工具软件。
在汇编语言程序调试中很常用。
DEBUG的提示符是“-”,所有DEBUG调试命令均在此提示符下输入。
DEBUG命令都是一个字母,后跟一个或多个参数,也可使用默认参数。
DEBUG命令的使用注意问题:(1)字母不分大小写(2)只使用十六进制数,但没有带后缀字母“H”(3)命令如果不符合DEBUG的规则,则将以“error”提示,并以“^”指示出错位置。
(4)每个命令只有按下回车键后才有效,可以用Ctrl+Break终止命令的执行。
2、Debug的调入和退出以WIN2000环境为例,点击“开始/运行…”,在“运行”对话框中输入命令:cmd,然后点击“确定”,进入DOS命令行状态:C:\Documents and Settings\lfy>然后输入命令:>Debug进入Debug调试状态,出现Debug命令提示府“-”,在此提示符下可运行所需要的Debug 命令了。
退出Debug的命令:Q3、Debug常用命令(1)汇编命令A,格式为:- A [地址]功能:从指定地址开始允许输入汇编指令,并将该指令汇编成机器指令代码从指定地址开始存放。
若不指定地址,则系统从默认的地址开始存放。
按回车键退出汇编状态应用:用于调试一条指令或几条指令组成的一个程序段。
(2)显示和修改寄存器命令R,格式为:- R [寄存器名]功能:若指定寄存器,则显示指定的寄存器的内容,并可进行修改;若不要修改,则按Enter 健。
《汇编语言》实验报告
《汇编语言》实验报告实验名称:汇编语言实验报告实验目的:通过实验了解汇编语言的基本概念、语法结构和程序设计方法,掌握汇编语言的编写方法。
实验时间:2024年1月1日实验地点:实验室一、实验背景汇编语言是计算机硬件和软件之间的桥梁,通过汇编语言可以直接操作计算机的底层硬件。
汇编语言是一种低级语言,使用汇编语言可以实现对计算机内存、寄存器等硬件资源的直接操作,从而实现程序的功能。
本实验通过编写汇编语言程序,加深对汇编语言的理解。
二、实验过程1. 确定实验环境:使用DOSBox模拟DOS环境进行汇编程序编写和调试。
2. 编写第一个汇编程序:编写一个简单的汇编程序,将字符串“Hello, World!”输出到屏幕上。
3.程序分析:a.定义要输出的字符串,将字符串存储在数据段中。
b.设置段寄存器,将数据段地址加载到DS寄存器中。
c.设置显示模式和光标位置。
d.将字符串逐个字符输出到屏幕上。
e.关闭显示模式。
4. 编译运行:使用汇编语言的编译器将汇编程序转换成机器码,并在DOSBox中运行程序。
5.调试程序:根据程序运行结果和分析,调试程序中存在的错误,并进行改正。
三、实验结果与分析经过多次编写和调试,我们成功实现了将字符串“Hello, World!”输出到屏幕上的功能。
通过程序分析和调试过程,加深了对汇编语言的理解和掌握。
四、实验总结通过本次实验,我们深入了解了汇编语言的基本概念、语法结构和程序设计方法。
通过实际编写汇编语言程序,对汇编语言的编写方法有了更加深入的认识。
同时,通过调试程序的过程,我们也提高了自身的问题解决能力和分析能力。
在今后的学习和工作中,我们将继续学习和深入研究汇编语言,提高自己的编程能力和创新思维能力。
总体而言,本次实验给我们带来了很大的收获,我们以后将更加努力地学习汇编语言,提高自己的编程水平,为以后的学习和工作做好充分的准备。
汇编语言教学大纲
汇编语言教学大纲一、引言汇编语言是计算机科学中非常重要的一门课程,它是计算机硬件和软件之间的桥梁。
本教学大纲将为学生提供全面的汇编语言学习指导,使他们能够理解和应用汇编语言进行底层编程。
二、课程目标1. 理解汇编语言的基本概念和原理;2. 掌握汇编语言的基本语法和指令集;3. 能够使用汇编语言进行编程和调试;4. 能够理解并解释计算机底层运行原理。
三、课程内容1. 汇编语言简介1.1 汇编语言概述1.2 汇编语言的应用领域1.3 汇编语言的优缺点2. 汇编语言基础2.1 运算器和寄存器2.2 数据传输指令2.3 算术指令2.4 逻辑指令2.5 控制指令3. 汇编语言程序设计3.1 汇编语言程序结构3.2 程序的编写与调试4. 汇编语言高级内容4.1 子程序和过程调用4.2 中断和异常处理4.3 设备驱动程序设计5. 汇编语言实践应用5.1 汇编语言的工具和环境5.2 汇编语言实例分析和编写四、教学方法1. 授课讲解:通过讲解理论知识和示范演示案例,向学生介绍汇编语言的基本概念和操作方法。
2. 实践操作:通过指导学生使用汇编语言工具和环境,进行编写和调试汇编语言程序。
3. 讨论和互动:鼓励学生在课堂上提问、讨论和分享经验,增强对汇编语言的理解和应用。
五、考核方式1. 平时成绩:包括课堂参与、作业完成情况等。
2. 课程项目:要求学生自行设计和完成一个汇编语言程序项目,并进行演示和讲解。
3. 期末考试:考察学生对汇编语言理论知识的掌握和应用能力。
六、参考书籍1.《汇编语言程序设计》2.《汇编语言原理与实践》3.《计算机组成与汇编语言程序设计》七、教学进度安排本课程计划为期15周,按照以下进度进行教学和学习:第1周:引言和汇编语言简介第2周:汇编语言基础第3周:汇编语言基础第4周:汇编语言程序设计第5周:汇编语言程序设计第6-7周:汇编语言高级内容第8-9周:汇编语言高级内容第10-11周:汇编语言实践应用第12-13周:汇编语言实践应用第14周:复习和总结第15周:期末考试八、教学资源本课程所需的教学资源包括计算机实验室、汇编语言开发工具和参考资料。
《汇编语言程序设计》实验教学大纲
《汇编语言程序设计》实验教学大纲实验教学大纲《汇编语言程序设计》一、实验目的1.学习并掌握汇编语言程序设计的基本原理和方法。
2.培养学生的计算机底层编程能力,提高其对计算机工作原理的理解。
二、实验内容1.汇编语言程序的基本语法和指令2.数据传送、算术运算和逻辑运算指令的使用3.条件分支和循环控制指令的应用4.子程序和函数的设计与调用5.实践中的程序调试和测试技巧三、实验环境和工具1.计算机硬件:至少一台支持汇编语言开发的计算机2. 操作系统:Windows、Linux等3.汇编语言开发工具:MASM、NASM等4.调试工具:调试器、PE浏览器等四、实验要求1.按照实验指导书的要求,独立完成实验任务。
2.熟悉并掌握相关的汇编指令和程序设计技巧。
3.理解并掌握调试工具的使用方法。
4.根据实验结果进行思考和总结,撰写实验报告。
五、实验流程1.实验前:预习相关课程内容,了解实验任务的要求和目标。
2.实验中:按照实验指导书的要求,完成实验任务,同时理解和掌握相关的理论知识,尽量独立思考解决问题。
3.实验后:总结和归纳实验中遇到的问题和解决方法,撰写实验报告。
六、实验内容详述1.实验一:汇编语言程序的基本语法和指令-学习汇编语言程序的基本结构和语法规则-掌握汇编指令的书写和使用方法2.实验二:数据传送、算术运算和逻辑运算指令的使用-学习数据传送指令的使用方法,实现变量的读写和数据传递-学习算术运算指令的使用方法,实现数值的加减乘除等操作-学习逻辑运算指令的使用方法,实现条件判断和逻辑运算3.实验三:条件分支和循环控制指令的应用-学习条件分支指令的使用方法,实现条件判断和跳转-学习循环控制指令的使用方法,实现循环操作和计数4.实验四:子程序和函数的设计与调用-学习子程序的设计和调用方法,实现程序代码的模块化和复用-学习函数的设计和调用方法,实现特定功能的封装和调用5.实验五:实践中的程序调试和测试技巧-学习程序调试技巧,如断点调试、单步执行等-学习程序测试技巧七、实验评分1.实验报告的撰写质量:20分2.实验任务的完成程度:60分3.实验中的操作和程序编写能力:20分八、参考教材1.《汇编语言程序设计》,李文娟编著,高等教育出版社,2024年2.《汇编语言程序设计教程》,汪金平编著,清华大学出版社,2024年以上是《汇编语言程序设计》实验教学大纲的内容,旨在帮助学生全面了解实验的目的、内容和要求,明确学习的流程和方式。
汇编语言程序设计实验教学大纲
《汇编语言程序设计实验》教学大纲教学单位名称:计算机科学与技术学院课程名称:汇编语言程序设计实验英文名称:课程代码:07453007课程类别:专业实践教学环节课程性质:必修课开课学期:第5学期学时/学分:32学时/1学分面向专业:计算机科学与技术专业、网络与信息安全专业一、实验课程的教学任务和要求本实验的主要任务是从应用和实践的角度出发,使学生通过上机操作掌握本课程所讲述的程本课程内容。
共安排9个上机实验(32学时), 每次实验要求上机之前做好预习及教材上有关内容的复习,对每次上机实验的内容及实验目的要做到心中有数。
为了帮助学生明确有关语句的基本用法,程序设计的基本方法及程序调试的基本技巧,上机前要给学生讲解程序的作用及其设计方法。
每次实验完成后,都要进行小结并写出实验报告。
报告应具有以下内容:(1).实验目的。
(2).实验内容。
(3).程序(含注释)、实验结果、及运行情况分析。
(4).实验过程中出现的问题及解决方法。
二、实验课程的教学目的(1)使学生通过对计算机各功能部件的逻辑组成、工作机制、程序设计的学习及实验,建立完备的单台计算机整机概念。
(2)使学生通过汇编语言程序设计的学习,了解所用计算机硬件及使用软件扩大功能的实现方法,并为后继课程及今后工作中解决实际问题,打下一个良好的基础。
(3)通过实验课的学习,使学生受到软硬件实验的初步训练,实验操作能力得到提高。
掌握编程的基本方法,培养分析和解决问题的能力,以及掌握使用计算机的基本技能。
三、学生应掌握的实验技术及基本技能掌握基本dos命令的使用,掌握编辑器的使用,掌握汇编语言的调试方法,用汇编语言进行实验要求程序的调试。
四、实验项目内容、学时分配和每组人数(1).实验一 利用debug 调试程序 2学时实验目的:掌握调试程序debug 的使用方法。
( 可对用户程序进行各种检测调试,帮助用户进一步发现程序设计中的错误和不足。
debug 状态下,当首行显示“-”提示符时,就可以输入命令。
汇编语言指导书
实验内容及步骤 一、利用查表方法把DX的内容(十六进制数)转换成ASCII码 1、用A命令键入下列程序: MOV BX,1000 MOV DI,2000 MOV CX,4 LOP: PUSH CX MOV CL,4 ROL DX,CL POP CX MOV AL,DL AND AL,0F XLAT CLD STOSB LOOP LOP INT 20 2、用A命令在1000H处键入下列ASCII码并用D命令检查之: DB …0123456789ABCDEF? 用D命令检查时注意左边的ASCII码值和右边的字符。 4、用T命令逐条运行这程序到LOOP指令处,观察并记录每次运行结果,特别是SP和堆栈内容(用D命令检查)。 5、用G命令将此程序运行到结束,并用D命令检查2000H处所转换的结果。可注意屏幕右边的ASCII字符与DX是否一致。 二、数据串搬家程序: 1、用A命令键入下列程序: MOV SI,1000 MOV DI,1500 MOV CX,0F LOP: MOV AL,[SI] MOV [DI],AL INC SI INC DI LOOP LOP INT 20 2、用A命令DB伪指令在1000H键入下列字符串: ‘IBM_PC COMPUTER'
在操作时要注意提示信息,并按提示操作。 二、DEBUG 命令使用 1、键入 DEBUG 进入 DEBUG 控制状态,显示提示符 '- '。 2、用命令 F100 10F 'A' 将'A'的ASCII码填入内存。 3、用命令 D100 10F 观察内存中的十六进制码及屏幕右边的ASCII字符。 4、用命令 F110 11F 41 重复上二项实验,观察结果并比较。 5、用命令 E100 30 31 32 …… 3F将30H-3FH写入地址为100开始的内存单元中,再用D命令观察结果,看键入的十六进制数是 什么字符的ASCII码? 6、用H命令检查下列各组十六进制数加减结果并和你的手算结果比较: (1)34H,22H (2)56H,78H (3)A5,79H (4)1284H,5678H (5)A758H,347FH 7、用R命令检查各寄存器内容,特别注意AX,BX,CX,DX,IP及标志位中ZF,CF和AF的内容。 8、用R命令将AX,BX内容改写为1050H及23A8H。 三、熟悉汇编语言的编程过程 1、首先在运行菜单中运行CMD命令,进入DOS状态。 2、切入D:盘,进入MASM。 3、用EDIT <文件名.asm> 命令编辑下列源程序。 data segment message db "Hello World!",'$' data ends code segment assume cs:code,ds:data begin:mov ax,data mov ds,ax mov dx,offset message mov ah,9 int 21h mov ah,4ch int 21h code ends end begin 4、用MASM <文件名> 命令编译源程序。(如果出错,则需要重新编 辑,修改错误)。 5、用LINK <文件名>命令连接目标文件,生成可执行文件。(可以用 DIR命令查一下—)。 6、运行该可执行文件,检查是否正常输出字符串。 实验报告要求
《汇编语言与接口技术》课程实验大纲
《汇编语言与接口技术》课程实验大纲课程编号:B0606061S 课程名称:汇编语言与接口技术课内总学时: 48 实验学时:8×2一、实验课程的性质、目的和任务性质:《汇编语言与接口技术》是信息与计算科学专业开设的一门专业必修课程。
本实验是该门课程的课内实验。
目的:通过理论知识与上机实践结合,使学生建立起“程序存储和程序控制”的牢固概念,培养学生进行微机扩展的应用能力和独立分析问题、解决问题的能力。
任务:通过系统的实践教学锻炼,使学生具有一定的软硬件开发能力,熟悉使用汇编的编译环境,使学生加深理解微机原理的基本知识、常用的汇编语言命令等课程基本内容。
在Dos和汇编语言编程环境下,进行程序的编写和调试的训练。
二、实验内容、学时分配及基本要求三、考核及实验报告(一)考核:本课程实验非独立设课,实验考核以平时实验操作为主(70%),包括学生上实验课的课堂表现(如:有无缺勤、有无事先准备程序代码、课堂上是否认真实验以及实验结果等),结合实验后的实验报告内容(30%),综合评定实验成绩。
实验成绩记入课程平时成绩,实验成绩占总成绩的25%。
(二)实验报告:实验报告内容:包括实验名称、目的、任务(以简洁明了的叙述说明本次实验的任务和目标);实验内容、实验过程描述(包括算法分析过程以及源程序、运行结果等);分析和体会(包括实验结果分析,程序设计与调试过程所遇到的问题,问题解决中得到的经验和体会,进一步改进的设想)。
实验报告以文本形式递交。
实验报告要书写规范、文字简练、语句通顺、图表清晰。
四、主要仪器设备硬件:微型计算机;软件:TASM(或 MASM)、DOS命令环境五、教材及参考书教材:仇玉章.32位微型计算机原理与接口技术.北京:清华大学出版社,2002参考书:[1]谭毓安,张雪兰.Windows汇编语言程序设计教程.北京: 电子工业出版社, 2005[2]赵国相.微型计算机原理与汇编语言程序设计.北京: 科学出版社, 2004[3]朱玉龙,任文岚,朱彤.汇编语言程序设计.北京: 清华大学出版社, 2003。
汇编语言实验报告
汇编语言实验报告
1. 实验简介
本次实验是针对汇编语言的学习和实践,在实验中,我们将学习如何使用汇编语言编写程序、调试程序,并通过一系列实例来练习和巩固所学知识。
2. 实验目的
(这一部分可以根据实际情况来写,列举实验的具体目的和要求)
3. 实验环境及工具
(介绍实验所使用的软件环境和工具,如:编译器、调试器)
4. 实验步骤
(根据实验内容具体描述实验步骤,可以分为多个小节)
4.1 准备工作
在开始实验之前,需要进行一些准备工作,包括安装编译器、创建工作环境等。
4.2 实验一:简单的汇编程序
本实验通过编写一个简单的汇编程序来熟悉汇编语言的基本语法和指令集,包括数据传送、算术运算、逻辑运算等。
4.3 实验二:汇编程序的调试
在实验二中,我们将学习如何使用调试器对汇编程序进行调试,包括设置断点、查看变量值、单步执行等操作。
4.4 实验三:汇编程序的优化
本实验将通过优化代码来提高程序的执行效率,包括减少指令的使用、优化循环结构等。
5. 实验结果与分析
(对实验的结果进行总结和分析,可以包括程序的输出结果、性能分析等)
6. 实验总结
(针对本次实验的收获和心得体会进行总结,可以包括对汇编语言的理解、解决问题的思路等)
7. 实验感想
(对本次实验的感想和建议,如实验过程中遇到的困难、改进的方向等)
8. 参考文献
(列出本报告中所引用的参考文献)
注:该文章只是按照题目提示给出了一个大致的框架和构思,实际根据具体的实验内容和要求来编写每个小节的详细内容。
希望对你有所帮助!。
汇编语言上机实验汇总
汇编语言上机实验汇总汇编语言是计算机的低级语言,主要用于编写底层程序和驱动程序。
在学习汇编语言的过程中,学生通常需要进行一定数量的上机实验。
下面是一个汇编语言上机实验的汇总。
1.实验一:环境搭建-目标:搭建汇编语言开发环境2.实验二:基本语法-目标:学习汇编语言的基本语法和指令格式-内容:编写一个简单的汇编程序,包括数据段、代码段和堆栈段,以及常用指令(例如MOV、ADD、SUB、JMP等)的使用。
3.实验三:寄存器和内存操作-目标:熟悉汇编语言中的寄存器和内存的操作-内容:编写一个汇编程序,通过MOV指令将数据从内存中加载到寄存器中,然后进行运算,并将结果存储回内存。
4.实验四:条件分支和循环-目标:掌握汇编语言中的条件分支和循环结构-内容:编写一个汇编程序,使用条件分支指令(例如CMP、JE、JNE 等)实现一个简单的判断语句;然后使用循环指令(例如LOOP)实现一个简单的循环结构。
5.实验五:子程序和参数传递-目标:学习如何创建和调用子程序,并传递参数-内容:编写一个汇编程序,其中包含一个子程序,该子程序接受两个参数并返回它们的和。
然后在主程序中调用该子程序,并输出结果。
6.实验六:中断和异常处理-目标:了解中断和异常处理机制,并在汇编程序中处理中断或异常-内容:编写一个汇编程序,其中包含一个中断处理程序,当发生特定的中断时,该处理程序将执行一些特定的操作。
7.实验七:串操作和文件操作-目标:学习汇编语言中的串操作和文件操作-内容:编写一个汇编程序,使用串操作指令(例如MOVS、LODS、STOS等)操作字符串;然后使用文件操作指令(例如OPEN、READ、WRITE 等)读取或写入文件。
8.实验八:图形和音频处理-目标:了解汇编语言中的图形和音频处理- 内容:编写一个汇编程序,使用图形库(例如BGI、OpenGL、DirectX)绘制简单的图形或运行一个音频文件。
这些上机实验可以帮助学生逐步掌握汇编语言的基本知识和技能,并为以后的高级汇编语言编程打下基础。
《汇编语言》实验教学大纲.
《汇编语言》实验教学大纲
课程名称:汇编语言
英文名称:Assembly Language
课程类别:专业基础实验课程编号:1210022
大纲主撰人:刘三荣大纲审核人:李旭宏
一、学时:18学时
二、适用专业及年级:计算机专业本、专科一年级
三、课程目标与基本要求
学习程序设计的基本方法和技能,熟悉掌握用汇编语言设计、编写、调试和运行程序的方法,为后续课程打下坚实的基础。
本课程是汇编语言的实验课,在教学方法上,采取讲课与实验相结和的方式。
四、主要仪器设备
硬件环境:微型计算机
软件环境:DOS或WINDOWS操作系统 MASM开发套件
五、实验项目及教学安排
六、考核方式及成绩评定
根据学生的实验预习、实验纪律、实验动手能力、实验报告结果、课程设计及编程技巧,进行综合评定,给出优(90)、良(70)、及(60)、不及格。
实验成绩占本课程总成绩20%,对缺实验成绩或不及格者,《汇编语言》课程不予通过。
七、实验教科书、参考书
1、实验教科书李目海.汇编语言.山东大学出版社
2、实验参考书沈美明.IBM-PC汇编语言程序设计实验教程.清华大学出版社
注:课程编号依据教务处编教学计划中统一编号。
实验五汇编语言程序设计实验(一)
实验五汇编语言程序设计实验(一)一、实验目的1、了解和掌握汇编语言子程序和主程序的设计。
2、掌握循环程序的设计。
3、掌握汇编语言主程序与子程序的调用和参数传递。
4、进一步熟悉在PC机上建立,汇编,链接,调试和运行8086、8088汇编语言程序的过程。
二、实验内容1、复习汇编语言源程序的上机过程:2、编写一个完整程序(包含循环设计和子程序设计)在以strg为首地址的缓冲区中存放着1个字符串,以-1作为结束标志,编程统计字符串长度,并将结果存入lenth单元。
要求统计字符串用子程序完成。
data segmentstrg db ‘abcd’,-1lenth dw ?data endscode segmentassume cs:code,ds:datastart:mov ax,datamov ds,axlea dx,strgcall scountmov lenth,bxmov ah,4chint 21hscount proc nearpush sixor bx,bxmov si,dxnext:cmp byte ptr[si],-1jz overinc bxinc sijmp nextover:pop siretscount endpcode endsend start三、实验器材IBM PC 微机一台四、实验要求1、正确理解本次实验的目的,内容和原理。
2、能编写相应的程序五、实验报告要求完成下面任务:从键盘输入1个长度小于100的字符串,存入以buff 为首地址的缓冲区,其中如有大写字母,要求用子程序转换成小写字母,字符串以回车键作为结束。
写出操作步骤,程序清单,程序注释,实验现象。
汇编实验汇总
汇编语言第一次实验实验目的1)了解汇编语言程序的基本结构3)掌握汇编语言程序编写、编译、链接、运行的基本步骤和命令3)自学并掌握运用DEBUG命令进行程序调试的基本命令实验题目1.选用某编辑器(MASM或QASM),输入Helloworld.asm程序(照着实验要求及辅导的图敲,简单理解即可,后面会详细讲)2.使用masm与link命令汇编并运行程序3.使用ml命令汇编并运行程序4.自学”Debug调试程序”,了解其基本选项的应用5.查看“Hello World”字符串所在的内存地址,使用debug工具将“W”改为“w”6.掌握选项的使用:A U D E G H P T Q R 不解释汇编语言第二次实验实验目的2)熟练掌握汇编语言程序的书写、汇编、连接等步骤2)掌握基本的debug命令,并对程序进行基本的调试实验题目1.将给定程序输入,并汇编、连接后生成可执行文件lab2.exe2.Debug lab2.exe3.尝试(运用debug):1)将内存中字符串“hello world”改写成“HELLO WORLD”,并显示修改后的结果e指令2)展示3F24+4A2B和3F24-4A2B的计算h指令3)在内存中输入MOV AX, 50 a指令ADD AX,AX执行并查看AX的变化,修改AX的值为FFFF r指令;用于前两次实验的hello world代码.MODEL SMALL.STACK ;默认为1k,也可指明大小.CODESTR DB 0DH,0AH,'HELLO WORLD!',0DH,0AH,'$'.STARTUPLEA DX,STRMOV AH,09HINT 21H.EXIT 0.END;memory_model有如下7种存储模型:---- Tiny: 所有数据和代码都放在一个段内,数据和代码都是近访问,Tiny程序可以写成.com文件形式,com程序必须从0100H存储单元开始.此模型一般用于小程序.Small: 所有数据放在一个64K数据段中内,所有代码放在另一个64K代码段内,数据和代码都是近访问.Medium: 代码段使用多个段,一般一个模块一个段,而数据则合并成一个64K的段组,数据是近访问,代码可以远访问.Compact: 所有代码都放在一个64K代码段内,数据可放在多个段内,数据可远访问, 代码是近访问.Large: 代码和数据都可用多个段,代码和数据都可以远访问.Huge: 与Large模型相同,差别是允许数据段大小超过64K.Flat: 允许用户用32位偏移量,只能在OS/2下或其他保护模式操作系统下使用, MASM6可以支持此模型.汇编语言第三次实验实验目的熟练使用Debug,理解数据在内存中的存放,并理解并练习各种寻址方式。
(完整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、必须做好实验前的一切准备工作,包括程序测试/调试的详细过程安排等。
在实验中应严格按照预先确定的实验过程进行实验,决不允许在实验过程中准备实验程序、测试数据与测试/调试过程计划。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《汇编语言》实验大纲适用于计科专业2003级汇编语言实验主要使学生掌握DEBUG调用程序中各命令的使用方法,掌握MASM汇编程序对汇编语言源程序进行编辑、汇编、连接、装配、调试到运行的上机操作方法。
本教程要求学生熟练掌握汇编语言指令练习、顺序程序设计、分支程序设计、循环程序设计和子程序设计。
基本演示1 汇编语言实验操作方法一.实验的基本方法(MASM宏汇编子目录下)1.在DEBUG下运行汇编指令或简单小程序在DEBUG提示符下,用汇编命令A:输入汇编指令或简单小程序,用单步命令T或全程命令G来执行,并检查执行中间结果与最后结果。
2.标准汇编程序上机方法A.建立ASM文件,用EDIT .COM全屏幕编辑文件或其他编辑文件建立扩展名为ASM的源程序.B.用MASM(或ASM)产生扩展名为OBJ目标文件。
C.用LINK产生扩展名为EXE可执行文件。
D.在DEBUG下,把文件调入内存,调试程序。
E.在DOS下可直接执行扩展名为EXE的文件。
二.汇编语言的工作环境.A.硬件环境IBM-PC及其系列机内存256K字节以上外存:硬盘或至少一个软驱CPU:80586以上显示器:单色或彩色显示器键盘:标准ASCII码键盘B.软件环境编缉程序:或其他编缉程序汇编程序:MASM.EXE 或ASM.EXE连接程序:LINK.EXE调试程序: 或DEBUG.EXE基本演示2 DEBUG命令的使用A.程序调用命令C>DEBUG [D:] [PATH] [FILENAME[.EXT]] [PARM1] [PARM2]其中,文件名是被调试文件的名字。
如未键入文件名。
可用DEBUG命令N和L把需要文件装入存储器后再调试。
D指定驱动器,PATH为路径,FILENAME为文件名,PARM为命令参数B.显示存储单元命令-D [ADDRESS]或;ADDRESS 地址-D [RANGE] ;RANGE 范围C.修改存储单元内容命令-E ADDRESS [LIST]D.检查和修改寄存器内容命令-R [REGISTER NAME] ;Register name 寄存器名字E.汇编命令-A [ADDRESS]F.跟踪命令-T [=ADDRESS] [VALUE] ;Value 变量值G.运行命令-G [=ADDRESS ] [ADDRESS2 [ADDRESS3]H.反汇编命令-U [ADDRESS]-U [RANGE]I.命名命令-N FILESPECS [FILESPECS]FILESPECS的格式可为[D:][PATH]FILENAME [.EXT]J.装入命令-L [ADDRESS[DRIVE SECTOR SECTOR]] ;DRIVE SECTOR 磁盘扇区K.写命令W ADDRESS DRIVE SECTORL.退出命令-Q基本演示3 汇编语言指令练习1.实验目的A.掌握DEBUG中汇编命令A,反汇编命令U,单步命令T,显示存储单元命令D,修改存储器单元命令E,修改与显示寄存器单元命令R,退出Q等命令的用法.B.熟悉汇编中传送、逻辑等指令。
C.了解指令不同的寻址方式,注意规定或限制使用的寄存器如:双操作数指令中,源操作数和目的操作数的地址不能同时为存储器地址,段跨越前缀不能使用CS,操作对象是地址还是地址中的内容,指令隐含使用的寄存器..2.实验要求A.对DEBUG中A,U,T,D,E,R,Q等命令按不同用法进行练习.B.汇编中传送、逻辑等指令.3.实验指令内容A.MOV.PUSH.POP.B.AND.OR.XOR.TEXT.C.ADD.SUB.D.MUL.DIV.4.实验准备A.认真阅读本实验指导.B.按实验内容要求,理解指令功能,编写不同寻址方式的指令清单5.实验步骤A.在DOS提示符下,在MASM子目录下,按DEBUG及回车.B.在DEBUG提示符下,按A进入小汇编,输入源指令.C.用U反汇编,检查输入源指令是否正确,用T或G,调试与运行指令.D.检查指令运行结果,用E,R检查与修改内存,寄存器内容.E.重复B.C.D过程.6.实验报告A.目的,要求,内容及算法思想.B.不同寻址方式,注意规定或限制使用的寄存器.C.指令清单.D.实验心得.基本演示4 顺序程序设计1.实验目的掌握汇编语言程序设计的基本步骤,分析问题,确立算法,画出程序流程图.说明流程图中各功能的含义和表示法。
分配工作单元和存储空间。
根据程序算法流程选择合适的指令编制汇编语言源程序。
本实验着重掌握顺序程序的设计基本方法和技巧。
2.实验要求A.程序要结构化:简明、易读和易调试B.执行速度较快C.占用存储空间较少3.实验内容A:基本题:编一段程序,在内存中自SQTAB(0200H)地址开始的连续10个单元中存放0-9的平方值。
要求利用简单的查表法NUM(0210)单元中指定数(0-9)的平方值,并将所求平方值存入RESULT(0211)单元。
B:选做题:将一字节压缩BCD码转换为二个ASCII码。
4.实验准备A.认真阅读本实验指导B.按实验内容要求,确定算法,画流程图,编写程序.5.实验步骤A.首先进入编辑器,输入源程序,检查正确后,用MASM汇编成目标文件,用连接成可运行文件,若正确无误,则用DEBUG调入内存,进行调试.B.调试与运行程序:用单步,短点,连续等方法调试与运行程,根据存储器,寄存器与标志位的内容与变化.如:SP,IP,CF,SF,ZF,OF,I等,检查指令结果,程序中间结果及程序运行最后结果是否正确,排除软件错误,直到达到本实验目的为止.C.记录程序入口参数与出口参数,重要的指令结果,程序中间结果及程序运行最后结果.6.实验报告A.目的,要求,内容及算法思想.B.程序流程图,程序清单,重要部位说明.如:重要的指令功能,重要的程序段功能.C.程序入口参数与出口参数,重要的指令结果,程序中间结果及程序运行最后结果.D.实验心得及有意义的建议基本演示5 分支程序设计1.实验目的掌握分支程序设计的原理和方法,重点掌握各种分支程序中形成和判断条件而产生的程序段的设计方法和技巧.2.实验要求A.如何产生条件B.如何对条件进行判断C.如何实现分支3.实验内容A.基本题:用地址表法,完成下面要求的多分支程序的设计。
根据MODE单元中的模式字(0-7)分别转向L0-L7标号处执行。
L0-L7处分别完成显示‘0’-‘7’字符既:当MODE=0时,转L0标号,完成显示‘0’.当MODE=1时,转L1标号,完成显示‘1’.当MODE=2时,转L2标号,完成显示‘2’.当MODE=3时,转L3标号,完成显示‘3’.当MODE=4时,转L4标号,完成显示‘4’.当MODE=5时,转L5标号,完成显示‘5’.当MODE=6时,转L6标号,完成显示‘6’.当MODE=7时,转L7标号,完成显示‘7’.B.选做题:统计学生成绩,分别统计低于60分,60—69分,70—79分,80-89分,90-99分及100分的人数,并存放到S5,S6,S7,S8,S9及S10单元中。
4.实验准备A.认真阅读本实验指导B.按实验内容要求,确定算法,画流程图,编写程序.5.实验步骤A.首先进入编辑器,输入源程序,检查正确后,用MASM汇编成目标文件,用连接成可运行文件,若正确无误,则用DEBUG调入内存,进行调试.B.调试与运行程序:用单步,短点,连续等方法调试与运行程序,根据存储器,寄存器与标志位的内容与变化.如:SP,IP,CF,SF,ZF,OF,I等,检查指令结果,程序中间结果及程序运行最后结果是否正确,排除软件错误,直到达到本实验目的为止.C.记录程序入口参数与出口参数,重要的指令结果,程序中间结果及程序运行最后结果.6.实验报告A.目的,要求,内容及算法思想B.程序流程图,程序清单,重要部位说明.如:重要的指令功能,重要的程序段功能.C.程序入口参数与出口参数,重要的指令结果,程序中间结果及程序运行最后结果.D.实验心得及有意义的建议.基本演示6 循环程序设计1.实验目的掌握循环程序设计的原理和方法,重点掌握循环程序结构的形式和常用循环程序的控制方法和技巧.2.实验要求A.置循环参数的初值B.循环体构成C.如何实现循环控制3.实验内容A.基本题:计数 1+2+3+...+100B.选做题:把BX寄存器内的二进制数用十六进制数的形式在屏幕上显示出来.4.实验准备A.认真阅读本实验指导B.按实验内容要求,确定算法,画流程图,编写程序.5.实验步骤A.首先进入编辑器,输入源程序,检查正确后,用MASM汇编成目标文件,用连接成可运行文件,若正确无误,则用DEBUG调入内存,进行调试.B.调试与运行程序:用单步,短点,连续等方法调试与运行程序,根据存储器,寄存器与标志位的内容与变化,如:SP,IP,CF,SF,ZF,OF,I等,检查指令结果,程序中间结果及程序运行最后结果是否正确,排除软件错误,直到达到本实验目的为止.C.记录程序入口参数与出口参数,重要的指令结果,程序中间结果及程序运行最后结果.6.实验报告A.目的,要求,内容及算法思想.B.程序流程图,程序清单,重要部位说明.如:重要的指令功能,重要的程序段功能.C.程序入口参数与出口参数,重要的指令结果,程序中间结果及程序运行最后结果.基本演示7 子程序设计1.实验目的掌握子程序设计的原理和方法,重点掌握子程序结构的形式和常用子程序的控制方法和技巧.采用子程序设计以增加程序的可读性,有利于程序的模块化和自顶向下的设计方法的实现.2.实验要求A.子程序定义及相对应的调用方法.B.子程序设计时需建立子程序的功能说明C.子程序现场保护和现场恢复D.子程序的输入参数和输出参数的确定及传递方法,可利用寄存器,内存或堆栈传递参数.E.子程序套调用时,注意任何存放断点和寻找短点进行返回.F.掌握常用DOS系统功能子程序的调用.3.实验内容A.基本题:十进制数到十六进制数转化程序.程序要求从键盘取得一个十进制数,然后以十六进制形式在屏幕上显示出来.B.选做题:利用堆栈传递参数,实现对两个已定义的数组分别求和.4.实验准备A.认真阅读本实验指导B.按实验内容要求,确定算法,画流程图,编写程序.5.实验步骤A.首先进入编辑器,输入源程序,检查正确后,用MASM汇编成目标文件,用连接成可运行文件,若正确无误,则用DEBUG调入内存,进行调试.B.调试与运行程序:用单步,断点,连续等方法调试与运行程序,根据存储器,寄存器与标志位的内容与变化,如:SP,IP,CF,SF,ZF,OF,I等,检查指令结果,程序中间结果及程序运行最后结果是否正确,排除软件错误,直到达到本实验目的为止.C.记录程序入口参数与出口参数,重要的指令结果,程序中间结果及程序运行最后结果.6.实验报告A.目的,要求,内容及算法思想B.程序流程图,程序清单,重要部位说明.如:重要的指令功能,重要的程序段功能.C.程序入口参数与出口参数,重要的指令结果,程序中间结果及程序运行最后结果.。