汇编语言程序设计(精选5篇)

与其它高级语言相比,汇编语言存在指令繁多、寻址方式多样、程序可读性差、编程效率不高等缺点,这使得学生对该课程的重要性认识不足。此外,学生的学习目的相当务实,有些学生认为即便是在计算机应用场合,使用汇编语言的可能性也很小,所以怕苦怕难,没有学习这门课的积极性。实际上,只有通过学习汇编语言,学生才能深入了解计算机的硬件和软件,从朦胧的计算机世界中走出来,进而理解编译和解释程序,在审视高级语言的时候,才能够透彻地理解最根本的计算机技术[1]。所以,不了解汇编语言,不仅会导致学生认知水平降低,编程开发手段贫乏,更会导致学生的知识结构失衡。

2实验教学在《汇编语言程序设计》教学中的作用在培养人的科学思维、创新意识,掌握科学方法、提高综合实践能力方面,实践环节有着重要的作用,是课堂理论教学无法替代的。实验课是进行实践教学的重要学习场地,学生通过对实验内容的思考,对课堂上的理论知识进行了巩固;实验过程中的操作,可以发现理论教学的不足;实验过后的心得分析,为以后解决实际问题打下坚实基础。实验还可以将算法的实现和计算机的操作过程相结合,使学生体会到算法的逻辑含义是通过计算机的实际执行过程实现的[2]。

汇编语言与硬件关系密切,通过实验课,学生可以更好地理解cpu、寄存器、存储器、接口及外部设备的工作原理。《汇编语言程序设计》课程的实验是培养学生的动手能力、增强学生的学习兴趣、提高学生阅读、编辑和调试程序能力的关键环节。

3实验教学中存在的问题

3.1教学内容安排方面

计算机语言课程的学习需要理论联系实践,实验课是学好计算机语言的必备条件,汇编语言的学习亦是如此,实验课程开始越早对学生的学习越有利。《汇编语言程序设计》这门课程的教材安排顺序一般是:基础知识、计算机系统的组织、汇编要素、基本指令、程序设计、输入/输出、系统调用、高级汇编语言技术。实验教学往往是配合理论教学进行,通常在理论课程第5~7周后,实验课才得以开设。这样的教学安排效果并不理想,在实验课程开设的前几周不利于学生很好地掌握学习内容,从而对汇编语言产生厌学情绪。

高等院校普遍存在对专业课程的课时进行压缩的现象,使得《汇编语言程序设计》的理论课时和实验课时都有不同程度的压缩,实验课时的压缩相对于理论课时更加严重,导致实验内容的安排不能覆盖该课程的重点,而且重点实验内容也相对浅显,无法进行深入研究。

另外,有些教师围绕课本基础结构部分的知识讲授,没有结合实际应用进行扩展,对实验内容的设计也比较浅显,无法激起学生的兴趣。这些行为都导致了学生对汇编语言的学习兴趣降低甚至放弃。

3.2学生态度不够端正

很多学生认为实验课不重要,实验做得好否对最终的成绩判断没有关联。目前多数院校的学生学习成绩判定,以期末考试成绩为主,这就使得很多学生重理论、轻实验。另外,汇编语言不像其它高级语言那样应用广泛,学生认为其对就业帮助不大,从思想上轻视汇编语言,对《汇编语言程序设计》的实验课程更是不愿付出精力,甚至出现拷贝代码的现象。

3.3考核体系不明确

4提高汇编语言实验教学效果的措施

4.1合理设置实验内容

实验课的内容按照由浅入深、循序渐进的方式进行,以启发思维为主。对设计型、综合型实验只要能达到实验目的,其实验过程和步骤可以多样,通过实验课复习理论知识,引出欲

讲解的新内容。针对学期初不安排实验的问题,可以尝试开展“先实验后理论”的教学,在实验中理解基础理论,加大实验课的比例并且及早实行开展实验教学,在整个教学过程中实行以“学生动手为主,教师讲解为辅”的教学模式[3]。

4.2引入新的实验教学模式,培养学生学习兴趣

实验教学中要充分调动学生的积极性,照顾不同层次的学生。汇编语言指令繁琐,初始使用时比较抽象,学生对待实验内容往往无从下手,所以任课教师应该先对实验内容进行讲解。起初的实验内容,教师应该进行详细的演示,可以先引导学生“临摹”,避免学生出现无从下手、丧失信心等问题。后面的实验内容可以进行讲解并提示实验方法,但不要求每个学生都按照此方法进行实验,鼓励学生创新,并在考核中给予一定的奖励。每次实验内容,任课教师都要进行总结,以解决学生在实验过程中的“通病”。

