英国威廉希尔公司_WilliamHill官网-中文网站

XF002018-汇编语言实验
发布时间: 2018-08-31 浏览次数: 27

《汇编语言实验》教学大纲

Experiments of Assembly Language

课程代码:XF002018学时:32学分:1

适用专业:计算机 课程性质:选修

撰稿人:吴秋兰审定人:

  

一、实验课的性质与任务

《汇编语言》和《汇编语言实验》均是计算机科学与技术专业的重要专业基础课,两者密切配合。《汇编语言实验》的任务是使学生通过上机编写、调试程序,加深对理论知识的理解;培养学生的程序设计能力和程序分析能力,为深入学习后续课程和从事计算机硬件、软件开发打下坚实的基础。

二、实验目的与要求

使学生通过上机编写、调试程序掌握汇编语言上机过程;掌握汇编语言程序的基本结构、设计方法和基本技能,提高程序设计水平。

三、实验项目设置情况

序号

实验项目名称

学时

开出要求

实验项目类型

必做

选做

基础型

综合设计

研究创新

演示

验证

1

汇编语言上机过程

4


  

  

  

2

顺序结构程序设计

4





3

分支结构程序设计

6

  

  

  

  

4

循环结构程序设计

6

  

  

  

  

5

子程序设计

4

  

  

  

  

6

DOS功能调用应用

4

  

  

  

  

7

综合程序设计

4

  

  

  

四、各实验项目教学内容

实验项目一:汇编语言上机过程4学时

(一)实验目的要求

1、掌握汇编语言上机过程。

2、熟悉debug环境,掌握常用的debug命令。

(二)实验材料和仪器设备

计算机

(三)实验内容

1、练习常用的DEBUG命令

1)进入DEBUG,用D命令显示从2000H开始的内存单元的内容,用E命令修改2000H2003H四个内存单元中的内容。

2)用A命令在内存100H处键入下列内容:

MOVAX,1234

MOVBX,5678

XCHGAX,BX

MOVAH,35

MOVAL,48

MOVDX,75AB

XCHGAX,DX

①用U命令进行反汇编。

②用T命令逐条运行这些指令,每运行一行记录有关寄存器及IP的变化情况。并注意标志位有无变化。

3)编写程序将两个数0102H0304H存放在2000H2003H存储单元处,进行求和运算,结果送AX

A命令将源程序写入内存,用G命令执行程序,用R命令查看结果后,用U命令反汇编,用T命令看程序单步执行过程及中间结果,用Q命令退出DEBUG

2、练习汇编语言上机过程

编写源程序求绝对值,该数存放在BUF字单元中。

1)用EDIT.COM建立ASM文件

2)用MASM.EXE产生OBJ文件

3)用LINK.EXE产生EXE文件

4)用DEBUG.COM调试程序 ,记录结果。

实验项目二:顺序结构程序设计4学时

(一)实验目的

1、进一步掌握汇编语言上机过程。

2、进一步掌握常用的debug命令。

3、掌握顺序结构的程序设计方法。

(二)实验材料和仪器设备

计算机

(三)实验内容

1、已知某班学生的英语成绩按学号(从1开始)从小到大的顺序排列在TAB表中,要查的学生的学号放在NO所指向的存储单元中。编写程序查找学号为10的学生的成绩。查表结果放在ENGLISH所指向的存储单元中。

2、试编写程序计算以下表达式的值。

=v-(x*+-540))/x

式中x、y、z、v均为有符号字数据。设x、y、z、v的值存放在字变量X、Y、Z、V中,结果存放在双字变量W之中。

实验项目三:分支结构程序设计6学时

(一)实验目的

1、掌握转移指令的应用。

2、掌握分支结构程序的设计方法。

(二)实验材料和仪器设备

计算机

(三)实验内容

1、已知在X单元中存放着一个8位无符号数,判断该数的奇偶性。如是奇数存入N1单元,否则存入N2单元。

2、在以BUF为首址的存储单元,存放68位无符号数,求出其中大于零的数的个数,并将结果存入字节单元RESU中。

3、设在ABC三个字节单元中分别存放三个有符号数,如果三个数都不为0,则求出三个数的和放到D单元中;如果其中有一个为0,则将其它两单元也清0

4、设x为带符号字节数,放在X所指向的存储单元中,编程求下列分段函数的值,结果放到Y所指向的存储单元。

3x8( x> 10)

y x(10 >= x >= -10)

2x10(x< -10)

  

实验项目四:循环结构程序设计6学时

(一)实验目的

1、掌握循环指令的用法。

2、掌握循环结构程序的设计方法。

(二)实验材料和仪器设备

计算机

(三)实验内容

1、从STR开始存放一个字符串,统计串中字符A的个数,存放在RESU字节单元。

2、从BUF开始存放若干带符号字节数据,将它们相加并将结果(超过一个字节范围)存放到字单元SUM中。

3、将两个多字节压缩BCD码相加,假定两个压缩BCD码分别从BCD1BCD2开始存放,结果从BCD3开始存放。

