国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

不同計(jì)算機(jī)語(yǔ)言融合教學(xué)方法的探索與體會(huì)

2016-06-29 09:21:52成婭輝
考試周刊 2016年47期
關(guān)鍵詞:匯編語(yǔ)言融合教學(xué)案例教學(xué)

成婭輝

摘 要: 計(jì)算機(jī)語(yǔ)言是計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)學(xué)生必須掌握的一項(xiàng)基本技能。文章結(jié)合作者在長(zhǎng)期語(yǔ)言教學(xué)實(shí)踐中的經(jīng)驗(yàn),把C語(yǔ)言與匯編語(yǔ)言有意識(shí)地融合起來(lái),對(duì)如何搞好計(jì)算機(jī)語(yǔ)言教學(xué)做了相應(yīng)的探索,取得了較好的教學(xué)效果。

關(guān)鍵詞: C語(yǔ)言 匯編語(yǔ)言 案例教學(xué) 融合教學(xué)

“計(jì)算機(jī)科學(xué)與技術(shù)”專業(yè)學(xué)生在專業(yè)學(xué)習(xí)不同階段都會(huì)學(xué)習(xí)不同的程序設(shè)計(jì)語(yǔ)言,為什么要學(xué)習(xí)這么多種語(yǔ)言?每種語(yǔ)言有什么特點(diǎn)?這是學(xué)生常感到困惑的問(wèn)題。

筆者在長(zhǎng)期教學(xué)過(guò)程中把C語(yǔ)言和匯編語(yǔ)言、機(jī)器語(yǔ)言有意識(shí)地結(jié)合起來(lái)講解,使學(xué)生更好地掌握不同計(jì)算機(jī)語(yǔ)言特點(diǎn),理解不同計(jì)算機(jī)語(yǔ)言的不同應(yīng)用領(lǐng)域,取得一定的經(jīng)驗(yàn),同時(shí)在教學(xué)活動(dòng)中取得不錯(cuò)的效果,受到學(xué)生的歡迎。

一、C語(yǔ)言和匯編語(yǔ)言、機(jī)器語(yǔ)言的關(guān)系

C語(yǔ)言稱之為“高級(jí)語(yǔ)言”或“中級(jí)語(yǔ)言”,匯編語(yǔ)言、機(jī)器語(yǔ)言稱之為“低級(jí)語(yǔ)言”。初學(xué)計(jì)算機(jī)的學(xué)生很難理解為什么這么命名。理解好這些概念,對(duì)今后進(jìn)一步學(xué)習(xí)其他專業(yè)課程十分重要。

在教學(xué)過(guò)程中,講解匯編語(yǔ)言時(shí),首先將匯編語(yǔ)言和機(jī)器語(yǔ)言的關(guān)系告訴學(xué)生:計(jì)算機(jī)其實(shí)不認(rèn)識(shí)匯編語(yǔ)言,也不認(rèn)識(shí)C語(yǔ)言,計(jì)算機(jī)唯一能執(zhí)行的只是機(jī)器語(yǔ)言。

機(jī)器語(yǔ)言是用“0”、“1”寫成的語(yǔ)言,每條機(jī)器語(yǔ)言指令都對(duì)應(yīng)一串“0”和“1”的代碼,如果用這種代碼編程很不方便,既不方便記憶,又不方便理解和調(diào)試。因此采用一系列符號(hào)代替這種“0”和“1”寫成的機(jī)器語(yǔ)言指令,例如:8086CPU中的機(jī)器指令1011000000000110,我們就用MOV AL,06H 這種符號(hào)代替,后者只是幫助記憶和理解的“助記符”。

我們把用這種助記符寫成的指令稱之為“匯編語(yǔ)言指令”。匯編語(yǔ)言指令和機(jī)器語(yǔ)言指令是一一對(duì)應(yīng)的關(guān)系。用“匯編語(yǔ)言指令”寫成的程序稱為匯編語(yǔ)言源程序,必須“翻譯”成“機(jī)器語(yǔ)言”才能執(zhí)行。由于匯編語(yǔ)言指令和機(jī)器語(yǔ)言指令是一一對(duì)應(yīng)的關(guān)系,因此“翻譯”起來(lái)比較簡(jiǎn)單,我們把這個(gè)“翻譯”的過(guò)程稱為“匯編”(Assembly)。

