劉小洋
(重慶理工大學 計算機科學與工程學院,重慶 400054)
匯編語言程序設計課程建設研究
劉小洋
(重慶理工大學 計算機科學與工程學院,重慶 400054)
匯編語言程序設計作為計算機專業(yè)學生的學科基礎課程,是計算機專業(yè)課程體系中最接近計算機硬件底層的軟件設計課程。文中分析了本課程在專業(yè)課程體系中的地位及課程之間的關系。針對現(xiàn)行教學大綱、理論教學和實踐環(huán)節(jié)等課程建設的現(xiàn)狀,提出了未來三年課程建設計劃。
匯編語言程序設計;課程建設;硬件;案例驅動
匯編語言是面向機器的程序設計語言,用助記符代替機器指令的操作碼。該課程是計算機科學與技術專業(yè)課程體系中最接近計算機硬件底層的軟件設計課程[1-2]。該課程重點講述匯編語言、硬件接口及如何用匯編語言訪問各種接口設計應用。課程實踐完成一個簡單的機器人的設計(如走迷宮機器人)。
讓學生理解并掌握計算機系統(tǒng)中軟件和硬件的相互關系,學會具體應用系統(tǒng)中軟硬件結合的設計方法。為工業(yè)生產、科學研究等領域的嵌入式應用系統(tǒng)開發(fā)打下良好的基礎。
本專業(yè)的課程體系根據(jù)計算機系統(tǒng)的分層結構來設計,如圖1所示,計算機科學與技術專業(yè)核心課程群由各層中的主干課程構成,包含五門課程,覆蓋了計算機系統(tǒng)中硬件層、程序設計層、操作系統(tǒng)層、應用軟件層的主要知識領域[3-4],構成了計算機科學與技術專業(yè)課程體系的基本框架。
圖1 計算機系統(tǒng)分層結構及核心課程體系
本課程是計算機科學與技術專業(yè)課程體系中最接近計算機硬件底層的軟件設計課程,課程的重點是使學生理解并掌握計算機系統(tǒng)中軟件和硬件的相互關系,在整個課程體系中發(fā)揮著不可替代的作用。該課程的關鍵是要從思想上改變學生“重軟輕硬”的傾向[5-7],要讓學生充分認識到:從事計算機科學與技術專業(yè)領域的研究和開發(fā),必須做到“軟硬兼施”,只知道源代碼級的調試是遠遠不夠的。
該課程的先修課程是“計算機組成原理”課程,后續(xù)課程是“操作系統(tǒng)原理”課程?!坝嬎銠C組成原理”課程從宏觀、整體的角度學習了通用計算機的基本組成原理,各部件是如何密切配合來實現(xiàn)程序指令的執(zhí)行,讓學生建立了計算機系統(tǒng)的整體概念。在這個基礎上,“匯編語言程序設計”課程的任務是讓學生針對一種具體的計算機系統(tǒng)并深入內部研究其CPU和寄存器、存儲器、I/O端口、I/O引腳以及相互的邏輯關系,體會并掌握如何以匯編指令形成控制流和數(shù)據(jù)流,進而使學生能夠從宏觀到微觀、從原理到應用、從理論到實踐—真正理解計算機軟、硬件及工作原理,為后續(xù)的課程如“操作系統(tǒng)原理”等的學習打下堅實的基礎。
2.1 現(xiàn)行教學大綱情況
2011年,編訂了匯編語言程序設計課程新的理論及實驗教學大綱。該教學大綱已在2012-2013學年用于計算機科學與技術專業(yè)2011級學生匯編語言程序設計課程的教學。從該大綱的實踐來看,大綱在目標、教學內容、學時分配等方面的設置都是合理的。
存在的主要問題有:沒有把計算機的系統(tǒng)發(fā)展觀貫穿在整門課程當中;實踐教學內容中創(chuàng)新型實驗和綜合類實驗不多,需要進一步完善和改進。
2.2 實踐教學環(huán)節(jié)情況
開設了單片機實驗開發(fā)系統(tǒng)操作實驗,其實驗分為基礎實驗、綜合實驗和擴展實驗?;A實驗主要包括:LED流水燈實驗、LCD顯示實驗、外部中斷實驗、RS232 串口通信、NE555計數(shù)實驗等;綜合實驗主要包括:數(shù)碼管左移顯示、蜂鳴器模擬救護車警報聲、1602 液晶顯示鬧鐘、1602 液晶顯示秒表、鍵控步進電機加減速運行等;擴展實驗主要包括:TFT彩屏顯示溫度、顯示一幅 128×160 的彩色圖片、TFT液晶顯示紅外遙控實驗等。
這些實踐教學項目,涵蓋了硬件層軟件開發(fā)所需要的寄存器操作、中斷操作、計數(shù)器操作等技能。獨立完成規(guī)定的實驗項目后就可以進行相應硬件的軟件開發(fā)。
2.3 教學方法、課程考核辦法情況
1)通過課堂講授使學生掌握單片機的基本結構以及單片機匯編語言程序設計的基本方法。
2)通過做習題和實驗加深對單片機結構以及匯編語言程序設計的掌握。
3.1 教學內容改革與教學大綱修訂計劃
第一年:針對現(xiàn)行教學大綱的不足及學生對考研和就業(yè)的需求,及時更新教學內容,修訂教學大綱,增加綜合類和創(chuàng)新項目的課程設計。
第二年:教學大綱實踐;建立《匯編語言程序設計》習題庫。
第三年:查找實踐過程中的問題,針對問題對教學大綱做進一步修訂。同時通過收集國內外優(yōu)秀高校的資源進一步豐富匯編語言程序設計習題庫。
3.2 實踐教學內容與教學方法改革計劃
第一年:修訂實驗教學內容,增加包含中斷、串口通信、定時器/計數(shù)器等功能的綜合類實驗項目。
第二年:搭建能夠進行機器人底層軟件開發(fā)的實驗平臺。
第三年:增加機器人底層軟件開發(fā)設計選做項目。
3.3 教材建設和教學參考資料建設計劃
未來三年將自編《匯編語言程序設計實驗指導書》《匯編語言程序設計課程設計指導書》和《機器人底層軟件開發(fā)指南》各一種教材。
3.4 網(wǎng)絡課堂建設計劃
第一年:將“80C51單片機指令系統(tǒng)”章節(jié)錄像上網(wǎng)。
第二年:將“匯編語言程序設計與調試”章節(jié)錄像上網(wǎng)。
第三年:將“中斷系統(tǒng)”章節(jié)錄像上網(wǎng)。
3.5 課程考核辦法改革計劃
1)根據(jù)教學大綱及學校的相關政策制定統(tǒng)一的評價標準,每個上匯編語言程序設計課程的班級在最后成績評定時對各項成績的比例安排要一致。
2)考試的命題及審題要堅持教考分離的原則,每學期由課程執(zhí)行負責人指定教師根據(jù)教學大綱進行出題,再安排另外的教師審題。
3)采用集中閱卷方式,由命題教師提供參考答案及評分標準,所有閱卷教師都要遵循這個標準。
3.6 教學方法與教學手段改革設想及措施
1)為每一個章節(jié)設計一個能夠涵蓋相關知識點的教學案例,探索“案例驅動”的教學方法,以此激發(fā)學生的學習興趣及培養(yǎng)學生分析問題、解決問題的能力。每一個章節(jié)都通過案例來激起學生的學習興趣,然后再針對案例來對相關基本知識進行講解,最后由學生進行實驗。
2)探索互動式教學方法。在課堂上增加學生對自己作品的演示與講解環(huán)節(jié),增強師生的交流與互動,激活學生的創(chuàng)造性思維。
3)對“案例驅動”和互動式教學方法進行總結和改進。
3.7 師資隊伍建設計劃
1)每名教師每學年度參加一次國內外與本課程相關的學術交流。
2)三年內每名教師都有一次國內培訓機會。
3)三年內力爭引進一名35歲以下的青年教師作為課程的建設和授課教師。
4)定期對課程組教師進行督導聽課,及時收集學生的課堂反饋信息,加強教師對教學質量的提高。
本文從匯編語言程序設計課程教學現(xiàn)狀入手,分析了本課程在計算機專業(yè)中的作業(yè)和地位,在理論教學內容、實驗教學內容、教材建設、網(wǎng)絡課堂建設等方面提出了未來三年課程建設計劃。
[1] 吳衛(wèi)江.《匯編語言程序設計》教學改革經驗分享[J].教育教學論壇,2013(9):41-43.
[2] 武 偉,汪 璇,劉曉燕.匯編語言程序設計課程教學改革探討[J].西南師范大學學報,2009(4):201-204.
[3] 劉小洋.基于C51 單片機課程教學的探索[J].科技信息,2014(1):5-7.
[4] 張海燕. “匯編語言程序設計”課程教學方法的探討[J].計算機教育,2008(7):66-67.
[5] 洪連環(huán),帥歌旺,肖潔.提高“微機原理及應用”課堂教學質量的探索和實踐[J].科技信息,2013(35):118-120.
[6] 胡靜芳,李步升.匯編語言采用“學習共同體”教學模式的研究與實踐[J].中國電力教育,2013(1):101-102.
[7]王小林,侯漠.匯編語言程序設計實驗教學改革探討[J].計算機光盤軟件與應用,2013(12):202-203.
Research on the Construction of Curriculum of Assembly Language Programming
LIU Xiaoyang
(School of Computer Science and Engineering,Chongqing University of Technology,Chongqing 400054, China)
Assembly language programming is a discipline basic course as for students majoring in computer, which is the most close to the computer hardware computer specialized curriculum system of the underlying software design course. The status of this course in the professional course system and the relationship between the courses are analyzed. In view of the current curriculum theory teaching and practice of the construction of the course such as the status quo, the next three years course construction plan is proposed.
assembly language programming; construction of curriculum; hardware; case-based learning
2014-05-22;修改日期: 2014-05-25
重慶市研究生教育教學改革研究項目資助(Yjg133080)。
劉小洋(1980-),男,博士,講師,研究方向:信號處理、計算機科學與技術等。
G642.0;TP313
A
10.3969/j.issn.1672-4550.2015.03.053