汇编语言范文

时间:2023-12-03 07:33:56

汇编语言

汇编语言篇1

关键字:汇编语言;教学;探讨

中图分类号:TP3-4 文献标识码:A 文章编号:1007-9599 (2012) 21-0000-02

1 《汇编语言》课程概要及教学现状

《汇编语言》是普通高校计算机科学与技术及其它信息类相关专业的主要课程,绝大部分高校的计算机专业都把它列入专业核心课或主干课中。本课程一般开设在大二,前导课为《C语言程序设计》(或其它高级语言),《数字电子技术》等,相关或后续课程有《计算机组成原理》、《接口技术》、《操作系统》、《编译原理》等。汇编语言是一种低级语言,它涉及到机器的底层,与硬件密切相关,因此,其应用主要集中在涉及硬件或系统的核心层面,应用面相对较窄,而且在涉及硬件的某些开发中,高级语言因其易于使用目前部分替代了汇编语言,面对蓬勃发展的高级语言应用特别是Web应用等,汇编语言显得有些黯然失色,因此,从实用性考虑,汇编语言的教学遇到了一定阻力,学生学习积极性不高,目的不明确,这种情况是《汇编语言》教学中普遍存在的现象。这种问题的解决需要有两方面的努力,一是教师要发挥主导作用,端正学生的认识,二是要在教学内容和手段上进行改革。

2 《汇编语言》的作用和意义

在色彩纷呈的计算机软件开发中,汇编语言的应用比较狭窄,很多早期的应用场合逐渐被高级语言取代,所以很多同学会认为汇编语言用处不大,主观上不重视,再加上汇编语言编程和调试都比较繁琐,所以很多同学在汇编语言学习中感到无所适从,严重影响学习成效。作为教师,一定要在课堂上正确引导学生,使学生对汇编语言有正确的认识。这种引导集中体现在第一次课的绪论部分要上好,同时要贯穿于后续课程中。

汇编语言的应用虽然减弱,但是其作用不可替代。随着芯片及硬件技术的提高,计算机整体速度和性能大幅提升,过去很多要考虑硬件开销的场合现在已不复存在,所以汇编语言的应用减弱甚至被取代是很自然的事情,是技术进步的集中体现,但这并不意味着汇编语言没有作用了,相反在汇编语言主要的应用场合其仍然发挥重要作用,就像是教科书中告诉学生的,汇编语言是最直接有效控制计算机硬件的,代码效率最高的编程语言,就应用来说汇编语言是偏重于系统底层和硬件的,如果学生以后从事系统开发及硬件应用、实时控制等方面的工作汇编语言应用是必不可少的,所以单从应用来说,汇编语言的学习也是很有意义的,而且汇编语言是低级语言,其应用却是“高端”和“专业”的。非计算机专业的同学通过学习高级语言也可以成为程序员,也可以进行应用开发,计算机专业的同学和他们的差别就在于类似《汇编语言》等这样的专业核心课程是否学习掌握,是否有专业的功底去做核心的、大规模的、创新的应用开发。

诚然,随着扩招而来的各种效应,学生的学习也变得相当务实,有些学生会觉得汇编语言固然有用,但自己不打算从事这方面工作,Web及数据库应用等比较热,学学这些就可以了。针对这些错误认识,教师应站在课程体系设置及课程的内在联系的高度,在不同的时段从不同的角度告诉学生汇编语言能从哪些方面帮助自己获得知识和能力,在程序设计能力培养、对计算机的认识理解包括对其它课程的理解,汇编语言都是大有益处的,确实是本专业的一门核心课程,应当下工夫学好。

除了教师自己在课堂上对学生的宣讲和引导外,还应充分发挥和利用媒体及其它专业人士的影响,切身说法,互联网给了我们这种极大的可能性,所以给学生介绍一些网上学长或专业人士的学习体会、应用经验,无疑会对学生的学习产生影响,因为大家的看法是一致的,那就是汇编语言很重要,应该学好。

3 《汇编语言》课程定位及教学

《汇编语言》教学中的问题来自两方面,一方面是学生,一方面在教师自身,很多讲授《汇编语言》的教师自己在认识上也存在偏差,所以这门课程的定位必须要清晰,否则它的价值和合理性就会遭到怀疑。汇编语言是一种低级语言,是面向系统底层的,我们不能功利地把它和高级语言类比,像高级语言那样相对简单轻松地学习仅仅是一种愿望。Randall Hyde在他的名著《The Art of Assembly Language》(《汇编语言编程艺术》)中写到:“To write good assembly language programs requires a strong knowledge of the underlying hardware(编写好的汇编语言程序需要有强大的底层硬件认知)”,所以,汇编语言的底层定位非常重要,不能试图用高级语言的内容和方法影响汇编语言教学,要从汇编语言自身的应用和特点出发,这样才能教好这门课,让学生把握住这门课的精髓。

明确了底层的定位,很多事情就会清晰,要掌握什么内容,需要什么样的教学过程就不再有疑问,教师要做的事情就是要把这些内容清晰合理地讲授给学生。