使用匯編語(yǔ)言和機(jī)器語(yǔ)言的編程必須了解計(jì)算機(jī)的CPU內(nèi)部結(jié)構(gòu),以及硬件接口電路,它和計(jì)算機(jī)底層密切相關(guān),因此稱之為“低級(jí)語(yǔ)言”。

同樣,計(jì)算機(jī)也不認(rèn)識(shí)C語(yǔ)言,C語(yǔ)言是用C語(yǔ)言語(yǔ)句編寫程序。用“C語(yǔ)言”寫成的程序稱為C語(yǔ)言源程序,這種用C語(yǔ)言語(yǔ)句編寫的源程序必須“翻譯”成機(jī)器語(yǔ)言才能執(zhí)行,只是這個(gè)“翻譯”過(guò)程更復(fù)雜,翻譯出來(lái)的機(jī)器語(yǔ)言代碼更大,我們把這個(gè)過(guò)程稱為“編譯”(Compile)。

由于C語(yǔ)言是按照自然語(yǔ)言的特點(diǎn),同時(shí)結(jié)合數(shù)學(xué)表達(dá)式編程?;静挥昧私獾讓佑布慕Y(jié)構(gòu),可讀性強(qiáng),學(xué)習(xí)重點(diǎn)在數(shù)據(jù)結(jié)構(gòu)和算法,所以稱之為“高級(jí)語(yǔ)言”。

使用其他“高級(jí)語(yǔ)言”編程的過(guò)程也都一樣,都必須把用這種語(yǔ)言編寫的計(jì)算機(jī)“源程序”通過(guò)“編譯”變成“機(jī)器語(yǔ)言”、“目標(biāo)程序”,才能被計(jì)算機(jī)認(rèn)識(shí)并執(zhí)行。

通過(guò)這樣講解,學(xué)生理解了C語(yǔ)言等“高級(jí)語(yǔ)言”和機(jī)器語(yǔ)言“低級(jí)語(yǔ)言”之間的關(guān)系。

二、學(xué)習(xí)多種計(jì)算機(jī)語(yǔ)言的原因

我們?cè)诮虒W(xué)過(guò)程中發(fā)現(xiàn)學(xué)生學(xué)習(xí)計(jì)算機(jī)語(yǔ)言的重點(diǎn)放在學(xué)習(xí)語(yǔ)言的數(shù)據(jù)類型、程序結(jié)構(gòu)、語(yǔ)法規(guī)則等局部細(xì)節(jié)上,忽視從總體上把握和理解計(jì)算機(jī)語(yǔ)言。在實(shí)際教學(xué)中,我通過(guò)講解匯編語(yǔ)言和C語(yǔ)言的特點(diǎn),告訴學(xué)生不同計(jì)算機(jī)語(yǔ)言的不同應(yīng)用場(chǎng)合。

首先,匯編語(yǔ)言是針對(duì)CPU的,不同CPU的匯編語(yǔ)言又是不同的。學(xué)習(xí)起來(lái)困難一些,但生成的代碼短、程序執(zhí)行效率高,更適合實(shí)時(shí)控制、硬件編程。

高級(jí)語(yǔ)言如C語(yǔ)言,由于是按照自然語(yǔ)言方式編程,因此程序本身容易讀懂。由于不需要了解硬件底層,因此我們更多的是學(xué)習(xí)如何用計(jì)算機(jī)實(shí)現(xiàn)一些數(shù)學(xué)算法。

教學(xué)過(guò)程中為了讓學(xué)生理解這些概念,我特意采用C語(yǔ)言和匯編語(yǔ)言分別編寫一個(gè)程序?qū)嵗?,?shí)現(xiàn)顯示“I WISH YOU SUCCESS!”(取文件名A)。

兩個(gè)程序輸出結(jié)果一樣,但用不同語(yǔ)言編寫,通過(guò)實(shí)例對(duì)比說(shuō)明C語(yǔ)言和匯編語(yǔ)言的特點(diǎn)。

C語(yǔ)言源程序:

#include

main()

{printf(“I WISH YOU SUCCESS!”);

}

匯編語(yǔ)言源程序:

DATA SEGMENT

BUF DB 0AH,0DH,I WISH YOU SUCCESS!$

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START:MOV AX,DATA

MOV DS,AX

MOV DX,OFFSET BUF

MOV AH,09H

INT 21H

MOV AH,4CH

