亚洲一区亚洲二区亚洲三区,国产成人高清在线,久久久精品成人免费看,999久久久免费精品国产牛牛,青草视频在线观看完整版,狠狠夜色午夜久久综合热91,日韩精品视频在线免费观看

不同計算機語言融合教學(xué)方法的探索與體會論文

時間:2023-04-27 12:07:52 計算機論文 我要投稿
  • 相關(guān)推薦

不同計算機語言融合教學(xué)方法的探索與體會論文

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

不同計算機語言融合教學(xué)方法的探索與體會論文

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  兩個程序輸出結(jié)果一樣,但用不同語言編寫,通過實例對比說明C語言和匯編語言的特點。

  C語言源程序:

  #include

  main()

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

  }

  匯編語言源程序:

  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

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

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

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

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

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

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

  三、計算機程序與語言

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

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

  C語言源程序:

  #include

  main()

  {int sum=0,i=;

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

  Sum=sum+i;

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

  匯編語言源程序:

  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這個例子中,關(guān)鍵是知道:sum=sum+i,然后通過改變i的步長,實現(xiàn)編程。至于用匯編語言還是用C語言或者其他語言都可以,不同語言只是使用的語句或者指令不同而已。

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

  四、結(jié)語

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

【不同計算機語言融合教學(xué)方法的探索與體會論文】相關(guān)文章:

園林測量課程教學(xué)方法探索04-29

初中數(shù)學(xué)教學(xué)方法的探索與實踐04-29

關(guān)于工科ESP教學(xué)方法的思考與探索04-27

高校二外日語教學(xué)方法探索04-27

航道整治課程教學(xué)方法探索與實踐04-29

數(shù)控編程課程項目教學(xué)方法的探索04-28

大學(xué)語文教學(xué)方法探索04-26

不同粒度語言評價集的融合方法研究04-27

《程序設(shè)計課程》教學(xué)方法的探索與實踐04-29

兩化融合:新型工業(yè)化道路探索04-29