比如说,《汇编语言》教学中的程序设计例子,有些来源于高级语言,这样的例子作为熟悉指令或说明某些算法等学生易于接受,但是主要的例题和作业我们要突出汇编语言的特色,尽量去面向底层,这样有意识地引导,学生就会逐渐理解和掌握汇编语言。比如计算类的编程,多精度的计算怎么实现,如何用加法和位操作实现乘法等等,这样的例子就能突出底层特点,也会激发学生对《汇编语言》的学习兴趣。再比如,汇编语言的调试要用到Debug等调试工具,这是作为计算机专业的学生应当学习掌握的,不应该有什么疑问。所以,课程的定位和教师的引导明确了,学生学习的态度就端正了,尽管汇编语言的编程、调试过程相对复杂,步骤较多,但低级语言有它自己的特点,围绕自身特点和应用组织教学,学生的学习兴趣不会亚于学习高级语言。

通过汇编语言这种底层编程的学习和训练,可以加深学生对高级语言及相关计算机知识和理论的学习理解。比如高级语言中的变量,通过汇编语言的学习就会深刻理解,包括数据类型及存储的概念特别是对指针的理解等等;再比如对ASCII码的认识,很多同学就是学习了汇编语言才明白为什么会有ASCII码,数据文件和文本文件究竟有什么不同。教师在教学中应把这些作为知识点进行类比、说明,让学生把知识融会贯通起来。

4 《汇编语言》教学中应注意的问题

4.1 课程安排

《汇编语言》这门课程前导课除了《高级语言》外,《数字电子技术》等也应该作为前导课程,否则学生没有2进制或16进制及数字逻辑的基本训练,学习《汇编语言》会很吃力。现在《汇编语言》的课时都不会太多,这2门课是学习的基础,课堂上不可能去额外讲其它内容。据了解,部分高校《汇编语言》开设得较早,讲了《高级语言》后紧接着就是《汇编语言》,这样安排会造成学生学习障碍,影响《汇编语言》的正常教学,应该进行必要的调整。

4.2 尽快入门的问题

高级语言编程入门很容易,往往第一次课就可以写出类似输出“Hello World”这样的程序,而汇编语言写出第一个较完整的程序要学习掌握大量的内容,包括寻址方式、指令系统及大量的语言规定,学生很容易遗忘或混淆,如何让学生尽快入门,尽快培养兴趣就很关键。有些教科书在内容组织上往往相对集中,教师应当合理规划安排教学内容,比如指令系统,应先有针对性地进行选择,不宜在刚开始一次讲授大量指令,这会让初学者望而却步,产生畏难情绪,作为教师就是要让学生有选择地掌握重点内容,迅速入门,这样才能调动学生的学习积极性。在讲授了常用指令后,结合寻址方式尽早安排上机练习,尽快入门,这样后续的内容再做补充,学生的学习就比较顺利。

汇编语言的编程关键一是要熟练掌握并灵活运用各种寻址方式,初学者觉得汇编语言程序无从着手主要原因就是不知道如何运用寻址方式,教师要把解决这一问题当成迅速入门的重点,通过各种用法举一反三让学生尽快领悟;二是熟练使用Debug等调试工具查看程序和数据。这两方面的问题解决了,学生一旦入门就有了自觉学习的前提。

4.3 设定目标,加强督促

《汇编语言》教学中应不断进行复习、总结,也要督促学生进行复结,特别是现在学生选课很多,课余时间其它活动也多,仅靠课堂时间很难消化理解所学内容,所以一定要养成复习、总结的习惯。为此,教师应根据教学内容划分多个教学阶段,分阶段设定教学目标,让学生明确这些阶段目标,适时安排进行阶段复习和测验,检查督促学生的学习,只有教师加强督促,学生才会有一定的紧迫感。根据本校的教学实践和统计数字,教师的督促作用加强了、有意识有规划地开展复习、测验、课堂提问等,学生的学习成效、考试成绩就会显著提高。其实,所谓汇编语言难学是因为内容较琐碎,编程、调试过程复杂,对学生来讲需要一定的毅力和付出,再加上现在社会普遍的浮躁情绪也影响到学生,对学生放任自由的话到后期会有很多学生跟不上进度个别的甚至放弃学习,所以,《汇编语言》课程的讲授教师一定要主动承担起自己的责任,用各种手段影响、督促学生,促进他们的学习。

4.4 教学手段方法的改革

随着教学条件的不断改善,计算机教学在许多高校已完全采用多媒体等手段,力求取得最好的教学效果。采用多媒体教学对教师的教案及课件组织提出了较高要求,该展示的部分要大信息量,做到完整充分,重点的地方又要做到条理清晰,把握时间,方便学生记笔记。这些都需要教师在教学过程中把握精准。汇编语言程序中数据的输入、输出都不是很直接,除了利用调试工具演示、讲解外,多媒体直观演示是很好的手段,所以充分利用多媒体手段,做好课件,体现细节是重要的改革内容。

在教学方法上,要强调理论和实践的结合,理论课讲清基本概念和方法,实验课加强实践。对汇编语言来说,实验课尤其重要,汇编语言的调试过程比较繁杂,总有部分同学会遇到困难,教师要精心安排实验内容,帮助学生尽快独立完成实验,只有实验做好了才能真正学懂汇编语言。

在教学内容上,经典的8086(8088)汇编一直是学习的核心内容,因为它是80X86系统的一个完整子集,在此基础上可以进行扩展,目前有些高校已引入了Win32汇编的教学,作为内容的改革和升级,应当进行必要的介绍,可根据课时的多少合理进行安排。