为了培养学生的团队合作精神,也可以设计一些综合应用实验,让学生分组完成。每组选出一位组长,负责组织学生课下进行实验内容的预习、实验方案的制定和课上组员提出问题的解决方案等工作。教师在进行实验考核时,要对每个组的完成情况进行总结,对于完成较好的组,给予成员一定的加分,以鼓励学生注重团队合作精神,培养学生的学习兴趣。

4.3建立严格的考核体系

5结语

本文根据笔者的教学实践,分析了《汇编语言程序设计》课程的教学现状,指出了实验教学在《汇编语言程序设计》教学过程中的重要性,并对汇编语言的实验教学进行了深入的分析和思考。根据实际情况提出了几点可行的措施,即合理安排实验内容,引入新的实验教学模式和建立严格的考核体系,从而达到发掘学生潜能、提高实践动手能力、增强学习汇编语言兴趣等目的。《汇编语言程序设计》课程的实验教学还需要广大教师积极探索,引入多种符合实际的教学方法,使汇编语言对计算机专业课程后续的学习发挥应有的作用。

参考文献参考文献:

\[1\]刘正红.对汇编语言实验教学的几点看法[j].信息与电脑,2012(6):198199.

[2]木林.《汇编语言程序设计》实验教学的探讨[j].呼伦贝尔学院学报,2012(4):9295.

[3]张学,陆庆.汇编语言实验教学的思考[j].教学研究,2009(15):8182.

[4]侯宏霞.提高汇编语言课程实验教学质量的几点思考[j].内蒙古农业大学学报:社会科学版,2011(13):173174.

[5]金海溶,周苏,孟学多.用实验方法改革汇编语言程序设计的教学[j].计算机教育,2007(1):3437.

关键词:高职院校《汇编语言程序设计》教学方法

1.前言

汇编语言是我们理解整个计算机系统的最佳起点。人们往往认为汇编语言的应用范围很小,因而忽视了它的重要性。其实汇编语言对学习计算机科学与技术的人是非常重要的。所有程序,不论用何种语言进行编制,只有转成机器指令,运用机器的逻辑功能,功能才得以实现。

汇编语言直接a描述机器指令,比机器指令更容易记忆和理解。通过学习和使用汇编语言,我们才能够感知、体会、理解机器的逻辑功能,这样不仅可以为理解各种软件系统的原理打下技术理论基础,而且可以为掌握硬件系统的原理打下实践应用基础。

2.教学中存在的问题

《汇编语言程序设计》的学习需要一定的英语知识。高职学生的英语基础普遍差,据有关职业教育方面的统计资料显示:在高职高专院校中60%的学生英语基础差;30%的学生有一定的基础,但对英语学习不感兴趣;10%的学生英语基础较好。实际上,普通高职高专院校学生英语的基础情况比统计的更严峻。这就为他们学习这一课程带来了一定的障碍。

针对这一系列的情况,笔者根据教学经验,总结了在高职院校教《汇编语言程序设计》的一些心得,希望对大家有所帮助。

3.注重课堂教学

3.1优化教学内容。

本课程涉及内容较多,教师应在讲课之前先对课本内容进行优化。并不是课本上所罗列的内容都需要讲,教师要有选择性讲解:对学生有用的而课本上讲得不全面的要补充讲解,而对学生用处不大的可以不讲或一带而过,争取做到“少而精”。

3.2让学生充分认识到该课程的重要性,提高学生的学习的兴趣。

“兴趣是最好的老师”,如何让学生对本课程感兴趣笔者认为关键是把握好开学第一堂课。在学生刚接触本课程时,教师不要急于介绍理论知识,而是要强调该课程的实际应用,通过介绍汇编语言的特点和汇编语言在一些典型系统开发中的具体应用来激发学生的学习兴趣。

目前对单片机的灵活编程已经应用到各个领域,无论是尖端科技,如军事、通信、能源、机器人、交通、IT,还是现代工业、农业,如仪器仪表、汽车电子系统、家用电器、玩具、个人信息终端等诸多领域,都离不开单片机。而单片机的编程里大部分都使用了汇编语言,汇编语言的易用和灵活的特性,使得汇编语言将继续占有独特的地位,其适用的领域要求执行效率高、反应快,如操作系统内核、工业控制、实时系统、家用电器的计算机控制功能等。在讲述其重要性和应用领域时,教师应结合一些身边的、具体的实例,如电梯升降的控制程序和广场的大型喷泉的控制程序均是由汇编语言编写的,学生的兴趣会被这些实例极大地调动起来。

