欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 智能科技 > 高校汇编语言教学中若干难点的分析

高校汇编语言教学中若干难点的分析

日期:2023-01-24 阅读量:0 所属栏目:智能科技


高校汇编语言教学中若干难点的分析

  1 引言
  机器语言是计算机能直接识别的语言,它是一种由0和1组成的二进制语言,汇编语言是对机器语言符号化的一种语言[1],属于低级语言。由于汇编语言与硬件有着千丝万缕的紧密联系,因此用汇编语言经过编辑、编译、链接等步骤获得的可执行程序不仅运行速度快、占用内存空间少,而且能有效地对硬件设备进行控制以及开发。汇编语言的应用广泛,例如:在可行性分析、网络安全维护、生物特征识别、嵌入式系统开发、农论文联盟http://业机械化以及电力控制等等领域中都可以看见汇编程序的身影。因此在现在很多高校里,汇编语言不仅是计算机科学与技术学科专业的主要课程,也是其他相关专业的基础课程[2],例如:电子技术、自动控制、机械工程、通信工程等相关学科或专业都会使用到汇编语言。但是,另一方面汇编语言还具有指令集繁多、寻址方式多样、程序编写与调试复杂、程序可读性较差等等缺点,再加上汇编语言常常涉及中央处理器、内存单元和i/o接口等多个硬件处理细节,因此对于高校汇编语言的教学来说,如何尽快尽好地让学生掌握汇编语言编程往往是比较棘手的问题。为了解决这一问题,本文将对汇编语言教学中存在的若干难点进行分析,以便找到突破点,更好地为汇编语言教学改革服务。
  
  2 汇编语言教学中的难点
  笔者目前已经在高校从事汇编语言教学多年,经过多年的教学发现,在汇编语言教学中存在如下几处困难:(1)学生往往弄不清什么是寄存器,什么是存储器,进而无法理解寻址方式bx和[bx]之间的区别。(2) 由于汇编语言中寻址方式有很多种,寄存器也有多个,因此学生在学习寻址方式时经常会出错,例如:存储器寻址时出现[dx]、[ax]、[cx]、[ds]以及[ax+bx]等错误。寻址方式是汇编语言的基础,如果无法熟练地掌握各种寻址方式,那么汇编语言程序的编写将变得举步维艰。(3)学生在使用属性修改运算符ptr、字节定义伪指令db、字定义伪指令dw以及双字定义伪指令dd存在很多问题,例如:对于何种情况下需要使用ptr常常把握不准,对于由db、dw和dd定义的数据在内存中的存放情况含糊不清。(4)汇编语言指令繁多,各个指令的使用规则差异很大,因此学生在学习指令时经常出现指令使用违反规则的情况,例如:使用指令div进行16位数的除法时没有把被除数事先放进默认的寄存器ax和dx中,堆栈操作时将进栈指令写成push al,以及将sal、shr、sar、rcl、rcr、rol、ror等移位指令不加区分地使用。(5)复杂的汇编语言编程让已经具有高级语言编程经验的学生索然无味,厌学情绪时常出现。
  
  3 针对难点而采取的教学改革措施
  针对上一节总结的汇编教学中存在的难点,这里我们建议分别可以采取如下教学改革措施:
  (1)首先告诉学生寄存器和存储器尽管是计算机的重要硬件组成部分,但是寄存器是在cpu中的,而存储器这里主要指的是内存,因此寄存器和存储器是两种不同的相互独立的硬件设备。寻址方式中bx属于寄存器寻址,获得的操作数是放在寄存器中的,也就是在cpu里的,而[bx]属于存储器寻址,获得的操作数是放在内存中的,因此两者是完全不同的寻址方式,此外,[bx]中的bx寄存器里存放的是内存地址。实际课堂讲解时还可以利用打比方的方式配合说明,比如把bx这个寄存器比喻成一个盒子,内存比喻成一幢大楼,大楼的每个房间就是内存单元,那么寻址方式bx获得的操作数是放在盒子中的,而利用[bx]获取操作数时,盒子中放的是操作数的地址,先从盒子中取出地址,然后根据地址到大楼里面找到对应的房间,那么操作数就在这个房间里。
  (2)将所有的寻址方式以及每种寻址方式所涉及的寄存器用一个表格来说明,如文献[3]第45页的表3-2所示,这样做的目的使得学生能很清楚地知道每种寻址方式可以使用哪些寄存器,例如:基址寻址中可以使用的16位寄存器只有bp和bx两种,而变址寻址可以使用的16位寄存器也只有si和di两种。
  (3)在讲解属性修改运算符ptr时也可以采用表格的形式,将所有需要使用ptr的情况给罗列出来,实际讲课经验证明一个表格有时候比语言更具有表达能力。此外,对于数据定义伪指令db、dw和dd的讲解,则一定要用典型的例子来加以说明,例如:比较buf1 db ‘a’,’b’与buf dw ‘ab’这两条数据定义伪指令中字母a和字母b在内存中的存放顺序就可以使得学生清晰地了解db与dw的不同之处了。
  (4)汇编语言的指令的确是非常多,要全部记住,对于初学汇编语言的学生来说是比较困难的,因此在教学中针对常用的指令需要多举例子,利用较多的程序片段来说明指令的用法。例如:针对每个移位指令都需要举一个程序实例来加以解释,并且还需要适时地在黑板上画出移位指令执行前后,标志寄存器和操作数的变化情况。指令的讲解方法其实和c语言中表达式、语句的讲解方法是一样的,就是通过多个程序实例来进行强化。
  (5)首先,在汇编语言开讲的第一节课,给学生多介绍一些汇编语言在将来实际工作中的作用,并以就业为导向,激发学生学习汇编语言的热情。其次,由于学生多数都学习过c语言,因此课堂授课可多与c语言进行对照讲解,例如:在汇编语言的第一节课,就演示一个程序实例,在屏幕上显示“welcome to assembly language”,这是很多c语言的第一节课中常采用的方式。最后,建议尽早地介绍dos和bios系统功能调用,以便学生能进行实际地输入与输出操作,增加学生学习的兴趣。
  
  4 结语
  汇编语言课程是高校里相关专业的一门重要的基础课程,它编程与调试复杂,程序更是难以阅读与理解,因此汇编语言的学习会显得比较吃力。本文分析了汇编语言教学中存在的若干难点,并针对这些难点分别提出了相应的教学改革措施,希望这些措施可以给其他信息类课程的教学改革所借鉴。最后需要提一下的是笔者多年来以文献[3]为教材进行汇编语言的教学工作,因此文中所说指令用法都以文献[3]为基础。

转贴于论文联盟
本文链接:http://www.qk112.com/lwfw/jsjlw/zhinengkeji/232957.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学