除了课堂教学外,要充分利用互联网带来的便利,进行线上线下多方位的教学辅导,及时解决学生学习中遇到的问题,帮助学生学好这门课程。

4 结束语

《汇编语言》无论对教师和学生来说都是一门需要付出的课程,作为一门重要的专业基础课,教师要正确面对存在的问题,明确其面向系统底层的低级语言定位,正确引导学生,不断督促学生的学习,明确学习目的,增强学习兴趣,在学习的过程中不断提高自己的编程能力和水平,增进对计算机硬件及其工作原理的认识,为整个计算机专业其它课程的学习打下稳固的基础。

参考文献:

汇编语言篇2

汇编语言中LE的意思是小于或等于。

1、汇编语言是一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言;

2、汇编语言的主体是汇编指令,汇编指令和机器指令的差别在于指令的表示方法上,汇编指令是机器指令便于记忆的书写格式。

(来源:文章屋网 )

汇编语言篇3

现在通用计算机体系结构仍然采用的是冯·诺依曼提出的思想,把程序存储到内存中,数据的存储格式采用二进制的方式;然而软件的发展比硬件的发展要快,它的发展主要体现在编程语言上面,面向机器的机器语言,这种语言只有少数研究人员才懂,很难记忆,而且很难查错;汇编语言,汇编语言比机器语言高级,通过伪指令的方式进行表示指令的意义,更容易记忆,相对来说,更容易看懂;面向过程的语言,典型的是c语言,至今仍然是最受人欢迎的语言,在世界排行榜上至今位居榜首,主要是进行系统级的开发,现在的嵌入式系统主要使用的语言就是c语言。然后就是面向对象的语言,典型的是c++,java,c#,更加接近人类的思考方式的语言,相对来说更容易掌握。

然而汇编语言是唯一能够直接操纵硬件设备,并且效率高的一门语言;汇编语言的实时性能很高,在一些简单,实时性要求很高的嵌入式产品上仍然采用汇编语言进行编码。所有的嵌入式产品的启动代码都是汇编语言写的,汇编语言是不可被替代的。汇编语言的学习对于一个学习计算机的人来说是至关重要的,懂不懂汇编语言,是衡量计算机专业人员的的一个重要指标。汇编语言的核心就是计算机的体系结构,寻址方式,指令系统,计算机中数的表示方式,计算方法,计算机的指令运行流程等;对于追求高效的程序员来讲,这是必修课,是不可缺少的利器。然而,汇编语言的学习是很困难的,首先困难的地方就是一堆的指令,很难在短时间内记住。然后就是编译的过程很繁琐,需要使用几个不同的工具,一步一步的生成可执行文件。wwW.133229.COm在这个过程中使人慢慢的就失去了信心,觉得太难,不学了,甚至对编程都失本文由http://收集整理去了兴趣。

从windows划时代的图形界面的推出,这种人机界面的交互方式逐渐被广泛接受。在windows上的很多编程语言都推出了具有图形界面的集成开发环境,c/c++的vvisual studio系列,java的eclipse,进行嵌入式开发的交叉编译环境如keil,iar等。对于汇编语言的集成开发环境,已经存在,但是一般都是具有专利的,而且需要付费才能使用,有些不需要付费,但是界面不够简洁,一个纯粹的编译环境,不具备有关键字汇编指令提示信息,查找汇编指令的内容,没有对关键字进行颜色区分,颜色很单调,对于编写的汇编代码没有记忆功能,如果需要查看之前写的代码,需要重新加载,操作很繁琐,不是很方便。介于这些原因,开发一款免费的,适合于广大的对计算机充满热情的,打算学习汇编语言的人的系统成为一个重要的课题。这个系统具有编程语言的集成开发环境所具有的一般特点,能够进行代码的编辑,能够阅读纯文本,后缀名为.c、.cpp、.asm等格式的源代码,能够对进行阅读的文件进行修改,并能够进行保存,能够新建一个文件,并生成汇编的一般模版格式,减少用户编码不必要的工作,能够对编写的源码进行编译生成.obj目标文件,并且通过连接所有的目标文件生成最终的可执行文件。而且能够进行单步调试,兼容debug的命令,为用户以后的学习打下基础,并且能够编写学习文档,能够生成一个word的文档,记录学习汇编语言的点滴历程,增强用户学习汇编语言的信息,记录下重要的,经常出错的学习点,为以后出现的错误提共查错解决问题的依据。

2 系统功能分析

汇编语言篇4

关键词:C语言;汇编语言;图形处理

中图分类号:TP311.11文献标识码:A文章编号:1007-9599 (2011) 10-0000-01

The Use Analysis of C language and Assembly Language in the Graphics Processing

Peng Duoduo

(Nanchong Professional Technic College,Nanchong637000,China)

Abstract:C language and assembly language programming mix,in the process of graphics integrated mix,using a combination of them,the advantages of the two languages have been shown.One is the high-level computer language,the other is low-level computer language,but the obvious advantages of both,C language flexible and versatile.Assembly language programming problems,but the program code,execution speed,but also the C language numeric expressions,or when the results are more complex.The use of C language and assembly language programming mix of programming can improve the efficiency.The C and assembly language in the use of graphics in a more widely.

Keywords:C language;Assembly language;Graphics

一、C语言程序调用汇编语言