3.3注重实践环节。

计算机在很多方面不同于其他学科,尤其是与硬件有密切关系的课程。由于汇编语言课程与硬件操作有着密切关系,因此实验环节在整个教学活动中占据了举足轻重的地位。汇编语言的实验对培养学生的动手能力和学习兴趣,提高学生阅读、编辑和调试程序的能力,有着不可替代的重要作用。学生通过实验能深入了解CPU、存储器、接口及外部设备的工作特性,对数据在计算机中的表达和传送产生感性认识,在实验中学生能对汇编语言有更好的理解、掌握,从感性认识上升到理论认识。

4.改进教学方法

4.1对照教学法。

MOV指令是8088指令系统中首要讲解的一个指令,也是汇编程序设计中使用最频繁的指令,教师应强调对操作数的要求。有几点我们可以用C语言来对比解释:

传送过程。其传送过程类似于C语言中的赋值,只是在这里是给寄存器或存储单元赋值,其实C语言中的变量名本身就是一个符号地址,汇编程度的赋值最终应对应到存储器的某些存储单元。

两操作数的类型匹配问题。该内容在C语言中已作了强调,汇编中类型匹配问题也是一个重点。与C语言类似,汇编语言操作数的位数要保持一致,只是在8088中常用的类型为字节和字。

强制类型转换。C语言中用到了该知识,学生也已掌握,那么汇编语言中又如何实现呢很自然地我们就可以引出“BYTEPTR”和“WORDPTR”这两个操作符。

4.2互动式和启发式教学。

高职学生的课堂气氛一般比较活跃,他们非常喜欢教师引导、提问,喜欢回答问题。所以教师应利用这一特点在上课过程中设计一些有意义的提问,利用提问将要讲的知识点引出来,避免平铺直叙地讲解知识点,这样让学生带着问题来学习知识点,会起到事半功倍的作用。例如,在讲解编程部分的循环结构时,笔者先举了这样一个例子:求1+2+3+……+100的和。学生立刻就说出结果为5050。笔者接着问:加到1000呢这样很多学生饶有兴趣地听讲。可见,教师所选的题目要由浅入深,要能激发学生的学习兴趣,要想办法让学生变被动学习为主动学习。

课堂练习也是互动式教学一个非常重要的方法。在讲解完某一个例题后,教师可以出一道类似的习题让学生在课上完成,请学生上讲台在黑板上写出解题步骤并进行讲解。例如刚学习了用循环的方法求1+2+3+……+100的和,教师可以让学生练习一道2+4+6+……+100的和。这样可以检验学生的掌握情况,找到学生理解错误的地方,从而对症下药。就学生理解错误的知识点再进行讲解,这样除了可以让学生当堂能够掌握所学的知识点,还能让其做到举一反三。

4.3实例教学法。

由于本课程是一门比较抽象的课程,因此教师在课堂讲授中应该尽量用一些通俗易懂的例子进行教学。

例如在讲解汇编中存储器地址分段的概念时,为了便于学生理解,教师可以借助平时生活的居民楼,进行举例。一个小区有多个居民楼,如一号楼、二号楼等,每个楼里有多个室,如101室、102室等。我们可将楼号比作段基值,每个楼里的房间比作偏移地址,很显然一号楼的101和二号楼的101是不一样的。这个例子可以使学生易于理解分段的概念。

再如在讲解中断的概念时有很多例子可举。把教师上课比作CPU正在处理的事,门外有学生打报告,教师就暂停正在处理的事情让学生进来,等学生进来后接着讲课。这样学生很容易就能掌握中断的概念。

教师可以将难理解的知识点与日常生活中的小事相联系,这样既可以使学生学到扎实的理论知识,又不会使学生学得吃力。

5.充分发挥多媒体教学的作用

6.结语

笔者对汇编语言课程的教学内容和教学方法进行了探讨,这些教学方法促进了课程的建设与发展,为学生学好后续课程打下了一个良好的基础。摸索一条适合高职学生需要的、有效的教学方法,使高职学生能更好地、更快地掌握汇编语言程序设计,培养学生的分析问题、解决问题和实际操作能力,我们在汇编语言课程教学中需要继续探索研究的目标。

参考文献:

