999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

試論匯編語言與C語言的混合程序設計技術

2015-03-26 22:36:05營口理工學院李洪剛
電子世界 2015年18期
關鍵詞:程序

營口理工學院 李洪剛

試論匯編語言與C語言的混合程序設計技術

營口理工學院 李洪剛

匯編語言與C語言分別是計算機編程過程中兩種不同類型的語言,既可單獨用于單獨編程,亦可混合使用,而在實際的軟件開發設計過程中,為最大程度提高工作效率,拓展軟件性能以及維護其性能的穩定性,往往混合采用兩種不同的語言。本文主要就匯編語言與C語言的混合程序設計技術進行探索研究,并分別從C語言調用混編語言子程序等方面進行分析,以期為提高計算機程序的運行效率提供相應的理論參考和支持。

匯編語言;C語言;混合;程序設計

C語言是目前計算機高級編程過程中應用最為廣泛的語言的之一,與其它編程語言相比,其具有良好的功能性以及靈活性等方面的特點;與C語言相比,匯編語言具有運算速度快等方面的特點,在軟件開發或者是程序設計過程中,通過使用匯編語言則可以通過提高儲存器的運算速度來有效提升其儲存空間。將C語言和匯編語言有機結合在一起,則可以充分利用兩者的優勢,從而實現高質量、高效率的任務設計目的。

1 匯編語言與C語言的混合編程方法分析

在軟件開發或者是程序設計過程中,對匯編語言與C語言進行混合編程作業的過程中,主要可以分為以下三種類型:

1.1 C語言調用匯編語言子程序

在計算機軟件開發設計或者是程序編程過程中,若采用C語言進行編程所調用的匯編語言指令較多,則可以在C語言編程過程中直接調用匯編語言子程序的格式,以提高編程工作效率,但在采用C語言進行編程的過程中,其所采用的C語言編譯系統往往是有固定的、約束成型的段組合。這就意味著,在C語言編程過程中調用匯編語言子程序時,要確保匯編語言子程序要遵守并符合C語言編譯系統所要求的段組合順序及相關約定,具體表現如下:一是在匯編語言的子程序內要按照約定或者是相關規定采用“EXTERN”對函數顯示進行相關說明,并在此基礎上將其作為連接C語言及匯編語言子程序的接口;此外,在此過程中要注意下事項,即在函數名字的設置過程中,要確保其在8個字符以內,并選用下劃線格式;

二是在匯編語言子程序內部參數順序的設置過程中,要根據其原有的標準順序作反向順序;之后,再講參數依次嵌入棧中,也即指,在參數設置中,要將原有標準參數順序中的最后一個參數首先壓入棧中,且地址最高,并以此類推;

三是對匯編語言子程序內的代碼段要加以說明,并以“-TEXT”為命名原則,對子程序內的加代碼段進行命名;此外,在對匯編語言子程序過程進行選擇和確定的過程中,要嚴格以C程序的模式為依據,也即為,C語言程序的小模式對應匯編語言子程序的近過程,而大模式則對應遠過程;

四是在匯編語言子程序參數確定的過程中,一般選用C語言程序的參數作為匯編程度的參數,但要注意的是,當匯編語言子程序遠過程返回地址時,其一般需要占據4個字符,而BP的壓入則需要占用2個字符,因此,在確定匯編語言子程序遠過程參數的過程中,其首個參數的位置要選擇在BP+6指向的單元;同理,匯編語言子程序近過程參數的選擇需要確定在BP+4指向的單元;

五是匯編語言程序在運行或者是使用的過程中需要兼顧保護寄存器,而C語言程序在調用匯編語言子程序的過程中會使得寄存器的數量在2個以上,其中的多余部分則自動轉入棧中進行儲存,因此,在調用匯編語言子程序的過程中,匯編過程必須要遵循相應的格式,以滿足程序運行需求。

1.2 匯編語言調用C語言子程序