由于C编译系统要求约定的段序,要求规定的段组结合,故要编制能被C调用的汇编子程序,则要严格按照C的约定来设计程序的结构,否则将不能被正确调用。下面是能被C程序调用的一个汇编子程序框架:

SEGMENT BYTE PUBLIC 'CODE'

ASSUME CS:,DS:

代码

ENDS

GROUP _DATA,_BSS

SEGMENT WORD PBLIC 'DATA'

初始化数据

ENDS

_BSS SEGMENT WORD PUBLIC 'BSS'

未初始化的数据

_BSS ENDS

END

在该结构中〈code〉,〈data〉,〈dseg〉要根据存储模式,换成相应的名字,按照Turbo C规定,必须按如下约定进行替换:内存名字,替换名字

微小紧凑模式:>-->_TEXT,-->_DATA,-->DGROUP

中、大模式:-->文件名_TEXT,-->_DATA,-->DGROUP

巨模式:code>-->文件名_TEXT,-->文件名_DATA,-->文件名_DATA

从以上调用程序可以看出,汇编语言与C语言混合编程,需要解决四个问题:一个是存储模式的约定;二是函数名的约定;三是C语言与汇编语言之间的参数传递;四是编译方法。

二、混编图形处理

图形方式下,由许多的象素点组成行和列。汇编语言操作像素方法一共有两种:一是BIOS功能调用:另外是直接写屏。两种显示模式在显示缓冲区存储方式上的明显差异,操作象素方法的难易程度也不一样。同时,图形方式下的直接写屏较要复杂,在使用MOV指令将像素信息写入显存之前,首先要设置好VGA接口内的“图形控制寄存器”,所以,不采用直接操作显示缓冲区的办法来达到改变显示象素的目的,最好是通过BIOS内的中断功能来实现相应的功能,这样,所编写的程序能适应不同的图形显示模式。INT 10H提供了图形方式下的读像素和写像素的两项功能。即

AH=0CH,写像素

入口参数:AL=像素值,

返回参数:无

AH=0DH,读像素

入口参数:BH=显示页,

返回参数:AL:像素值

BH=显示页

CX=X坐标,DX=Y坐标

返回参数:AL=像素值

三、结语

计算机编程要合理使用C语言与汇编语言的混编,尤其是在图形处理中的运用。而图形处理进行C语言与汇编语言混编,交叉调用,使编程工作更加的清晰,有效提高编程效率。

参考文献:

[1]曹烨.浅谈C语言与汇编语言混合编程的实现[J].科技信息(科学教研),2008,17

[2]王宁.浅析汇编语言与C语言的连接[J].辽宁教育行政学院学报,2009,4

汇编语言篇5

关键词:汇编语言 教学 改革

汇编语言程序设计是计算机硬件、软件及计算机应用专业必修的基础核心课程。通过本课程的学习,学生掌握程序设计的基本技能,提高编程及用汇编语言解决实际问题的能力,进一步了解80386、80483、Pentium CPU的工作模式及扩充功能,以便跟踪微机新技术的发展和应用水平。

一、汇编语言程序设计课程的特点

汇编语言比机器语言有了很大的进步,但仍是面向机器的一个非常低级的语言,非常冗长单调、易出BUG并且调试困难、代码不易维护、兼容性不好、与硬件关系非常紧密,所以汇编语言的通用性较差。但汇编语言除了保持机器语言的编程质量高、执行速度快、占用内存少的优点外,还具有易记忆、易理解、书写调试较方便等优点。

二、教学中存在的问题

1.传统教学内容的缺点

传统的汇编语言教学一般按照教材的编写顺序,教师先讲CPU的功能结构知识,然后讲存储器与寻址方式知识,最后讲汇编语言指令系统和程序编写。在讲CPU的功能结构的时候,因缺少实践,大多数学生感到所学知识非常抽象,难以理解,逐渐感到汇编语言课程枯燥无味,对汇编语言学习失去兴趣,严重影响了后续章节的学习。

2.实验设备配置不合理

汇编语言课程作为一门实践性很强的课程,必须进行大量的实践,但这恰恰是大多中等职业学校所缺乏的环节,主要有以下原因。

(1)实验设备昂贵,这对于资金并不充裕的中等职业学校来说,很难为了一门课程而购买足够数量的实验设备。实验设备的缺乏,严重影响了学生的实验教学质量。

(2)学校计算机室的计算机不敢让学生进行实验练习,因为汇编语言是针对硬件编写程序的,学生在实验的时候如果出一点差错就有可能对计算机设备造成永久性的破坏。这就使得学生无法完全理解汇编语言程序设计与硬件的联系,达不到汇编语言实验目的,无法验证学生编写程序的正确性。

3.“双师型”教师数量不足

在中等职业学校,由于多方面的原因,学校对于既懂理论,又能实践的双师型教师十分缺乏。很多汇编语言教师,只注重理论教学,忽视了教师自身实践能力的提高,只会按照教材讲课,不会编写汇编语言程序的现象非常常见。只侧重汇编语言理论教学,必然严重阻碍汇编语言实践教学质量的提高,无法满足当今社会对汇编语言程序设计人才的培养要求。

三、教学改革的探索

1.打乱常规教学顺序,激发学生学习兴趣