4、设从STRING开始存放一个以#为结束标志的字符串,把字符串中的字符分类,数字送入NUM开始的内存区,字母送入CHAR开始的内存区,其它字符存到OTHER开始的内存区。

5、在以BUF为首址的字节存储区中有N个有符号数,编写程序将它们按小到大的顺序排列在BUF存储区中。

实验项目五:子程序设计4学时

(一)实验目的

1、掌握子程序的概念和设计方法。

2、掌握编写子程序说明文件的方法。

3、掌握入口参数和出口参数的设置方法。

(二)实验材料和仪器设备

计算机

(三)实验内容

1、编写子程序,将字节单元中的2进制数转换成10进制数输出。

2、编写求16位数的绝对值的子程序,并在DEBUG中调试、验证。

3、编写子程序,将三个8位符号数中的最大值存入MAX单元,写出子程序调用说明文件。

4、从STR开始存放一个字符串,统计串中字符A的个数,存放在RESU字节单元,要求用堆栈传递参数。

实验项目六:DOS功能调用4学时

(一)实验目的

掌握DOS功能调用的概念和方法。

(二)实验材料和仪器设备

计算机

(三)实验内容

1、编程,从键盘接收一位10进制数,以二进制形式显示输出。

2、利用DOS的功能调用,在显示器上显示“Who are you?”,然后接收你的名字输出在屏幕上。

3、从键盘接收20个字符存入某一缓冲区,按ENTER之后显示这些字符。

实验项目七:综合程序设计4学时

(一)实验目的

掌握综合程序设计方法。

(二)实验材料和仪器设备

计算机

(三)实验内容

1、在以BUF为首址的字节存储区中有N个有符号数,编写程序将它们按大到小的顺序排列在BUF存储区中。

2、在以TABLE开始的内存区存放着0~9ASC码,编写程序,通过键盘输入0~9之间的任意一个数,从内存中查出该数的ASC码,把查出的结果显示在屏幕上。(要求:键盘输入通过调用子程序实现。)

3、设从内存单元BUF开始存放一个字符串“C1A23DCACA”,编写完整的源程序统计字符串中大写字母的个数,并以16进制的形式显示在屏幕上(大写字母的个数不超过一个字节的范围)。(要求:结果显示通过调用子程序实现)

五、实验报告要求

实验完毕,根据预习和实验中的现象等,完成实验报告。实验报告包括以下内容:

实验(编号)实验名称

(一)实验目的

(二)实验内容

(三)流程图和源程序

画出程序流程图,写出源程序。

(四)问题讨论

写出实验过程中遇到的主要问题及解决办法。

六、课程考核方式及成绩评定

(一)考核方式

根据学生实验预习、完成的情况、实验报告的质量及平时的学习态度等全面评定成绩。

(二)课程成绩评定办法

实验课成绩单独按优秀、良好、中等、及格和不及格五级记录考试成绩。学生的实验成绩应以平时考查为主,实际操作实验的优劣作为主要考核依据。

评定各级成绩时,可参考以下标准:

1)优秀

能正确理解实验的目的要求,能独立、顺利而正确地完成各项实验操作,操作规范,会分析和处理实验中遇到的问题,能掌握所学的各项实验技能,能较好地按时完成实验报告及其它各项实验作业,有一定创造精神和能力。有良好的实验室工作作风和习惯。能认真遵守各项规章制度。

2)良好

能理解实验的目的和要求,能认真而正确地完成各项实验操作,操作规范,能分析和处理实验中遇到的一些问题。能掌握大部分所学实验技能。能较好地按时完成实验报告和其它实验作业。有较好的实验习惯和工作作风。能认真遵守各项规章制度。

3)中等

能理解实验目的要求,能认真努力进行各项实验操作,但技巧较差,操作较规范,。能分析和处理实验中的问题,掌握实验技能的大部分。能完成各项实验作业和报告。工作作风较好。能认真遵守各项规章制度。

4)及格

基本能理解实验目的要求,基本能进行各项实验操作,但实验技能差,操作不够规范。遇到问题常常缺乏解决的办法,在别人启发下能作些简单处理,但效果不理想。能完成实验报告和其它实验作业,能遵守实验室各项规章制度。

5)不及格

不能理解实验要求,不具备实验技能。不预习实验,不能独立完成实验,操作不规范。不按时上交实验报告,遇到问题时说不明原因,在教师指导下也较难完成各项实验作业。不遵守实验室规章制度。

七、实验应配套的主要仪器设备及台(套)数(以一个实验教学班为标准)

微型计算机(30台)。

  

附:教学参考资料

1选用的教材:

徐建民,《汇编语言程序设计》,电子工业出版社出版,2010年6月,第三版。

2主要参考书:

[1]沈美明IBM-PC汇编语言程序设计实验教程,清华大学出版社20126月,版。

[2]沈美明,《IBMPC汇编语言程序设计》,清华大学出版社,20126月,第二版。


Baidu
sogou