龐新法PANG Xin-fa
(陜西省委黨??萍冀萄胁浚靼?10061)
匯編語(yǔ)言不同于其它高級(jí)語(yǔ)言,必須要求編程人員有一定的硬件基礎(chǔ),如對(duì)CPU的結(jié)構(gòu)、CPU與存儲(chǔ)器等部件的數(shù)據(jù)傳送過(guò)程必須要有基本的了解,這樣才能學(xué)好這門課程。在教學(xué)過(guò)程中,教師發(fā)現(xiàn)學(xué)生對(duì)高級(jí)語(yǔ)言編程學(xué)習(xí)積極性高,對(duì)匯編語(yǔ)言課程缺乏興趣,但因?yàn)檎n程本身指令復(fù)雜,規(guī)定繁多,再加上學(xué)習(xí)匯編指令前對(duì)CPU的相關(guān)工作過(guò)程理解不透,導(dǎo)致學(xué)生厭學(xué),又由于本課程面對(duì)的低年級(jí)學(xué)生只有高級(jí)語(yǔ)言的基礎(chǔ),習(xí)慣于高級(jí)語(yǔ)言的自然表達(dá),初次接觸計(jì)算機(jī)硬件知識(shí)心理上有恐懼感,更難以適應(yīng)繁雜的低級(jí)語(yǔ)言。本文用比較的辦法,通俗易懂的自然比喻對(duì)這門課中易混淆的,較難理解的概念予以解釋分析。
表1
例如:ADD AX,10+5 經(jīng)過(guò)匯編變成 ADD AX,15,10+5的運(yùn)算匯編階段完成,AX和15的加法運(yùn)算要等到運(yùn)行階段才能完成,匯編階段能實(shí)現(xiàn)的運(yùn)行階段一定能實(shí)現(xiàn),上述+運(yùn)算可變?yōu)锳DD AX,10;ADD AX,5兩句實(shí)現(xiàn)。運(yùn)行階段能實(shí)現(xiàn)的,匯編階段不一定能實(shí)現(xiàn),如ADD AX,BX+CX;程序還沒(méi)有運(yùn)行,匯編階段不可能知道BX,CX的值,更談不上計(jì)算二者之和。
再如以下用漢語(yǔ)表示的程序,要翻譯成英語(yǔ),看看偽指令語(yǔ)句如何指導(dǎo)匯編過(guò)程:
以下是黑體,2號(hào)字,居中 ;指導(dǎo)匯編
通知 ;翻譯
以下是宋體,3號(hào)字,首行縮進(jìn) ;指導(dǎo)匯編
今天下午開會(huì)…… ;翻譯
以下是楷體,4號(hào)字,右對(duì)齊 ;指導(dǎo)匯編
特此通知 ;翻譯
表2
表3
5 CALL、INT、硬中斷的區(qū)別
表4
可以看出,INT既有CALL的特點(diǎn)(可預(yù)知),又有硬中斷的特點(diǎn)(中斷類型碼轉(zhuǎn)換成入口地址),介于二者之間,故稱INT指令為軟中斷指令(由軟件指令I(lǐng)NT發(fā)出的中斷)。
表5
為了說(shuō)明段地址、段內(nèi)地址、物理地址三者之間的關(guān)系,下面舉例說(shuō)明(表7)。
表6
表7
溢出,就是放不下,一旦溢出結(jié)果一定是錯(cuò)的。例如兩個(gè)瓶子容量各是5斤,一個(gè)裝了3斤水,一個(gè)裝了4斤水,理論上講,倒在一個(gè)瓶子應(yīng)該是7斤,但全部倒在一個(gè)瓶子后,成了5斤,2斤溢出,不能說(shuō)3+4=5,所以一旦溢出結(jié)果一定是錯(cuò)的。異號(hào)相加,越加越少,原來(lái)放得下,加了之后一定放得下,故絕對(duì)不溢出。同號(hào)相加,越加越多,原來(lái)放得下,加了之后不一定放得下,故有可能溢出。若溢出OF=1,正數(shù)加正數(shù)應(yīng)該是正數(shù),應(yīng)該SF=0,但若結(jié)果SF=1,正數(shù)加正數(shù)是負(fù)數(shù),SF=1是錯(cuò)的(假的符號(hào)位)。同樣道理,負(fù)數(shù)加負(fù)數(shù)應(yīng)該是負(fù)數(shù),應(yīng)該SF=1,但若結(jié)果SF=0,負(fù)數(shù)加負(fù)數(shù)是正數(shù),SF=0是錯(cuò)的(假的符號(hào)位)。
表8
總之,匯編語(yǔ)言是計(jì)算機(jī)程序編寫中最經(jīng)常用的一種必要程序語(yǔ)言,投入?yún)R編語(yǔ)言領(lǐng)域更多的研究與開發(fā)關(guān)注也是十分必要和有益的。
[1](美)布魯姆著.編語(yǔ)言程序設(shè)計(jì)[M].馬朝暉,譯.北京:機(jī)械工業(yè)出版社,2006.
[2]全選悅,趙煥平.匯編語(yǔ)言的教學(xué)改革和思考[J].福建電腦,2008(2).
[3]鄭影,林立東,李大輝,王殿富,艾麗麗,滕艷平.基于匯編語(yǔ)言課程培養(yǎng)高素質(zhì)應(yīng)用型人才策略[J].高師理科學(xué)刊,2012(03).