初次教授汇编语言课程,教师先不要讲解教材上关于CPU的功能结构和存储器及寻址方式部分内容,而应采取与实际应用相结合的一体化教学方式。教师可以先让学生看一段机器语言设计的小程序。给学生讲讲早期的程序员是怎样使用机器语言进行编程的,接下来把上段机器码用汇编指令写出来给大家看,让同学们感觉到使用汇编语言程序设计比机器语言设计既简单又容易记忆,这就为激发学生的学习兴趣奠定了第一步的工作基础。在后续的课程中,教师可以与教材相结合,在讲解程序例题的过程中讲解用到的CPU的功能结构和存储器及寻址方式部分知识,让学生逐个理解和掌握这些抽象的知识,不至于一次把学生讲蒙,也不会因此影响学生学习这门课的兴趣。

2.注重培养“双师型”教师

双师型教师既要具备理论教学的素质,也应具备实践教学的素质。汇编语言作为一门实践课,只有既懂理论知识,又懂实践经验的老师才能最大限度地把汇编语言课程教好。所以,中等职业学校应加强双师型教师的培训,努力把教师培养为双师型教师。同时,教师也应该注重自身的培养,不断地充实自己,俗话说,要想给学生一碗水,自己必须有一桶水。在新技术不断发展的今天,只有教师本身掌握了前沿技术,才能更好地服务于学生。

我们要针对汇编语言课程的特点,从课程教学内容、教学设备和师资方面改革的研究和探索,将传统的教师讲授式教学模式,逐步转变为教师与学生并重的教学模式。学生通过亲自设计汇编语言程序,掌握汇编语言程序设计的整个开发流程,不但培养了工程素质和创新能力,而且还培养了团队精神,这为中等职业学生汇编语言程序设计人才的培养提供了宝贵经验。

汇编语言篇6

关键词:汇编语言;教学方法;课程群

作者简介:苏林萍(1967-),女,河北定州人,华北电力大学控制与计算机工程学院,副教授;徐茹枝(1966-),女,江西上饶人,华北电力大学控制与计算机工程学院,副教授。(北京?102206)

中图分类号:G642?????文献标识码:A?????文章编号:1007-0079(2012)24-0060-01汇编语言课程是计算机专业的一门基础主干课程,该课程与计算机硬件系统密切相关。主要介绍80X86CPU的指令系统、寻址方式、工作原理。通过该课程的学习,培养学生使用汇编语言编写程序的能力。加深学生对计算机内部运行机制的理解,为学生开发系统软件和与硬件相关的软件打下坚实的基础。

一、汇编语言课程教学现状分析

1.与计算机硬件相关,课程难度大

汇编语言课程是以特定的计算机硬件为基础的,现在我国高等学校中普遍以80X86CPU系列计算机作为教学模型。首先介绍80X86CPU的工作方式、指令系统、寻址方式等与硬件有关的知识,然后讲解汇编语言的编程方法和技巧,最后介绍系统输入/输出功能调用和有关文件的编程方法。汇编语言课程通常开设在大学的第三学期或第四学期,学生只有高级语言的基础,习惯于高级语言的自然表达形式。学生具备的计算机硬件的知识非常少,所以学习汇编语言课程时会感到非常困难,难于适应复杂的低级语言。特别是在开始学习阶段,许多学生经常混淆寄存器、内存,地址、内容等基本概念。

2.课程内容单一,学生学习兴趣不足

目前多数高校讲授汇编语言课程的主要目标是使学生掌握一种编程语言。因为汇编语言比较难学,如果在教学中单纯强调掌握编程技术,学生可能失去学习该课程的兴趣。在汇编语言中既没有分支语句也没有循环语句,学生必须使用比较指令和条件转移指令来构造出分支结构和循环结构。学生更愿意选择易于理解和编写程序的高级语言,如C、C++、JAVA等。不喜欢使用复杂的汇编语言来编写程序。学生不了解汇编语言与其他课程的关系,只是把它当作一门必须参加考试的课程对待。

二、汇编语言教学改革的思想和方法

1.明确课程的目标

根据汇编语言教学大纲的要求,掌握一种基于硬件的汇编语言编程技术是课程的基本目标和要求。在教学中可以将汇编语言与一种高级语言(如C语言)进行比较,通过学习汇编语言使学生更深刻地理解高级语言的工作原理。例如C中数组是连续的存储空间,相对于汇编语言中的寄存器相对寻址方式;C指针的概念在汇编中就是内存单元的地址,是寄存器间接寻址方式;C函数中的参数传递,是用汇编语言中的堆栈段(STACK)实现的。前面提到的几个问题是C语言课程中的教学重点和难点,学生不易理解和掌握。通过汇编语言课程分析C语言中的这些问题,可以使学生从计算机的工作原理角度出发真正理解了C语言中的这些知识,并且掌握了C语言编译执行的过程,知道高级语言中分支结构和循环结构在执行时需要翻译成一条一条的指令来完成。从计算机工作原理入手讲解汇编语言可以使学生在学习一门计算机语言的同时深入理解计算机的工作原理,这是在高级语言教学中很难实现的。

教师在开始上课时,首先提出课程的目标和要求,同时要告诉学生汇编语言课程是《计算机组成原理》、《计算机接口与通讯技术》、《计算机操作系统》、《单片机原理》等课程的先修课,学好本课程会为其他相关课程的学习打下坚实的基础。

2.课程群的建设