摘要:本文从教材建设、课程教学内容改革、教学方式手段改革、实验平台创新、实验改革等方面介绍了我院在“汇编语言程序设计”课程的教学改革实践。

关键词:汇编语言程序设计;实验平台;教学改革

中图分类号:G642

文献标识码:B

1教材系列化建设

2教学内容及教学方法改革

在教学内容和方法上加强与“微机原理与接口技术”、“计算机组织与结构”、“操作系统”等课程间的联系,有利于各门课程之间的融会贯通。教学内容体现课程的时代性和先进性,以32位汇编语言及Windows编程环境的内容为主,从16位实模式转换到32位保护模式,结合丰富的应用性实例,使所学知识与目前主流的应用环境相结合,为学生的创新能力奠定基础。

为实现教学模式从“教学型”向“研究型”的转变,需要充分研究学生的认知过程,掌握认知规律。根据“汇编语言程序设计”课程本身的理论抽象性和鲜明应用性,课程组以建构主义理论为基础,探索并改进教学方法。在教学设计中体现以学生为中心、以教师为主导的思想,采用重点难点精讲、对比教学、形象教学、重视实验等方法,用多媒体手段、典型实例来展现抽象的编程概念。采用现代化网络教育技术建立了课程网站及网络教室,加强师生互动,拓展了交流空间。

例如,在多门专业课中均涉及到“中断”概念,在汇编语言程序设计课程中以编程实例将它具体化,使学生对抽象的理论概念有了直接的认识,从软件和硬件两个角度加深了对中断机制底层的深层次理解,提高了学习兴趣。

又如学生难于理解间接寻址方式,但学生在学习本课程时已有了C语言知识,在教学中就把间接寻址方式与C语言的指针类比,通过与先前知识的衔接,经过对比学习,使学生建构、衍生出更深层次的信息,很容易对新知识消化。对于较难理解的程序转移地址的形成,采用动画方式帮助学生理解,并通过CASE结构程序设计实践巩固。把宏指令与过程及高级语言的函数对比,学生很快掌握了其设计方法,他们通过主动对知识的处理和转化,又总结出“宏实际更像高级语言的预定义,用到它的地方都会有它一份拷贝,所以宏可能让你的真正代码量剧增”。

通过精心组织教学,选择与实际应用密切结合的教学案例,在课堂上和网络支撑平台上增加总结和讨论环节,鼓励学生主动反思,从而调整个体的认知,帮助学生实现在原有认知基础上新知识的整合,在融合了多门课程知识的基础上,形成系统的知识观念,提高综合应用和创新能力。

3构建先进的实验平台

在微机系统的教学和实验内容上,Windows操作系统及32位保护模式已成为汇编语言的发展趋势。然而,目前Windows环境下还没有一种专门用于汇编语言的主流开发工具,而底层汇编语言编程所面向的硬件型号和接口又存在巨大差异。为此,课程组开展了改革汇编语言程序设计实验环境的探索,编写了《Windows汇编语言程序设计实验指导》教材,构建了新型的实验环境,采用MicrosoftVisualC/C++集成开发工具来编写、调试汇编程序(见下图),使汇编程序的编辑、编译、连接、调试等过程均与C/C++程序一致,减轻了学生学习负担,提高了C/C++与汇编混合语言编程能力。应用虚拟机软件技术,使汇编语言编程面向虚拟的、统一的硬件及其接口,保证了实验环境的统一性,提高了实验效率。

4开设体现前沿性、先进性的汇编语言实验

图VC集成环境下的汇编语言调试

验证型实验以掌握单元知识为目标,着重训练基础编程能力,如数据块操作、数据显示、字符串排序、素数判断、有序数组合并等。

综合型以融合本课程知识为主,如多模块程序设计、中断程序设计、线程同步、文件管理等。

创新型以设计具有应用背景的实验为主,培养学生对计算机知识体系的融会贯通及创新能力。如数据库管理系统设计、全屏幕编辑器设计、缓冲区溢出实验、读取硬盘序列号、硬盘DMA等。

基于个体的差异性,学生可以按照自己的能力和兴趣选做部分或全部实验,充分发挥了学生的主观能动性。这种强调自主学习的教学过程和方法,有效地促进了学生自我认知的发展和新知建构。通过实践环节,提高了学生的程序设计能力,为学习后续专业课程,设计硬件驱动、性能优化、代码对抗等底层系统级软件打下坚实基础,培养了学生的创新能力。

参考文献

[l]李未.提高教育质量,培养创新人才[J].计算机教育,2008,(1).