INT 21H

CODE ENDS

END START

這兩個(gè)程序都實(shí)現(xiàn)顯示器輸出“I WISH YOU SUCCESS!”。

可以看到C語(yǔ)言程序的源程序文件A.C為63個(gè)字節(jié),通過(guò)編譯,可執(zhí)行文件A.EXE為9489個(gè)字節(jié)。匯編語(yǔ)言的源程序文件A.ASM為263個(gè)字節(jié)。通過(guò)匯編,可執(zhí)行文件A.EXE為560個(gè)字節(jié)。

從這個(gè)程序設(shè)計(jì)實(shí)例我們知道,相比較C語(yǔ)言和匯編語(yǔ)言,C語(yǔ)言的源文件?。?1個(gè)字節(jié)),但是可執(zhí)行文件很大(9515個(gè)字節(jié)),匯編語(yǔ)言的源文件大(352個(gè)字節(jié)),但是可執(zhí)行文件很?。?54個(gè)字節(jié))。

通過(guò)這兩個(gè)程序設(shè)計(jì)實(shí)例,學(xué)生清楚地感受C語(yǔ)言(高級(jí)語(yǔ)言)源程序可讀性好,容易理解,匯編語(yǔ)言源程序可讀性差,難看懂。但從效率來(lái)說(shuō),同一個(gè)程序,匯編語(yǔ)言的目標(biāo)代碼效率遠(yuǎn)高于C語(yǔ)言。

其實(shí),不同計(jì)算機(jī)語(yǔ)言有各自特點(diǎn),也有不同的應(yīng)用領(lǐng)域。如在實(shí)時(shí)控制、內(nèi)存容量很小的情況下編程就應(yīng)該使用匯編語(yǔ)言,如果算法復(fù)雜,要求有較好的用戶界面,就要采用C語(yǔ)言或者其他計(jì)算機(jī)語(yǔ)言。同時(shí)計(jì)算機(jī)語(yǔ)言是發(fā)展的,不斷會(huì)有新語(yǔ)言出現(xiàn),也不斷有語(yǔ)言被淘汰。學(xué)生可以根據(jù)自己的應(yīng)用需要,選擇學(xué)習(xí)不同的計(jì)算機(jī)語(yǔ)言。

認(rèn)真學(xué)好幾門計(jì)算機(jī)語(yǔ)言,對(duì)今后實(shí)際工作幫助很大,同時(shí)再學(xué)習(xí)新語(yǔ)言會(huì)舉一反三,學(xué)習(xí)起來(lái)會(huì)輕松很多。

三、計(jì)算機(jī)程序與語(yǔ)言

計(jì)算機(jī)專業(yè)學(xué)生最喜歡的是學(xué)習(xí)各種計(jì)算機(jī)語(yǔ)言,許多人認(rèn)為掌握的計(jì)算機(jī)語(yǔ)言越多,水平越高,不懂得計(jì)算機(jī)程序和計(jì)算機(jī)語(yǔ)言的關(guān)系。其實(shí)計(jì)算機(jī)領(lǐng)域里有一個(gè)最著名的公式:計(jì)算機(jī)程序=數(shù)據(jù)結(jié)構(gòu)+算法,這個(gè)著名公式里根本沒(méi)有提到計(jì)算機(jī)語(yǔ)言。

為了更好地說(shuō)明計(jì)算機(jī)程序和語(yǔ)言的關(guān)系,我以學(xué)生學(xué)習(xí)程序設(shè)計(jì)過(guò)程中最常見(jiàn)的習(xí)題1+2+……+100為實(shí)例,使用C語(yǔ)言和匯編語(yǔ)言分別編寫一個(gè)程序,同時(shí)告訴學(xué)生:在用計(jì)算機(jī)解決實(shí)際問(wèn)題的過(guò)程中,最重要的是找到用計(jì)算機(jī)解決這個(gè)問(wèn)題的算法,至于用哪種語(yǔ)言編寫是其次的。

C語(yǔ)言源程序:

#include

main()

{int sum=0,i=;

For(i=1;i<=100;i++)

Sum=sum+i;

printf(“%d”,sum);}、

匯編語(yǔ)言源程序:

DATA SEGMENT

RESU DW

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV AX,0

MOV BX,0

NEXT: ADD AX,BX

INC BX

CMP BX,101

JC NEXT

MOV RESU,AX