传统的教学模式中,每位教师更多关注本课程的内容,很少考虑本课程对后续课程的影响以及课程之间的知识重复和交叉的问题。为了更好地培养计算机专业学生的软硬件综合能力,将《计算机组成原理》、《汇编语言程序设计》及《计算机接口与通讯技术》三门课程纳入到一个课程群来建设是十分必要的。建立基于软硬件综合能力培养的新教学体系和新实验模式。首先,这三门课程从内容上是相互关联的,例如汇编语言与计算机组成原理中都涉及到指令系统和寻址方式的章节,区别在于汇编语言是针对80X86CPU机型的,而计算机组成原理是不针对具体机型的。学生如果已经完全掌握了汇编语言中的指令系统和寻址方式的概念,学习计算机组成原理时就易于理解和掌握该章节的内容,教师也可以花费较少的学时来完成该部分的教学。其次,这三门课程是相互影响的,例如在计算机接口课程的实验中,学生需要使用汇编语言编写接口程序。所以,汇编语言课程学习的好坏会直接影响到计算机组成原理和计算机接口课程的学习效果。

3.优化整合教学内容

汇编语言课程中会用到二进制、十六进制、补码等知识,这些知识是先修课程信息技术基础中的内容。在汇编语言课程中可以将本课程中使用频繁的补码概念、数的溢出判断等知识点强调说明,其他的内容让学生自己复习,教师不必重复讲解。

汇编语言指令多达几百条,其中有的指令很少使用。所以在教学中要精心选取常用的指令,将功能相似的指令分组讲解,选择一组中某几个指令详细介绍指令的格式、功能和使用。在讲解指令时教会学生学习指令的方法,起到举一反三的效果,当学生今后遇到没学过的指令时可以自主学习。如果将所有的指令集中讲解,学生不易掌握。可以将指令分散到各个章节中,例如将比较指令和转移指令分解到分支程序设计中,将串指令分解到循环程序设计中。指令要与程序相结合,让学生在程序中学习指令、寻址方式和编程方法。

4.加强实验教学环节

汇编语言篇7

“汇编语言”课程是计算机科学、自动化及电子信息类专业的一门核心专业课程。[1-2]对于计算机及其相关专业的学生来说,汇编语言程序设计是需要掌握的重要专业基础知识之一。了解和熟悉汇编语言可以优化学生的知识结构,提高学生的认知水平,增加学生的程序开发手段。相较于快速发展的可视化高级语言,作为低级语言的汇编语言,可读性较差,比较繁琐,不符合自然语言表述,学生普遍感到难学。因此,“汇编语言”课程如何优化教学质量、提高教学效果,是任课教师面临的一个重要问题。[3]本文结合实际教学体会,就如何提高“汇编语言”课程教学效果进行了分析与探讨。

一、汇编语言程序的特点

计算机是一个编码的世界,只能识别和处理由“0”和“1”组成的二进制代码的机器语言,这种指令代码编写易出错且不易修改。于是,人们发明了“指令的助记符”,用助记符(mnemonic)代替操作码,用标号(label)和地址符号(symbol)代替地址码,用这种符号系统形成汇编语言。[4]因此,汇编语言本质上就是机器语言,只不过更容易被人读懂且更容易记忆。使用汇编语言编程,可以对计算机内部硬件进行直接控制,合理地安排机器内部的各种资源。归纳起来,汇编语言程序有以下几个主要特点:

一是与硬件的相关性。汇编语言与机器指令一一对应,不同类型的cpu内部硬件结构不同,因而有不同的指令系统,相应的汇编语言程序也就不同,其通用性、可移植性比较差。二是执行效率高。由于汇编语言与硬件相关,它可以有效、直接地控制机器,程序的执行代码短、速度快,是其他高级语言难以企及的。三是编程、调试相对困难。为了有效地控制机器,汇编语言指令涉及到硬件资源的各种细节,如标志、堆栈、寄存器、存储单元等。相对高级语言,其编程及调试比较繁琐、复杂。[5-6]

二、明确教学目的,优化教学内容

1.激发学生的学习热情

“汇编语言”与许多课程联系紧密,如图1所示,它是“操作系统”、“计算机接口技术”、“计算机组成原理”、“嵌入式系统”等课程的基础,在开发嵌入式系统时更是必不可少的语言。“汇编语言”课程学习起来比较枯燥、学习周期较长,不像高级语言那样上手比较容易且能很快见到效果。因此,应教育学生少一些急功近利的思想,应着眼于长远的、全面的技术成长。有条件的教师可以将自己相关的科研成果带入课堂,说明汇编语言有着广泛的应用领域。在授课过程中,注意拓宽学生的知识面,结合具体的应用,激发学生的学习热情。

2.优化教学内容

不同于高级语言的教学模式,汇编语言是一种硬件编程语言,是连接软硬件的桥梁。一方面,汇编语言与芯片密切相关,学习汇编语言时应具备一定的硬件基础知识,需要时穿插相关知识点,回顾前导课程的相关内容,如计算机结构等;另一方面,又不需要紧跟着产品来讲授,只要选择一种典型的汇编语言指令集讲清楚、讲透彻,使学生掌握学习与思考的方法,今后遇到其他的芯片,也就可以举一反三,触类旁通。