[2]肖川.主体参与:自主学习的要义[J].人民教育,2003,(22).

关键词:汇编语言;集成开发环境;实践教学

1教学现状及存在问题

在目前汇编语言的教学过程中,普遍存在的问题就是主流的微型计算机已经进入了64位时代,多任务的操作系统取代了DOS,而绝大多数高校汇编语言程序设计课程仍然是单任务操作系统(DOS)下的8086汇编语言,给学生的印象是跟不上时展的步伐。加之,汇编语言和机器的体系结构结合紧密,使用者需要对计算机的组成、硬件的控制和指令的解释过程有比较清晰的掌握;程序的移植性不好;指令众多,且同种类型的操作(算术、逻辑、转移等)要根据操作数和状态标志选择不同的指令(如无符号的运算与带符号的运算、条件转移等);运算中要根据数据长度悬而选择不同的寄存器;程序的编译调试比较麻烦;编写出吸引人们感官的程序比较困难。因此,学生在汇编语言的学习中容易产生厌烦情绪。有的学校减少了汇编语言的课时,还有的学校甚至干脆取消了这门课程。

2“汇编语言”课程的地位

从应用场合来看,汇编语言是能够利用计算机所有硬件资源并能直接控制硬件的唯一计算机语言,也是除机器语言之外最接近计算机硬件的编程语言。汇编语言程序产生的代码精简、运行效率高,具有高级语言不可比的“时空”优势;汇编语言在一些应用如嵌入式系统和工业控制中,汇编语言最最佳的甚至是唯一选择的开发语言。在一些实际的应用系统中,人们往往会用汇编语言来彻底重写某些经常调用的过程以期获得更高的性能。

图1汇编语言和其它课程的关系

从人才培养方面来看,计算机专业的学生不应仅仅满足于利用他人开发的软件和工具来解决实际问题,还应具备分析、研究原有软件系统,改进、完善、提高原有系统功能的能力。汇编语言的教学将使学生受到更严密、更系统的程序设计及思维方法的训练,为深入分析、研究、开发软件系统打下良好基础。

3加强实践教学

为了提高汇编语言教学的效果,笔者认为应该从以下几个方面入手。

(1)清理认识上的误区。在上第一堂课时,用一个课

时来讲汇编语言的特点及其应用场合、它和高级语言区别、其难点在哪里、本课程该如何展开等内容,从而打消学生畏难和轻视的思想。

(2)要充分利用好计算机辅助教学(CAI)的优势,要让课件“动”起来。目前普通本科计算机专业的教学大都采用了CAI教学,但大都是播放课件(如PPT),实质上是用鼠标代替了粉笔、屏幕代替了黑板。而且由于播放的速度远快于板书,学生反映根本来不及仔细理解有关内容,效果反而不如板书。多媒体教学提供了视觉、声音的特殊效果,在对重点、难点问题的讲授中要充分利用多媒体教学的优势。如讲授指令ADDAX,[2000H],如果是静态的课件,就是一句“这是一条加法指令,把累加器的内容和逻辑地址为2000H存储单元的内容相加,运算结果送回累加器”。而动态的课件会先画出一个模型计算机,然后演示该指令解释的全过程:从CPU内存中取出指令、译码、数据寻址(从寄存器和内存中取得操作数)、启动ALU运算、保存结果到累加器和影响状态标志寄器。每一步都要图示化出数据的变化和走向以及相应的控制时序。在声音和显示控制的程序设计教学中,更应展示多媒体教学的风采。多媒体教学丰富的动感效果能极大地增加学生对指令的感性认识,增强他们学习的兴趣。当然,制作这样的课件耗时耗力,学校应该切实加大对CAI教学的支持力度。

(3)在汇编语言的教学中要加强和高级语言的比较教学。在学习汇编语言时,学生一般都具有了C语言程序设计的知识。在汇编语言程序设计的教学过程中,应该比较这两种语言的编程特点、程序代码空间、运行速度等,以加深学生对这两种语言的理解。如在讲授基址变址寻址方式中,可以用C语言和汇编语言分别实现对数组运算的实例来阐述。要加强高级语言(C语言)和汇编语言的混合编程的教学,充分阐述C语言结构化设计和汇编语言对机器低层(存储器、寄存器、中断处理、I/O)控制的优点。这样即可充分调动学生的学习积极性,也可以培养学生解决具体应用的能力。