匯編語言在計算機硬件方面加強的控制作用力等方面優勢使得在計算機開發設計以及編程過程中,匯編語言可以實現對C語言子程序的調用,以有效利用C語言程序在編程中所具有的優勢,但要注意的是,在調用C語言子程序的過程中,并不需要改變匯編語言程序的格式,而是要確保其子程序及主程序格式的一致性,并分別在主、子程序開始運行前加上“EXTREN”函數名,以作為匯編語言程序調用C語言子程序的外部函數,在此基礎上,則可以通過匯編語言程序主過程中的CALL語句對C語言子程序進行調用,以實現較高的工作效率。

1.3 C語言程序嵌入匯編語言程序中

C語言程序嵌入匯編語言程序中主要存在有兩種嵌入方式,并分別應用在不同的編程情況下,具體表現為:一是C語言程序調用匯編語言子程序模塊的嵌入方式,在該種嵌入方式中要謹遵以下模塊劃分原則,以實現兩者的合理搭配:為達成軟件開發設計或者是編程設計任務需求,在選用該種嵌入方式的過程中,每個模塊的體現形式均應該表現為函數或者是過程,并在此基礎上選擇相應的編寫語言進行程序編寫;要注意的是,若在編程過程中,主程序選擇C語言進行編寫或者是含有部分C語言,而模塊選擇匯編語言進行程序編寫,則需要在編寫時充分利用C語言程序調用匯編語言子程序進行子模塊匯編,并在此基礎上,根據主程序以及模塊各自的特點形成特定的目標代碼模塊,再將不同的目標代碼模塊相連接,最終形成相應的可執行文件,實現C語言程序對匯編語言子程序模塊的有效調用;

二是在C語言程序中嵌入匯編指令,該種嵌入方式主要適用在C語言程序無法實現對硬件的有效控制過程中,如調整寄存器的值或者是某種功能的重復性使用等,都可通過在C語言編程過程中嵌入匯編指令實現;在此過程中要注意的是,寄存器的命名以及MASM.EXE程序的拷貝等,要儲存在特定的目錄下,以便于進行編譯。

2 匯編語言與C語言連接應注意的關鍵性問題

在匯編語言和C語言混合程序的設計過程中,為保障編程質量,要注意C語言與匯編語言連接的參數傳遞、調用關系確定以及C語言與匯編語言程序間的模塊連接三方面的關鍵性問題,以有效彌補兩種語言在編程過程中存在的不足之處,具體表現如下:

2.1 參數的傳遞

在匯編語言以及C語言回合程序的設計過程中,在參數傳遞方面,往往采用堆棧進行參數傳遞,具體是指,在C語言的匯編過程中,通常將BP基址作為原來數據的儲存器,而其匯編參數則儲存在堆棧成的儲存器中,并通過在BP基址上加入不同的偏移量來實現對參數的有效使用,完成參數的傳遞任務。

2.2 調用關系的確定

調用關系的確定是有效保障匯編語言與C語言混合程序設計質量的重要基礎。因此,在匯編語言及C語言混合程序的設計過程中,首先要明確兩者之間的調用關系,具體包括:一是在C語言或者是匯編語言程序函數或者是過程調用之前,首先要進行相應的說明,并建立起恰當的調用關系,詳細說明調用程序或者是函數的外部類型及引用的外部模塊等方面內容;二是要依據儲存模式確定相應的匯編語言格式,如大模式C語言程序對應匯編語言程序的遠類型過程等。

2.3 C語言程序及匯編語言程序的模塊連接

為保證C語言程序與匯編語言程序模塊連接的正確性和有效性,在進行連接的過程中,要滿足以下兩方面要求:一是匯編語言程序模塊與C語言程序模塊儲存方式的一致性,且在命名的過程中,匯編語言程序模塊必須服從C語言程序模塊兼容的命名約定;二是在C語言的編譯過程中,其變量及函數名稱下方都要添加相應的下劃線,以保障連接質量。

3 結語