具体到一种汇编语言指令集,应突出其重点、难点,如分段管理技术、寻址方式、堆栈管理、中断技术等。为了便于后续程序结构的学习,在学习寻址方式和指令集时就教会学生使用debug,讲解了常用的调试命令,使学生能尽快上机实践,验证指令,编写短小程序,看到运行结果,从而加深影响,巩固所学的内容。由于汇编语言的指令很多,涉及的知识点抽象,刚开始接触这门课程时,学生往往不太适应,前后的知识点容易混淆,教师应及时对讲授过的内容进行比较与小结。课堂上,应适当增加讲授例题的数量,不同的教学阶段,例题的侧重点不一样。开始阶段,例题主要涉及汇编语言格式与汇编语言指令;中间阶段,例题讲授的是如何用汇编语言指令实现汇编语言流程;后续阶段,例题重点讲解汇编语言程序设计算法的确定,分析、解决问题的思路与方法。而在学生掌握了基本内容及重点内容的基础后,教师应提纲挈领,从系统的整体角度分析“汇编语言”课程在整个硬件知识体系中的作用,让学生从更高层次理解、使用汇编语言。

3.多种教育手段相结合

随着现代教育技术快速发展,多媒体技术在教学中有着广泛的应用。在“汇编语言”课程中,可以利用多媒体课件图文并茂的特点吸引学生的注意力,活跃课堂气氛。例如,可以通过动画形式将寻址过程、堆栈变化、循环移位、子程序调用、中断调用过程等表示出来,将复杂的、抽象的问题简单化、形象化,提高教学效率。而在确定汇编语言程序设计的算法,用汇编语言实现编程,培养学生的推理、思维能力时,采用传统教学方法。对不同的知识点,结合不同的教学方法,有利于学生对不同教学内容的理解与掌握。

三、注重实验环节,提高教学效果

1.实验平台及实验内容

汇编语言程序设计要经过编辑、汇编、连接和调试等过程,如图2所示,传统的上机实验一般是在dos操作系统环境下进行的。目前流行的是windows操作系统平台,学生对dos操作环境相对陌生。为了提高上机的效率,应摒弃dos环境,采用基于windows操作系统的汇编语言集成实验环境。在该环境下,可以方便编辑汇编语言程序,使用下拉式菜单或快捷按钮进行汇编、连接及调试等工作,并可以预先设定段定义、过程定义等。

在实验内容安排上,应根据授课的进度及学生的掌握程度,并与教学目标相匹配,精心选择一些有代表性的、有实用价值的内容,尽量避免实验内容过长、过杂等问题。实验的内容应包括:指令系统及调试工具debug使用;汇编语言程序设计上机环境及过程;顺序、分支、循环基本结构程序设计;子程序设计和宏汇编程序设计;中断调用程序设计;综合性实验。

 

转贴于

2.发挥学生在实验中的主体作用

在整个实验过程中,以学生为主体,教师只是起到组织、引导的作用。

实验前,教师讲解难点、重点及有关注意事项,点到为止,也可以先给出相关的问题,让学生去思考、去观察。要求学生对实验内容进行预习,并在下次上实验课时用提问、抽查等形式检查。学生通过预习带着问题进行实验,可以提高学习的主动性,且能对知识点的领悟更深刻。

实验中,鼓励学生按照自己的思路去编写、调试程序。对于学生在实验过程中提出的问题,一般不直接给出答案,而是引导学生通过学过的理论知识自己寻找解决的方法。只要能达到预定的实验目标,对实验步骤及过程不做过多要求。对学有余力的学生,鼓励他们在完成规定的实验内容后,对补充题或对自己设计的问题进行实验;而对基础较差的学生,则鼓励他们独立地解决问题。

实验后,要求学生及时对实验进行归纳、总结,并撰写实验报告。

3.实验实践贯穿整个教学

“汇编语言”课程有其特殊性,只有通过不断的上机实践,学生才能加深对理论知识的理解,提高编写程序的能力。因此,要转变观念,重视实验教学,避免实验教学流于形式。程序设计是一个调试修改语法及逻辑错误,最终得到正确程序的过程。教师应充分利用多媒体等手段,引导学生动手编程,通过实际例题观察数据流变化,培养学生调试、修改程序的能力和意识。教师演示与学生实践可以穿插交替进行。如果学生对自己编的程序没有把握,则鼓励他们上机进行验证,反复地调试、修改、运行。对有些验证性实验,可以用作业的形式要求学生在课外完成。如用debug调试工具验证各类指令的功能和格式,对标志位的影响,查看数及字符在存储器中的存放形式,堆栈的变化等。既加深了学生对所学内容的理解,又为汇编语言程序设计打下了基础。

本课程的目的是使学生掌握程序设计的方法,学会用汇编语言编写程序。结合各章节所学的知识点,每次实验要求学生编写相关的程序,检验学生具体知识点的掌握程度。注意加强前后实验之间的相互联系,融会贯通各个知识点。随着课程进展的加快,实验内容应从比较简单到相对复杂,再到课程结束阶段,经过知识及多个实验经验的积累,使学生具备一定的程序设计能力。

四、结语

汇编语言篇8

【关键词】汇编语言程序设计 现状 问题 改革

