亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于C語言的計(jì)算機(jī)軟件編程實(shí)驗(yàn)研究

        2013-04-29 00:44:03
        軟件工程 2013年8期
        關(guān)鍵詞:匯編語言計(jì)算機(jī)軟件指針

        摘 要:C語言是一切計(jì)算機(jī)語言的基礎(chǔ),在計(jì)算機(jī)軟件編程中應(yīng)用十分廣泛。本文首先簡單概述了C語言的相關(guān)內(nèi)容,然后分別從C語言的編程技巧以及兩個(gè)不同類型的基于C語言的計(jì)算機(jī)軟件編程案例進(jìn)行分析研究,希望能夠?qū)ν醒芯空哂兴鶐椭?/p>

        關(guān) 鍵 詞:C語言;計(jì)算機(jī);軟件編程;實(shí)驗(yàn)研究

        一、C語言的概述

        在1967年BCPL語言被英國MartinRichards 推出,到1970 年B 語言以BCPL 語言為基礎(chǔ)被美國Ken Thompson推出[1]。但是B 語言過于簡單,而且功能有限,經(jīng)過研究者的多次試驗(yàn)研究,在1972—1973 年,C 語言在B 語言的基礎(chǔ)上經(jīng)過完善,被美國貝爾實(shí)驗(yàn)室D.M推出[2]。在各種計(jì)算機(jī)編程語言中,C語言屬于一門高級語言,它是一切計(jì)算機(jī)語言的基礎(chǔ),擁有高級語言和低級語言的特點(diǎn),靈活方便,簡潔緊湊;而且它的語法限制不嚴(yán)格,程序員在設(shè)計(jì)時(shí)程序書寫自由。不僅能夠編寫系統(tǒng)軟件,同時(shí)還可以編寫應(yīng)用軟件,能夠適應(yīng)于多種操作系統(tǒng),應(yīng)用廣泛,可移植性強(qiáng)??傊?,C語言對于信息技術(shù)的發(fā)展具有十分重要的作用和價(jià)值。

        二、基于C語言的計(jì)算機(jī)軟件編程實(shí)驗(yàn)研究

        (一) C語言的編程技巧

        1.靈活運(yùn)用指針

        在C語言編程的時(shí)候,指針是一種特殊類型的變量,它能夠幫助程序員有效的表達(dá)和解決程序設(shè)計(jì)過程中遇到的復(fù)雜問題,熟練掌握指針是必要的。指針具有三要素:指針名以及指針類型和值[3]。在編程時(shí),指針和一般變量名相同,但是在類型以及值上具有區(qū)別,另外,指針不僅能夠被用于表示數(shù)組,還可以被作為函數(shù)的參數(shù)返回值。

        2.C 語言的特有函數(shù)

        在C語言編程的時(shí)候,有時(shí)需要用到一些特有函數(shù)。函數(shù)都具有一定的功能,同時(shí)函數(shù)名也反映了該函數(shù)的功能。在進(jìn)行函數(shù)定義時(shí),程序員需要把函數(shù)的名字、返回值類型以及參數(shù)名等各項(xiàng)都進(jìn)行定義。另外,因?yàn)閹旌瘮?shù)是由C 編譯系統(tǒng)提供的,這些函數(shù)均是系統(tǒng)首先定義好的,在程序調(diào)用的時(shí)候,程序員只需利用“#include 指令”把與之相關(guān)的頭文件包含到所用文件中即可[4]。例如,在程序運(yùn)行的過程中,如果用到了sqrt函數(shù),則為了保證程序運(yùn)行下去,頭文件必須含有#include“string .h”。

        3.算法技巧

        在程序設(shè)計(jì)的過程中,算法是程序的靈魂,因此,掌握一定的算法技巧是必不可少的。通常情況下,算法不僅可以用自然語言表示,有的時(shí)候也利用流程圖表示。需要注意的是,利用流程圖表示算法時(shí),程序設(shè)計(jì)員必須熟練掌握常用的流程圖符號[5]。且“數(shù)學(xué)乃是計(jì)算機(jī)之母”,牢固的數(shù)學(xué)知識同樣能夠提升編程效率。

        4.位運(yùn)算以及文件知識

        相比其他計(jì)算機(jī)高級語言的運(yùn)算方法,位運(yùn)算作為C 語言的重要特色,具有獨(dú)特性和唯一性。位運(yùn)算是以二進(jìn)制位為對象,然后結(jié)合相關(guān)程序要求進(jìn)行各種運(yùn)算。文件包含有數(shù)據(jù)文件以及程序文件,是計(jì)算機(jī)不可缺少的,程序設(shè)計(jì)員在進(jìn)行編程時(shí),需要把所寫的程序存儲的文件之中,這樣可以便于程序員查找數(shù)據(jù),提升查找效率。

        (二) C語言和匯編語言混合的程序設(shè)計(jì)案例分析

        在本次的實(shí)驗(yàn)之中,在進(jìn)行程序嵌入時(shí),有其固定的格式,需要在嵌入的各行代碼之前加“asm”關(guān)鍵字,也可以直接在asm代碼塊中放入?yún)R編語句。但是程序設(shè)計(jì)者在進(jìn)行嵌入時(shí),一定要注意滿足以下條件:匯編語言指令代碼中關(guān)鍵字asm必不可少,且要放在指令代碼之前;嵌入?yún)R編語言指令代碼能夠和正常C語言程序混合,但是C語言的分隔符“;”必不可少;嵌入?yún)R編語言時(shí)C語言的注釋分界符必不可少,分別是“/*”和“*/” [6]。

        (2)首先編寫C語言程序以及匯編程序,然后獨(dú)立編譯目標(biāo)代碼模塊,最終進(jìn)行鏈接。

        首先,在進(jìn)行混合編程時(shí),C語言程序能夠調(diào)用匯編語言的各種子程序以及其定義的變量,同時(shí),C語言編寫的函數(shù)以及定義的變量等也可以被匯編語言調(diào)用。而且混合編程的過程中,一個(gè)任務(wù)往往是由若干個(gè)功能模塊組成,且不同的功能模塊均是利用合適的語言進(jìn)行獨(dú)立編程,且以函數(shù)的形式存在。因此,程序設(shè)計(jì)者要根據(jù)每一模塊的特點(diǎn)選擇相應(yīng)的語言和語言編程系統(tǒng)進(jìn)行獨(dú)立編程,并形成目標(biāo)文件,繼而連接目標(biāo)文件,形成完整的可執(zhí)行文件。

        在混合編程的過程中,設(shè)計(jì)者需要注意五個(gè)問題:參數(shù)傳遞問題;寄存器的使用問題;存儲模式;變量以及函數(shù)的調(diào)用問題;子程序的返回值問題。

        其中,關(guān)于參數(shù)傳遞問題,在進(jìn)行C語言程序調(diào)用匯編程序時(shí),必須遵從參數(shù)傳遞原則,利用堆棧把參數(shù)傳遞給匯編程序。例如,在C語言程序中含有函數(shù):voidaa(char*p,int i),這個(gè)函數(shù)是利用匯編語言進(jìn)行編寫的,如果編譯是在小內(nèi)存模式下實(shí)施的,系統(tǒng)在進(jìn)行調(diào)用時(shí),則寫成aa(&q , n);運(yùn)行時(shí)程序首先把n壓入堆棧,然后再把&q壓入堆棧,當(dāng)參數(shù)傳遞過來并被匯編語言的子程序取得時(shí),BP寄存器便被用作基地址寄存器,實(shí)現(xiàn)對棧中所存數(shù)據(jù)進(jìn)行存取操作。通常情況下,由于調(diào)用的子程序和C語言程序往往使用同一個(gè)堆棧,所以在程序執(zhí)行時(shí),匯編語言子程序需要執(zhí)行兩條指令:push bp pop bp、sp[7]。

        2.混合的軟件編程實(shí)例分析

        三、小結(jié)

        綜上所述,隨著信息技術(shù)的不斷發(fā)展,人們對于計(jì)算機(jī)軟件編程的功能要求也將越來越高,而利用C語言能夠?qū)崿F(xiàn)計(jì)算機(jī)軟件的多種功能,因此研究者應(yīng)當(dāng)強(qiáng)化對于C語言的計(jì)算機(jī)軟件編程實(shí)驗(yàn)研究,開發(fā)功能更加強(qiáng)大的軟件。

        參考文獻(xiàn)

        [1] 侯宏霞.提高“匯編語言”課程實(shí)驗(yàn)教學(xué)質(zhì)量的幾點(diǎn)思考[J].內(nèi)蒙古農(nóng)業(yè)大學(xué)學(xué)報(bào)(社會科學(xué)版),2011(01):25-26.

        [2] 劉海峰.以培養(yǎng)實(shí)踐能力為導(dǎo)向的“C語言”教學(xué)方法探討[J].科技經(jīng)濟(jì)市場,2008(12):33-34.

        [3] 阿娜古麗·阿布拉.C語言與匯編語言相互調(diào)用實(shí)現(xiàn)混合編程[J].電腦編程技巧與維護(hù),2009(10):71-74.

        [4] 劉丹,劉德山.C語言程序設(shè)計(jì)課程綜合性和設(shè)計(jì)性實(shí)驗(yàn)研究[J].計(jì)算機(jī)教育,2012(09):31-32.

        [5] 王應(yīng)軍,曲培新,趙晨萍.ARM匯編語言與C語言混合編程的實(shí)現(xiàn)方法[J].科技信息,2010(03):69-71.

        [6] 方艷紅,趙海龍.計(jì)算機(jī)高級語言程序設(shè)計(jì)類課程實(shí)踐教學(xué)改革研究[J].中國科技信息,2008(19):12-14.

        [7] 卜登立,等.“匯編語言程序設(shè)計(jì)”課程教學(xué)改革研究與探討[J].井岡山大學(xué)學(xué)報(bào),2009(5):45-46.

        猜你喜歡
        匯編語言計(jì)算機(jī)軟件指針
        高等學(xué)校計(jì)算機(jī)專業(yè)課程教學(xué)改革實(shí)踐——以匯編語言與接口技術(shù)課程為例
        偷指針的人
        匯編語言與C語言的混合程序設(shè)計(jì)技術(shù)研究
        電子制作(2019年10期)2019-06-17 11:45:16
        基于C語言的計(jì)算機(jī)軟件編程
        電子制作(2018年16期)2018-09-26 03:27:08
        淺談不同編程語言對計(jì)算機(jī)軟件開發(fā)的影響
        電子制作(2018年1期)2018-04-04 01:48:36
        提高《匯編語言程序設(shè)計(jì)》教學(xué)效率的思考與實(shí)踐
        為什么表的指針都按照順時(shí)針方向轉(zhuǎn)動
        淺談基于C語言的計(jì)算機(jī)軟件程序設(shè)計(jì)
        電子制作(2017年24期)2017-02-02 07:14:40
        基于改進(jìn)Hough變換和BP網(wǎng)絡(luò)的指針儀表識別
        電測與儀表(2015年5期)2015-04-09 11:30:42
        ARM Cortex—MO/MO+單片機(jī)的指針變量替換方法
        国产午夜视频一区二区三区 | 中文字幕一区二区人妻痴汉电车| 亚洲免费av第一区第二区| 亚洲丰满熟女一区二亚洲亚洲 | 亚洲人成电影网站色| 国产97色在线 | 日韩| 亚洲日韩一区二区一无码| 超级少妇一区二区三区| 老岳肥屁熟女四五十路| 国产自拍av在线观看视频 | 国产精品18久久久久久不卡中国 | 欧美拍拍视频免费大全| 人妻丰满熟妇av无码区| 激情久久av一区av二区av三区| 三级全黄的视频在线观看| 亚洲无人区乱码中文字幕| 在线观看国产成人自拍视频| 欧美又粗又长又爽做受| 日产精品久久久久久久性色| 阿v视频在线| 天堂影院久久精品国产午夜18禁| 一本色道久久88—综合亚洲精品| 国产成人午夜无码电影在线观看| 精品熟女日韩中文十区| 精品国产1区2区3区AV| 国产精品美女一区二区av| 久久综合噜噜激激的五月天| 无码乱人伦一区二区亚洲一| 乱子伦av无码中文字幕| 高清亚洲成av人片乱码色午夜 | 亚洲youwu永久无码精品| 成人免费777777被爆出| 久久半精品国产99精品国产| 国产白浆流出一区二区| 91精品国产福利在线观看麻豆| 六月丁香综合在线视频 | 精品少妇爆乳无码aⅴ区| 国产亚洲精品一区二区在线播放| 新中文字幕一区二区三区| 中文字幕丰满乱子无码视频| 国产精品区一区二区三在线播放 |