綜合上述可知,在軟件開發設計或者是計算機編程過程中,為提高軟件性能以及編程效率可以將匯編語言與C語言有效結合起來進行混合編程,以實現兩種語言的優勢互補。因此,在進行計算機編程或者是軟件開發設計時,要注重匯編語言與C語言的混合使用,以有效實現兩種語言程序的參數傳遞以及數據共享等,大大提高軟件開發效率,提高軟件開發與編程的安全實用性。

[1]楊波.探究匯編語言與C語言的混合程序設計技術[J].電子技術與軟件工程,2015(16).

[2]印德彬. 匯編語言與C語言的混合程序設計技術[J].電子技術與軟件工程.,2015(02).

[3]康晶晶.匯編語言與C語言的混合程序設計技術[J].計算機時代,2013(06).

[4]陳久婭.C語言與匯編語言的混合程序設計技術研究[J].電子制作,2013,(04).

李洪剛(1973—),男,大學本科,營口理工學院高級教師,研究方向:數學與計算機科學。

猜你喜歡
程序
給Windows添加程序快速切換欄
電腦愛好者(2020年6期)2020-05-26 09:27:33
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
基于VMM的程序行為異常檢測
偵查實驗批準程序初探
我國刑事速裁程序的構建
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
恐怖犯罪刑事訴訟程序的完善
主站蜘蛛池模板: 亚国产欧美在线人成| 亚洲成A人V欧美综合天堂| 国产精品第一区在线观看| 亚洲综合日韩精品| 日韩成人在线网站| 色噜噜中文网| 精品国产免费观看| 免费xxxxx在线观看网站| 九月婷婷亚洲综合在线| 极品国产一区二区三区| 亚洲第一区欧美国产综合| 亚洲 日韩 激情 无码 中出| 精品一区二区无码av| 国产欧美精品一区二区| 天堂网亚洲系列亚洲系列| 国产内射在线观看| 五月激情综合网| 日本人妻一区二区三区不卡影院| a在线亚洲男人的天堂试看| 国产成人精品一区二区秒拍1o| 欧美日本激情| 在线毛片免费| 九九久久99精品| 午夜精品国产自在| 国产白浆在线| 成年网址网站在线观看| 国产人成网线在线播放va| A级毛片高清免费视频就| 人妻中文久热无码丝袜| 天天躁夜夜躁狠狠躁图片| 97精品国产高清久久久久蜜芽 | 久久中文电影| 亚洲天堂视频在线免费观看| 99福利视频导航| 久久精品无码一区二区日韩免费| 亚洲熟女中文字幕男人总站| 成年人国产网站| 亚洲国产成人超福利久久精品| 国产乱人伦偷精品视频AAA| 99在线视频免费观看| 久久精品无码国产一区二区三区| 亚洲AⅤ波多系列中文字幕| 超薄丝袜足j国产在线视频| 亚洲手机在线| 老司机精品一区在线视频| 免费va国产在线观看| 在线观看国产精品第一区免费| 久久精品国产91久久综合麻豆自制| 51国产偷自视频区视频手机观看| 一级毛片免费不卡在线| 午夜a级毛片| 毛片久久网站小视频| 午夜高清国产拍精品| 亚洲男人天堂2020| 波多野结衣久久高清免费| 日韩中文字幕免费在线观看| 日韩欧美国产综合| 男人天堂亚洲天堂| 亚洲欧美精品日韩欧美| 一级全免费视频播放| 日韩美毛片| 国产成人三级| 国产一区二区三区免费观看| 国产精品久久久久久久伊一| 久草中文网| 国产极品美女在线播放| 美女被躁出白浆视频播放| 四虎成人精品| 欧美日韩激情在线| 国产在线自乱拍播放| 综合天天色| 中文毛片无遮挡播放免费| 台湾AV国片精品女同性| 国产成人综合在线观看| 日韩欧美中文字幕一本| 午夜福利网址| 国产精品v欧美| 欧美a级在线| 男女性午夜福利网站| 白浆视频在线观看| 原味小视频在线www国产| 日韩欧美中文在线|