楊靜
【摘要】 本文分析了匯編語言與C語言的混合技術(shù),在對大規(guī)模的程序進行設(shè)計的過程中,要運用匯編語言和高級語言的合成,從而能夠展現(xiàn)出各自的優(yōu)點,實現(xiàn)兩種語言之間的轉(zhuǎn)化。在計算機程序設(shè)計的過程中,C語言能夠?qū)R編語言起到調(diào)節(jié)的作用,匯編語言的主程序也能夠提高C語言程序的編程效率,可以采用嵌入式的方法,實現(xiàn)兩種語言的共同使用。在對匯編語言和C語言共同使用的過程中,實現(xiàn)參數(shù)的連接和模塊的結(jié)合是重點問題。
【關(guān)鍵詞】 匯編語言 C語言 混合編程
匯編語言是運用機器編制的語言程序,其運行的效率非常高,而且不會占據(jù)較大的空間,能夠?qū)τ嬎銠C的硬件進行處理。但在匯編語言發(fā)展的過程中也存在著一些不足之處,如調(diào)試工作比較復(fù)雜。匯編語言和機器語言一樣,屬于低級語言,因此可以借助C語言實現(xiàn)編程,兩種語言結(jié)合使用能夠提高軟件的開發(fā)效率,而且能夠在編程的時候占據(jù)較小的空間,實現(xiàn)空間的高效利用。
一、匯編語言和C語言混合編程的方法
C語言和匯編語言實現(xiàn)混合的編程,一個任務(wù)能夠被分成不同的模塊,然后進行同步的編程,這樣可以提高編程的效率,每個模塊都可以運用函數(shù)來表達,而且還可以借助子程序的形式存在,按照不同模塊的特點,選擇不同的語言編程的程序,從而能夠運用語言的編譯系統(tǒng),生成想要的程序,然后將每個模塊的文件編程好以后結(jié)合在一起。在C語言程序中,要借助匯編語言表達變量和常量的關(guān)系,可以將匯編語言直接嵌入到C語言中使用,從而能夠?qū)崿F(xiàn)對計算機硬件的強大控制功能。
1、C語言主程序的調(diào)用。為了能夠確保在C語言程序中對匯編語言的使用,匯編語言的程序要按照要求來編寫,而且要按照一定的順序進行。在對匯編語言的程序進行編寫的過程中,一般是先定義函數(shù)名,然后定義變量,形成初始化的數(shù)據(jù),最后是編寫程序的語句。
2、匯編語言的主程序使用C語言的子程序。在匯編語言中,很多功能是C語言所不具備的,所以,在對匯編程序輸入的過程中,應(yīng)該采用不同的進制數(shù),將匯編語言作為主程序,將C語言作為嵌入式程序進行使用。匯編語言的主程序具有一致性的結(jié)構(gòu),其是由不同的函數(shù)名構(gòu)成的。在C語言中,對匯編語言進行使用時,首先要設(shè)計匯編的代碼,在C語言的程序中各個代碼是用分號區(qū)分的,C語言的嵌入到匯編語言中,可以采用一般指令和跳轉(zhuǎn)指令的方法。
二、匯編語言與C語言連接的問題分析
匯編語言和C語言進行編程時混合使用,需要分析函數(shù)在建立的過程中參數(shù)的傳遞問題,分析匯編程序和C語言程序模塊的有效連接的問題。
1、參數(shù)的傳遞。在匯編語言和C語言共同使用的過程中,由于其參數(shù)是不同的,在兩種語言混合使用時,就需要實現(xiàn)參數(shù)的過度,要對參數(shù)進行調(diào)節(jié),一般情況下是運用堆棧的方法實現(xiàn)參數(shù)的傳遞的。在匯編語言中,地址寄存器一般是運用BP,在程序調(diào)用之前,應(yīng)該先將C語言的參數(shù)放入到堆棧中,這些參數(shù)在傳遞的過程中,就要運用BP實現(xiàn)不同的偏移量的整合操作。
2、調(diào)用關(guān)系的確定。在匯編語言和C語言調(diào)用的過程中,應(yīng)該要對其函數(shù)進行分析,建立調(diào)用的關(guān)系,在被調(diào)用的語言中應(yīng)該分析函數(shù)的類型,然后使語言能夠被外部的模塊使用,調(diào)用的程序也需要例舉出外部模塊的形式。在對調(diào)用的關(guān)系進行分析的過程中,要按照不同的儲存方式進行,C語言是針對小模式進行的,匯編語言是針對大模式進行的。
3、匯編語言和C語言的模塊的結(jié)合。在匯編語言和C語言混合使用之前,實現(xiàn)正確的結(jié)合是關(guān)鍵,要實現(xiàn)二者的正確結(jié)合,首先要確保二者的儲存模式是相同的,而且匯編語言的模塊要與C語言的模塊具有兼容性特點,采用相同的名稱命名,其函數(shù)和變量名稱也應(yīng)該是一致的。
在C語言中,可以采用不同的儲存模式,比較常見的儲存模式有小模式和緊湊模式,在實現(xiàn)兩種混合編程語言混合使用時,要實現(xiàn)儲存模式的一致。在匯編語言中,一般使用的是偽指令的方法,如果在C語言中采用的是小模式,那么在匯編語言中也要采用小模式。在運用編譯系統(tǒng)對C語言的程序編譯的過程中,應(yīng)該確定其變量的名稱,在函數(shù)名稱中,應(yīng)該是由不同的字母和下劃線構(gòu)成,為了能夠使程序保持一致性,在匯編語言的程序中,應(yīng)該在所有的符號中都加有下劃線,為了能夠使匯編語言的字符都能夠子啊C語言中呈現(xiàn),一般都是采用PUBLIC操作符來定義的。
結(jié)語:在語言編程中,將匯編語言和C語言混合使用,能夠充分發(fā)揮出二者的優(yōu)勢,實現(xiàn)了參數(shù)的調(diào)節(jié),在傳遞信息的時候效率更高。所以,在軟件開發(fā)的過程中將二者結(jié)合使用,提高了軟件的實用性,而且軟件的可靠性得到了完善。兩種語言結(jié)合使用能夠提高軟件的開發(fā)效率,而且能夠在編程的時候占據(jù)較小的空間,實現(xiàn)空間的高效利用。
參 考 文 獻
[1]王文東,李竹林,尚建人. 匯編語言與C語言的混合程序設(shè)計技術(shù)[J]. 計算機技術(shù)與發(fā)展,2011,08:18-20.
[2]印德彬. 匯編語言與C語言的混合程序設(shè)計技術(shù)[J]. 電子技術(shù)與軟件工程,2015,02:254.
[3]蔣仁祥. 淺談匯編語言與C語言的混合程序設(shè)計技術(shù)[J]. 大眾科技,2015,02:16-18.
[4]陳久婭. C語言與匯編語言的混合程序設(shè)計技術(shù)研究[J]. 電子制作,2013,04:61.