随着我国国际化的发展进程越来越快,我国对高等院校教育水平的重视度也越来越高。为了加快接轨国际高等教育的进程,在近几年中,我国对教育事业的投入力度不断加强,提高了对学生实际动手能力以及创新能力的培养力度。《汇编语言程序设计》课程教学是高校计算机、通信、电子以及自动化等相关专业课程中的基础课程,对学生在学习过程中的创新能力以及实践能力的提高有一定的促进作用。另外,在对教师对问题进行研究的过程中,对提高其相应的科研水平以及意识也有一定的积极影响。

一、《汇编语言程序设计》课程教学的现状以及存在的问题

1.相应的教材内容单一陈旧,无法激发学生的学习兴趣

《汇编语言程序设计》课程在我国所有高等院校相关计算机专业的课程中都占有重要地位,然而随着时代的飞速发展,计算机的相关配置也得到了相应的发展。在《汇编语言程序设计》教学中,其硬件教学中有些相关教材内容与计算机的发展现状不相符,存在一定程度的滞后性。在某些新开发的汇编得到广泛使用的时候,大多数学校的相关专业的汇编语言教材依旧还停留在以前的版本中,跟不上实际的发展进程。

2.没有明确的教学目的,对课程重要性认识不足

《汇编语言程序设计》课程教学是高校计算机、通信、电子以及自动化等相关专业课程中的基础课程,对学生在学习过程中的创新能力以及实践能力的提高有一定的促进作用。在对《汇编语言程序设计》课程的学习过程中,大多时候得不到学生以及教师重视,对其学习的重要性认识不足。而且,大多数老师在对这门课程进行教学的过程中,受到相应教学的课时以及大纲限制,在课堂教学过程中过于偏重对具体指令的相关应用以及功能的讲解,从而缺少了对各个课程之间的特点串联。这样的问题导致教师在教学过程中,对学生的学习兴趣不能充分的调动,从而导致学生对正确的学习方法不能很好的掌握。

3.教学方法偏差,教学手段存在缺陷

在对《汇编语言程序设计》课程进行教学的过程中,其在相应的教学方法上存在一定程度的偏差,从而导致一些编程中非法指令经常性出现。而且,教师在对这门课程进行教学的过程中,教学手段太过单一,在教学过程中主要就通过多媒体对课堂内容进行讲解。在教学过程中对多媒体的运用虽然存在直观生动以及信息量大等相关优势,但其也在一定程度上使学生产生了学习惰性。

二、对《汇编语言程序设计》课程教学中相应的问题进行改革

1.加强对课程重要性的认识

在对《汇编语言程序设计》课程进行教学之前,对其相应的重要性进行讲解,从而使学生对汇编语言的具体特点进行充分掌握,对汇编语言相较于高级语言的具体优势进行具体明确,使学生对其在应用领域中必要性有充分的了解。在对《汇编语言程序设计》课程进行学习的过程中,要注意对其实用性的具体教学,使学生能够做到对具体知识的学以致用,注重对教学内容相关知识点的训练和拓展。另外,教师在教学过程中,还要注重对学生知识面的拓宽,从而使学生在对汇编语言的学习兴趣得到相应的提高。

2.采用多样化教学,提高学生学习兴趣

在对《汇编语言程序设计》课程进行学习的过程中,想要对相应的指令进行掌握,就要对其相关的寻址方式进行具体的理解和掌握。在对汇编语言进行教学的过程中,由于其相较高级语言而言,没有足够的易读性,不容易学生的理解,所以,在教学的时候要掌握多样化的教学方法以及教学手段,从而使学生在对其进行学习的过程中的学习兴趣得到最大的提高,培养学生学习的自主性,使其对汇编语言的相关知识的理解和记忆更容易清晰地掌握。

3.增加实践环节,提高学生具体的实践能力

在对《汇编语言程序设计》课程进行学习的过程中,对学生具体动手实践课程进行加强,使学生在具体实践的过程中对教材上的知识点进行具体的理解和掌握。在实际动手过程中学习实践理论,使实践与理论达到很好的结合,从而提升学生的学习效果。其中,在实践的过程中,教师要注意对具体实验内容的控制,对实验的重点着重突出,避免实验的时间太过漫长。除此之外,还要注意积极引导学生多多参与相关实践项目,在一定程度上为他们提供一些参与实际研究项目的机会。

三、结束语

综上所述,随着时代的飞速发展,我国对高等院校教育水平的重视度也越来越高,计算机的相关配置也得到了相应的发展。《汇编语言程序设计》课程作为计算机、通信、电子以及自动化等相关专业课程中的基础课程,其硬件教学中有些相关教材内容与计算机的发展现状不相符,存在一定程度的滞后性。为了提高学生在学习过程中的创新性以及实际动手能力,对《汇编语言程序设计》教学课程的教学效果进行相应的提高和改善,从而使学生在学习的过程中对其课程中相应的知识内容进行更清晰精准的掌握。

参考文献:

[1]陈燕俐,许建.“汇编语言程序设计”课程教学改革探索 [J].中国电力教育,2012,10(04):193-194.

[2]李黎.《汇编语言程序设计》课程教学改革探究 [J].产业与科技论坛,2013,15(08):197-198.

[3]陶雪丽,郭凤英.汇编语言程序设计课程教学改革与实践 [J].中国教育技术装备,2012,25(01):192-193.

[4]王金昌.汇编语言程序设计教学探索及改革 [J].职业,2013,15(10):127-128.

上一篇:参数方程范文 下一篇:语言艺术范文