(5)要切实抓好实验教学环节。课堂主体教学和一般作业很难让学生真正领会本课程涵盖的概念、原理、方法和技巧等。经验表明,学习并真正掌握汇编语言程序设计的最好方式是充分实践。实验教学和课堂主体教学“两手都要硬”,在课时分配上达到1:1。

4建立实验教学平台

传统的汇编语言上机实验一般是在DOS环境下的进行,如图2所示。而DOS逐步被淘汰,目前流行使用Windows操作系统平台,学生对DOS的使用相对陌生。尽管Windows保留了DOS的工作方式,可以切换到DOS提示符下操作,但是对建立文件夹(目录)、进入文件夹(目录)、删除文件等操作,学生们常返回到Windows环境中来完成,显然会影响上机的效率和增加编程的繁琐,同时也不利于WIN32虚拟模式下的教学。

图2汇编语言程序开发的传统操作过程

因此,必须建立基于Windows操作系统的W32汇编语言集成实验环境,该环境是一个集编辑、编译、连接、程序调试和帮助于一体的实验平台。笔者主持的课题组经过系统的调研、编程和测试已开发出一个汇编语言集成编译系统,该系统已成功应用到本课程的实验教学中,效果较好。系统的运行界面如图3所示。

其次,要精心编写实验指导书和安排实验内容,组织好课程设计。结合目前广泛使用的PC机的Intel80x86指令系统来开展教学,通过在集成环境下汇编语言的上机实训,加深学生对指令系统和汇编语言程序设计的认识和理解。实验的内容可以组织如下:

(1)指令系统。用DEBUG调试工具来熟悉指令功能和寻址方式,掌握简单程序的调试。通过实验了解CPU的组成,熟悉8086/8088寄存器组、8086/8088存储器组织、8086/8088标志位的意义。

(2)汇编语言程序设计。包括顺序程序设计、循环程序设计、分支程序设计、子程序设计和宏汇编程序设计等实验。掌握各种程序结构的设计方法,了解宏汇编、条件汇编和模块化程序设计等汇编语言程序的概念,掌握宏汇编程序设计的基本方法。

(3)输入输出与中断。包括输入输出程序设计、中断处理程序编写、常用系统中断(如时钟显示、键盘和显示器、使用鼠标的程序设计)控制等实验。

(4)Win32汇编语言程序设计。包括32位微处理器与32位指令、保护模式下的32位汇编语言程序设计等实验。

(5)汇编语言与C/C++的混合编程。主要包括C/C++程序与汇编语言程序的连接、嵌入汇编与模块调用等。

图3汇编语言集成开发环境

[1]沈美明.IBM-PC汇编语言程序设计[M].北京:清华大学出版社,2001.

[2]KIPR.IRVINE.AssemblyLanguagefortheIBM-PC[M].PrenticHallINC,1993.

