笪靜
摘要 在對(duì)計(jì)算機(jī)軟件進(jìn)行編程的過(guò)程當(dāng)中,可以對(duì)C語(yǔ)言加以利用實(shí)現(xiàn)對(duì)程序設(shè)計(jì)步驟的簡(jiǎn)化,同時(shí)讓程序運(yùn)行結(jié)果更為準(zhǔn)確。此外,將C語(yǔ)言作為基礎(chǔ)的計(jì)算機(jī)軟件編程能夠更好的促進(jìn)計(jì)算機(jī)軟件更新,從而呈現(xiàn)出更多的應(yīng)用功能和優(yōu)質(zhì)的應(yīng)用效果。本文首先對(duì)C語(yǔ)言進(jìn)行了簡(jiǎn)單的介紹,繼而探討了計(jì)算機(jī)軟件編程當(dāng)中的C語(yǔ)言。
【關(guān)鍵詞】計(jì)算機(jī)軟件編程 B語(yǔ)言 C語(yǔ)言 匯編語(yǔ)言
C語(yǔ)言屬于一種新型高級(jí)編程語(yǔ)言,能夠完成一些高難度的編程任務(wù),而且屬性和使用方法都比較簡(jiǎn)單,不會(huì)受到多余條件的限制,使用者能夠在計(jì)算機(jī)編程的設(shè)計(jì)當(dāng)中對(duì)軟件加以靈活運(yùn)用,繼而結(jié)合編程需求,進(jìn)行自由處理。此外,計(jì)算機(jī)軟件編程當(dāng)中的C語(yǔ)言在語(yǔ)法方面的限制也不嚴(yán)格,能夠應(yīng)用在多種操作系統(tǒng)當(dāng)中,具備較好的移植性,所以能夠有效推動(dòng)信息技術(shù)的發(fā)展。
1 C語(yǔ)言
C語(yǔ)言屬于將B語(yǔ)言作為基礎(chǔ),繼而進(jìn)行完善而逐步發(fā)展而來(lái)的。1967年,英國(guó)專家首先開發(fā)了BCPL語(yǔ)言,而在1970年,美國(guó)將其作為基礎(chǔ),繼而開發(fā)出了B語(yǔ)言。相對(duì)來(lái)說(shuō),B語(yǔ)言功能比較有限,而且語(yǔ)言簡(jiǎn)單,已經(jīng)無(wú)法滿足于目前對(duì)計(jì)算機(jī)軟件進(jìn)行編程方面的需求。而將B語(yǔ)言作為基礎(chǔ),各國(guó)專家逐漸開始強(qiáng)化對(duì)于計(jì)算機(jī)編程方面的探索和研究,經(jīng)過(guò)了多次試驗(yàn)之后,最終于1972年,由美國(guó)的貝爾實(shí)驗(yàn)室成功研發(fā)并推出了C語(yǔ)言。從1978年開始,各種大中小型的計(jì)算機(jī)逐漸對(duì)C語(yǔ)言加以移植,使其成為了系統(tǒng)設(shè)計(jì)語(yǔ)言,從而給系統(tǒng)程序編寫的相關(guān)工作形成了良好的支持。
在編程語(yǔ)言當(dāng)中,所有計(jì)算機(jī)語(yǔ)言都是將C語(yǔ)言作為基礎(chǔ)。其屬于一種高級(jí)語(yǔ)言,不僅靈活方便,而且具備匯編語(yǔ)言以及高級(jí)語(yǔ)言等多種特征,顯得十分簡(jiǎn)潔和緊湊。此外,C語(yǔ)言具備較強(qiáng)的移植性,表達(dá)能力較強(qiáng),功能十分豐富,得到了非常廣泛的應(yīng)用,適合在多種操作系統(tǒng)當(dāng)中應(yīng)用,繼而實(shí)現(xiàn)自由書寫,在目前信息技術(shù)高速發(fā)展的時(shí)代當(dāng)中呈現(xiàn)出了優(yōu)質(zhì)的效果。
2 計(jì)算機(jī)軟件編程當(dāng)中的C語(yǔ)言分析
2.1 匯編語(yǔ)言
在對(duì)計(jì)算機(jī)軟件進(jìn)行編程處理的過(guò)程當(dāng)中,讓C語(yǔ)言跟編程語(yǔ)言之間相互結(jié)合,可以更好的解決一些高難度編程,并且可以讓計(jì)算機(jī)軟件所呈現(xiàn)的編程以及開發(fā)效率實(shí)現(xiàn)進(jìn)一步提升。二者之間的相互融合,需要將寄存器村進(jìn)行轉(zhuǎn)換,從而實(shí)現(xiàn)對(duì)語(yǔ)言進(jìn)行匯編的目的。例如,在C語(yǔ)言的源程序當(dāng)中納入?yún)R編語(yǔ)句,這時(shí)需要利用“{}”對(duì)其加以擴(kuò)充處理,并且要添加“asm”,讓指令代碼置于“asm”之前,然后利用“:”分隔符對(duì)匯編語(yǔ)言以及C語(yǔ)言進(jìn)行區(qū)分。在匯編程序嵌入的過(guò)程中,負(fù)責(zé)對(duì)計(jì)算機(jī)軟件進(jìn)行編寫的工作人員需要定義程序,利用C語(yǔ)言對(duì)函數(shù)進(jìn)行表示和定義,繼而加以區(qū)分,依據(jù)模塊所具備使用特點(diǎn)的不同,對(duì)目標(biāo)文件作出分析,繼而實(shí)現(xiàn)編程可靠性的有效提升。
2.2 C語(yǔ)言和匯編語(yǔ)言的鏈接
在對(duì)C語(yǔ)言以及匯編語(yǔ)言進(jìn)行編寫的過(guò)程當(dāng)中,若想形成鏈接,應(yīng)該對(duì)獨(dú)立編譯目標(biāo)代碼加以設(shè)置。C語(yǔ)言以及匯編語(yǔ)言二者之間可以實(shí)現(xiàn)相互調(diào)用,由多個(gè)功能模塊共同構(gòu)成一個(gè)任務(wù),有些語(yǔ)言能夠自己轉(zhuǎn)化為功能模塊。因此,在對(duì)計(jì)算機(jī)軟件進(jìn)行編程的過(guò)程當(dāng)中,軟件編程工作人員需要對(duì)不同模塊所具備的特點(diǎn)形成良好的掌握,以此為基礎(chǔ)對(duì)編程進(jìn)行設(shè)置,構(gòu)建目標(biāo)文件,從而實(shí)現(xiàn)有效執(zhí)行。此外,在對(duì)C語(yǔ)言進(jìn)行編程的過(guò)程當(dāng)中,匯編程序需要進(jìn)行變量定義以及函數(shù)調(diào)用,這就需要工作人員考慮利用寄存器、調(diào)用函數(shù)以及傳遞參數(shù)等相關(guān)問題。在對(duì)計(jì)算機(jī)軟件進(jìn)行編程的過(guò)程當(dāng)中,需要結(jié)合堆棧匯編程序形成對(duì)參數(shù)的傳遞,繼而依據(jù)這種規(guī)則實(shí)現(xiàn)對(duì)軟件的編程。例如,在Voidaa(char*p,inti)這個(gè)函數(shù)進(jìn)行編程處理的時(shí)候,就應(yīng)該對(duì)匯編語(yǔ)言加以應(yīng)用,在小內(nèi)存的系統(tǒng)模式當(dāng)中設(shè)置為aa (&q,n),在系統(tǒng)運(yùn)行的時(shí)候,可以有效存儲(chǔ)數(shù)據(jù)以及參數(shù)傳遞,需要堆棧壓n。此外,在子程序的編程調(diào)用以及C語(yǔ)言程序當(dāng)中,都利用到了一個(gè)堆棧,這時(shí)將會(huì)形成兩種指令“sp以及pushbp pop bp”,為了可以更加方便執(zhí)行的過(guò)程,應(yīng)該針對(duì)這兩個(gè)指令加以設(shè)置處理。
2.3 C語(yǔ)言編程以及匯編語(yǔ)言編程
通常在C語(yǔ)言編程以及匯編語(yǔ)言編程二者相混合編程的情況之下,主要包括以下三種方式:
2.3.1 匯編語(yǔ)言對(duì)C語(yǔ)言進(jìn)行調(diào)用的子程序
在該種方式當(dāng)中,匯編語(yǔ)言相應(yīng)的子程序跟主程序在格式方面不應(yīng)該出現(xiàn)變動(dòng),需要維持程序格式的一致性,繼而利用“EXTREN函數(shù)名”對(duì)身份進(jìn)行表明,這也就證明這個(gè)函數(shù)屬于匯編語(yǔ)言所調(diào)用C語(yǔ)言子程序當(dāng)中的一種外部函數(shù)。
2.3.2 C語(yǔ)言對(duì)匯編語(yǔ)言進(jìn)行調(diào)用的子程序
該種方式需要遵從以下六個(gè)方面的原則:
(1)需要將參數(shù)順序作為基礎(chǔ),而堆棧參數(shù)應(yīng)該是反向循環(huán)。
(2)需要將參數(shù)值作為基礎(chǔ)開始傳遞。
(3)應(yīng)該將“EXTREN函數(shù)名”對(duì)函數(shù)進(jìn)行說(shuō)明,而其所應(yīng)用的字符數(shù)不應(yīng)該多于八個(gè),而且要設(shè)置下劃線。
(4)匯編程序需要保護(hù)好寄存器。
(5)對(duì)代碼段進(jìn)行說(shuō)明,在對(duì)代碼段進(jìn)行命名的時(shí)候需要利用“-TEXT”。
(6)將C程序當(dāng)中的參數(shù)當(dāng)作匯編程序參數(shù)。
在進(jìn)行編程混合的過(guò)程當(dāng)中,需要遵從以上所述六個(gè)原則,而且需要利用更為科學(xué)的開頭語(yǔ)結(jié)尾格式。
2.3.3 C語(yǔ)言向匯編語(yǔ)言嵌入
該種方式主要分成兩方面內(nèi)容。
(1)C程序?qū)R編語(yǔ)言當(dāng)中子程序加以調(diào)用。C語(yǔ)言程序當(dāng)中對(duì)匯編語(yǔ)言進(jìn)行調(diào)用的子程序需要將主程序以及模塊作為基礎(chǔ),若C語(yǔ)言以及模塊屬于匯編語(yǔ)言主程序,就需要利用C語(yǔ)言程序?qū)R編語(yǔ)言的子程序進(jìn)行調(diào)用。
(2)匯編語(yǔ)言當(dāng)中對(duì)C語(yǔ)言嵌入的程序。主要對(duì)C語(yǔ)言程序當(dāng)中無(wú)法對(duì)軟件進(jìn)行處理情況加以改善,例如對(duì)某種功能的重復(fù)利用,或者終端標(biāo)志的寄存器修改等。
3 結(jié)束語(yǔ)
總而言之,C語(yǔ)言對(duì)于計(jì)算機(jī)軟件編程工作具有十分重要的應(yīng)用意義,是推動(dòng)信息技術(shù)發(fā)展的基礎(chǔ)。相關(guān)從業(yè)人員應(yīng)該積極探索,對(duì)國(guó)外的一些先進(jìn)技術(shù)以及理念加以借鑒,繼而與我國(guó)計(jì)算機(jī)軟件編程行業(yè)整體的情況相結(jié)合,創(chuàng)建出一套更加符合我國(guó)國(guó)情的C語(yǔ)言應(yīng)用體系,為國(guó)家經(jīng)濟(jì)建設(shè)注入源源不斷的活力。
參考文獻(xiàn)
[1]趙志全,關(guān)家勤.C語(yǔ)言下的計(jì)算機(jī)軟件編程探析[J].電腦知識(shí)與技術(shù),2017,13 (10):71+77.
[2]丁群,陳海娃,洪娜佳,基于C語(yǔ)言的計(jì)算機(jī)軟件編程分析[J].科技創(chuàng)新與應(yīng)用,2016 (29):88.