MOV AH,4CH

INT 21H

CODE ENDS

END START

在1+2+……+100這個(gè)例子中,關(guān)鍵是知道:sum=sum+i,然后通過(guò)改變i的步長(zhǎng),實(shí)現(xiàn)編程。至于用匯編語(yǔ)言還是用C語(yǔ)言或者其他語(yǔ)言都可以,不同語(yǔ)言只是使用的語(yǔ)句或者指令不同而已。

通過(guò)在課堂上生動(dòng)地比喻和列舉教學(xué)實(shí)例,學(xué)生漸漸理解算法的重要性,知道如果要熟練掌握編程,包括兩方面學(xué)習(xí),既要學(xué)好各種語(yǔ)言的語(yǔ)法規(guī)則、數(shù)據(jù)類型,又要學(xué)會(huì)根據(jù)問(wèn)題設(shè)計(jì)出最優(yōu)秀的算法。

四、結(jié)語(yǔ)

搞好計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言教學(xué)需要不斷根據(jù)學(xué)生學(xué)習(xí)中的疑惑探索和實(shí)踐不同教學(xué)方法。在C語(yǔ)言和匯編語(yǔ)言教學(xué)過(guò)程中,可以融合教學(xué)的地方很多,如C語(yǔ)言中的“指針”和匯編語(yǔ)言的“尋址方式”; C語(yǔ)言中的“函數(shù)”和匯編語(yǔ)言的“子程序”;C語(yǔ)言中的“移位運(yùn)算”和匯編語(yǔ)言的“移位指令”區(qū)別等。C語(yǔ)言和匯編語(yǔ)言的融合教學(xué)可以提高學(xué)生的學(xué)習(xí)興趣,促使學(xué)生積極思考,調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性和主動(dòng)性。

參考文獻(xiàn):

[1]潘瑜.論計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)學(xué)生的教育[J].淮南工業(yè)學(xué)院學(xué),2000(3):133-135.

[2]趙輝,馮東棟.C語(yǔ)言指針教學(xué)方法研究[J].福建電腦,2011(4):187-188.

[3]傅籬.計(jì)算機(jī)結(jié)構(gòu)化程序設(shè)計(jì)教學(xué)探索與實(shí)踐[J].計(jì)算機(jī)教育,2009(5):78-80.

猜你喜歡
匯編語(yǔ)言融合教學(xué)案例教學(xué)
高等學(xué)校計(jì)算機(jī)專業(yè)課程教學(xué)改革實(shí)踐——以匯編語(yǔ)言與接口技術(shù)課程為例
匯編語(yǔ)言與C語(yǔ)言的混合程序設(shè)計(jì)技術(shù)研究
電子制作(2019年10期)2019-06-17 11:45:16
提高《匯編語(yǔ)言程序設(shè)計(jì)》教學(xué)效率的思考與實(shí)踐
試論如何實(shí)現(xiàn)高中歷史教學(xué)與現(xiàn)實(shí)生活的融合
案例教學(xué)在機(jī)械創(chuàng)新設(shè)計(jì)課程中的應(yīng)用
考試周刊(2016年77期)2016-10-09 12:16:11
馬克思主義基本原理概論課案例教學(xué)的幾點(diǎn)思考
EXCEL在《投入產(chǎn)出法》案例教學(xué)中的應(yīng)用
科技視界(2016年20期)2016-09-29 12:10:02
《運(yùn)籌學(xué)》教學(xué)模式探討
科技視界(2016年20期)2016-09-29 11:38:37
淺談體育教學(xué)中如何實(shí)施素質(zhì)教育
初中歷史課堂教學(xué)與課外實(shí)踐的融合研究
考試周刊(2016年9期)2016-03-12 07:26:37
富裕县| 磴口县| 鹿泉市| 仲巴县| 九江市| 乌兰浩特市| 凤城市| 江门市| 新营市| 铅山县| 文昌市| 台北市| 阳原县| 东乡族自治县| 龙南县| 铜鼓县| 双城市| 洛浦县| 阿坝县| 阳西县| 洪江市| 金华市| 汤原县| 日土县| 民县| 邯郸县| 永善县| 哈尔滨市| 收藏| 信阳市| 桦川县| 宁乡县| 凤山市| 根河市| 睢宁县| 池州市| 都昌县| 建宁县| 米泉市| 龙山县| 芜湖市|