[3]李学干.计算机系统的体系机构[[M].北京:清华大学出版社,2006.

[4]金海溶.用实验方法改革汇编语言的教学[J].计算机教育,2006,(1):36-37.

[5]田庆.汇编语言程序设计课程的教学探讨[J].电器电子教学学报,2007,(2):14-15.

关键词:汇编语言;课程特点;教学内容;教学方法

KnowledgeandThinkingonTeachingContentandMethodsofAssemblyLanguage

ShiDongsheng

(InnerMongoliaUniversityofScienceandTechnologyAdd,Baotou014010,China)

Abstract:AssemblyLanguageandProgrammingDesignisacompulsorybasiccourseforcomputermajors.ThethesissetsouttoillustratethecharacteristicsofAssemblyLanguagecourseandbasedonthenarrationsandinconsiderationtothepracticalteachingtasks,analysishasbeencarriedoutregardingtheteachingcontentsofthecoursewhilecountermeasureshavebeenanalyzedontheteachingmethodsregardinghowtoimprovethequalityofteachingandlearning.

KeyWords:AssemblyLanguage;CourseCharacteristics;TeachingContents;TeachingMethods

汇编语言是计算机及电子信息类专业十分重要的基础课程,是学好徽机原理、操作系统、编译原理的知识准备。它能充分发挥和利用计算机硬件特性的语言,能够完成高级语言难以胜任甚至无法完成的任务。笔者结合工作实践,对该课程的教学内容和特点、及教学方法做以下探讨。

一、汇编语言课程的特点[1]

汇编语言是计算机能提供给用户的最快而又最有效的语言,同时能够利用计算机所有硬件特性并能直接控制硬件。所以高级语言简单、易学且开发效率高,而汇编语言复杂、难懂、开发效率低。对汇编语言的课程特点主要表现在以下两个方面:

(一)汇编语言的优点

主要变现在以下两个方面:第一,用汇编语言容易得到高时空效率的程序。由于汇编语言本质上就是机器语言,可直接、有效地控制计算机硬件,因而与高级语言相比,容易得到运行速度快、执行代码短、占用内存空间少的高时空效的目标程序。

(二)汇编语言的缺点

主要表现在两点:第一,汇编语言难学、难理解、难调试难维护等。第二,汇编语言程序可移植性差。

二、对汇编语言课程教学内容认识

笔者根据自身教学实践,对汇编语言教学内容的安排与经验总结为以下几方面:

第一,对于十六进制的加减法运算、有符号数的补码计算要充分了解学生基础,在此基础上进行复习巩固。

第四,伪指令用于辅助汇编语言程序设计,不作为重点,使学生可以理解汇编语言程序的格式即可,不引申不常用到的伪指令和不必要的细节。

第五,分支、循环和子程序设计版块的内容,介绍用到的一些指令及程序设计方法,采用短小精悍的程序训练学生,培养汇编程序设计的基本功能。

第六,输入输出程序设计、模块化程序设计、混合编程等高级汇编语言技术内容,经过前面的学习学生已经具备扎实的汇编语言基础知识,能够进行程序设计,引出实用技术,可以采用基于问题的教学方法,培养学生的实践能力。

三、提高汇编语言课程教学质量的对策思考

(一)教学手段的多样化

汇编语言由于其基础性,而又它不同其他基础课一样以实践操作为主,体现着它的比较抽象性,理论性较强的特征。如在寻址方式和指令系统以及源程序结构都比较抽象、复杂、难于理解。为了使学生能够较好的理解这些抽象的概念,在教学过程中针对这些内容可采用多样化的教学手段,可以从如下两方面入手:

第二,要利用功能程序段使学生更好地掌握指令系统。微机的指令系统的指令多达上百条。进行机械地记忆会很枯操,学生往往难以掌握和运用。但程序设计又需要熟练掌握其中的部分指令。所以,为了使学生更好的掌握指令系统,可借助各种程序范例来理解相应的指令。这样不但使学生能够知道如何在程序中具体应用指令,而且对以后的程序设计也有帮助。

(二)强实脸教学与课堂教学相结合

计算机专业的两个最基本教学目标是计算机科学和计算机文化。计算机科学主要是传授学生计算机有关的专业知识,对计算机系统要进行深人了解,强调计算机的学术价值。这一方面主要表现在对理论及算法的学习和研究。而计算机文化,它的含义是利用计算机进行信息处理的能力、操作和程序设计的能力,它十分强调实践,即上机操作。对于任何一门程序设计语言来说,上机实验操作环节都是不可或缺重要环节。

(三)发挥现代教学媒介的优势

四、结束语

教学质量是对教师劳动成果的一个重要评价指标,而课程特点又在很大程度上影响着学生的学习兴趣与学习效果,因而对教学内容的优化与改革,对教学手段的不断改进与丰富,保证教学目标的顺利实现,需要我们教育工作者进行不断的思考和探索。

THE END
1.编程中算法究竟是什么?编程界的“Pascal之父”Nicklaus Wirth有一句人尽皆知的名言:“算法+数据结构=程序”。(Algorithm+Datahttps://www.zhihu.com/question/423634581/answer/2836457639
2.什么是算法?算法的发展历程?特征?什么是复杂度?算法的产生定义:算法的每一步都应该简单且容易执行,并且这些步骤应当是清楚且有效的。 解释:每一个算法步骤都必须是具体的、可以执行的基本操作,不能有模糊的、抽象的指令。有效性保证了算法在实际中是可实现的。 7.独立性(Independence) 定义:算法的设计与实现应独立于具体的编程语言、机器或实现环境。 https://blog.csdn.net/weixin_67739446/article/details/141789238
3.Java语言具有哪些特点?Java语言具有哪些特点?Java语言是一门优秀的编程语言,它之所以应用广泛,受到大众的欢迎。是因为它有众多突出的特点,其中最主要的特点有以下几个。1.简单性 Java语言是一种相对简单的编程语言,它通过提供最基本的方法完成指定的任务。程序员只需理解一些基本的概念,就可以用它编写出适用于各种情况的应用程序。Javahttps://baijiahao.baidu.com/s?id=1744110954938024670&wfr=spider&for=pc
4.特征空间算法范文9篇(全文)图2给出了目标被遮挡情况下的传统mean-shift算法和本文算法的跟踪效果图,图中跟踪的目标是一个深蓝色的汽车,在第355帧时,传统mean-shift算法和本文算法的跟踪结果差别不大,随着目标的运动,两种算法的跟踪效果就出现了差别,在第375帧时,当目标被树遮挡住一半左右时,传统mean-shift算法基本上还能跟得上,但已失去了https://www.99xueshu.com/w/ikeyhztmyriy.html
5.算法与程序设计思想(精选8篇)求一批数据中最大值的算法设计思想,并将算法的设计思想用流程图表示出来。2.过程与方法: 利用现实生活中比较身高的活动,以及对武术比赛中“打擂台”流程的逐步梳理,让学生学会从此类生活实际中提炼出求最大值的思想方法,即算法思想。 培养学生分析问题、解决问题的能力,让学生学会在面对问题时能梳理出解决问题的清晰https://www.360wenmi.com/f/fileavgfb18k.html
6.高职单招计算机复习(单招考试计算机知识点)算法是计算机科目中的重要内容,包括算法的基本概念、算法的分类、算法的分析等方面。在备考中,考生需要重点掌握算法的基本概念和算法的分类,了解各种算法的特点和应用场景。考生还需要掌握算法的分析,了解如何分析和评估算法的效率和优劣。 七、编程语言 编程语言的分类、编程语言的特点、编程语言的应用 http://www.sccdedu.com/news/239228.html
7.Scale概述(上)学习笔记C 语言、C++、java 等语言在学习后具有部分的共同特性,存在大同小异的特点。但 Scala 相对其它语言而言变化较大,部分本身的特色较为有趣。此语言在学习过程中可使得自身的编程思想、编程算法得到一定程度的提升。 4、Spark 特点-函数式编程 引入后使函数更为强大、提倡递归,效率得到大大提升。 https://developer.aliyun.com/article/1079002
8.高中信息技术课程标准(1)从其他科目的学习或者生活实际中选择问题,确定解决该问题所需要的算法和计算公式,用流程图描述问题的计算过程,编写程序,调试并运行该程序,获得问题的答案,并讨论该问题解决过程与所得答案的特点。 (2)在已学知识的基础上,通过调查和讨论对算法和程序设计进行更多了解,探讨待解决的问题与其相应算法之间的关系,尝试https://www.fqkhzx.cn/index/article/view/id/94.html
9.第5课算法的特征(教学设计)五年级上册信息技术浙教版(8页)讲解算法的定义,包括其主要特性(确定性、有穷性和可输出性)。 详细介绍算法的表示方法,如伪代码和流程图,并展示实例。 3.算法案例分析(20分钟) 目标:通过具体案例,让学生深入了解算法特性及其在实际问题解决中的应用。 过程: 选择几个典型的算法案例进行分析。 详细介绍每个案例的背景、特点和意义,让学生全面了解https://m.book118.com/html/2024/0810/7111141150006142.shtm
10.敏捷交换机的特色:iPCA网络包守恒算法交换机网络华为新推出S 12700 敏捷交换机,利用其灵活可编程的特点,开创性地实现了iPCA 功能,全面提升网络质量检测和故障精确定位能力,降低网络运维成本,iPCA网络包守恒算法是怎么样的呢?感兴趣的朋友可以参考下 GPT4.0+Midjourney绘画+国内大模型 会员永久免费使用! https://www.jb51.net/network/223201.html
11.重磅!计算机二级C语言考试备考攻略和考试资料下载二、选择题特点: 选择题共40分,其中公共基础知识10分;C语言基础知识30分。 1. 二级公共基础知识:专业性强且相对独立,考核重点为数据结构与算法、数据库设计基础,其中涉及到的难点是进制之间的转换(一般为2进制与10进制之间的转换)以及关系代数运算,这部分要灵活掌握。 https://www.jianshu.com/p/4014994dabb3
12.算法编程编程语言的算法Message Passing Interface(MPI)是支持多编程语言编程的并行计算通讯应用接口,具有高性能、大规模性、可移植性、可扩展性等特点。 华为高性能通信库(Hyper MPI)是基于Open MPI 来自:百科 查看更多 → 图像处理理论、应用与实验 征提取算法和卷积神经网络,学习时注意两者的区别。 目标学员 1、希望成为企业AIhttps://www.huaweicloud.com/theme/857518-3-S-undefined