時間:2023-03-14 15:07:22
緒論:在尋找寫作靈感嗎?愛發表網為您精選了8篇c語言論文,愿這些內容能夠啟迪您的思維,激發您的創作熱情,歡迎您的閱讀與分享!
C語言是在B語言的基礎上完善形成的。1967年,英國的MartinRichards推出了BCPL語言,且在1970年,美國的KenThompson以BCPL語言為基礎推出了B語言。而B語言的功能有限、語言簡單,并不能完全滿足計算機軟件編程需要。在此基礎上,許多研究者加強對計算機編程語言的研究,經過多次試驗,在B語言的基礎上,對其進行完善,最終在1972年美國貝爾實驗室D.M推出了C語言。1978年后,大、中、小型計算機對C語言進行移植,將其作為系統設計語言,為系統程序編寫提供條件。在各種計算機編程語言中,一切計算機語言的基礎是C語言。它是一門高級語言,靈活方便,具有匯編語言、高級語言的特點,簡潔緊湊。同時,C語言可移植性強,應用廣泛,表達力強、功能豐富,適用于多種操作系統,可進行自由書寫,在信息技術發展方面發揮積極作用。
2軟件編程技巧
2.1C語言的特有函數在計算機軟件編程中,每一個函數都具有一定的功能,而在C語言編程過程中,需要應用一些特有函數。對于函數而言,函數名對函數功能進行反映,因此,在定義函數的過程中,程序員需要定義函數名字、參數名、返回值類型等。同時,由于在編程過程中,C編譯系統提供庫函數,且該系統首先定義好了這些函數,因此在調用程序時,程序員通過#include指令”,在所有文件中引入相關的頭文件,從而便可實現程序調用。例如,在運用程序時,當應用到sqrt函數時,頭文件中必須包含#include“string.h”,以此確保程序的正常運行。
2.2指針的靈活運用在軟件編程中,指針的使用極為重要,賦值的實現需要指針的控制,從而建立變量關系,且編程的難度與指針運用的大小密切相關。因此,在復雜編程工作的完成中,程序員需要熟練運用指針,明確指針使用的作用,進行編程。指針是特殊類型變量的一種,可幫助程序員解決程序設計中遇到的問題,其具有指針名、值、指針類型3要素。在編程過程中,使用者需要對指針類型、指針名進行合理、科學定義,對其賦值,從而對指針、變量進行區分。同時,在指針調用過程中,利用C語言的特有函數科學、準確定義函數,并按照算法編程的方式,利用流程圖表達算法內容。此外,在函數編程過程中,程序員具體設置函數的名字、參數名、返回值類型,設置好指令,且在C語言設置過程中,具體確定文件知識、位運算,確保其滿足程序中的具體要求,明確二進制的對象。對于文件中包含的程序文件、數據文件,應將它們之間的步驟設置好,從而為數據查找提供方便。
2.3位運算及算法技巧在計算機高級語言的運算方法中,C語言的重要特點是位運算。位運算的對象是二進制,具有唯一性、獨特性,是計算機軟件編程、程序運行的基礎,其根據相關程序要求的進行符合要求的運算。同時,運算、程序運行過程中,程序文件必不可少,在編程中,程序設計員需要在文件中存儲程序,方便數據查找,提高運行效率。此外,在程序設計中,程序的靈魂是算法,算法技巧的掌握對程序設計極為關鍵。算法可用自然語言、流程圖表述,而在用流程圖表示算法時,要求程序員對流程圖符號進行熟練掌握,并具備牢固的數學知識,提高編程效率。
3計算機軟件編程中C語言、匯編語言的結合
3.1匯編語言的嵌入方法隨著科學技術的快速發展,計算機軟件不斷更新,而C語言、匯編語言兩種語言的混合編程是計算機軟件開發中常使用的方式,以此提高計算機編程、程序開發效率,實現難度較高的編程任務。在具體編程中,在C語言程序中嵌入匯編語言,在寄存器的存儲、轉換作用下是實現匯編語言的運行。例如,如果在C語言源程序中嵌入一組匯編語句,就需要用大括號擴充嵌入程序,進而添加“asm”,且需要在asm前面放入指令代碼,并用分隔符“:”區分正常的C語言、匯編語言。其中,嵌入語言以大括號來表示,通過該形式的編程對編程的過程進行簡化。當匯編程序嵌入后,程序員定義程序,根據C語言指出函數,定義函數,并對不同的函數進行區分,根據不同模塊的使用特點,對目標文件進行分析,提高編程的可靠性。
3.2鏈接C語言、匯編語言在C語言、匯編語言程序編寫中,需要獨立設置編譯目標代碼,然后實現鏈接。由于C語言、匯編語言程序能夠相互調用,且多個功能模塊共同組成一個任務,合適的語言獨立編程功能模塊。因此,在編程中,程序員應根據每個模塊特點,設置編程,形成目標文件,使其成為可執行文件。同時,在C語言編程過程中,匯編程序需要調用函數、定義變量,這樣,程序員就需要對寄存器的使用、參數傳遞、子程序的返回值、變量及函數調用、存儲模式等問題進行考慮,特別需要注意參數傳遞問題。在編程中,根據堆棧匯編程序傳遞參數,并按照參數傳遞原則進行程序編程。例如,在Voidaa(char*p,inti)函數中,利用匯編語言編寫該函數,在系統調用在小內存模式下進行,寫為aa(&q,n)。而在系統運行中,在堆棧中壓入n,并為了實現對存儲數據的存取,傳遞參數。此外,由于C語言程序、調用的子程序的編程使用的是同一個堆棧,這樣,就會產生pushbppopbp、sp兩個執行指令,設置這兩個指令,為執行過程的使用提供方便。
3.3C語言、匯編語言混合編程實驗分析在混合軟件具體編程中,一般情況下,在5個數中比較程序功能,從而對最小數值進行確定。由于匯編的子程序、主程序共同組成了所編程序,運用C語言編寫主程序,利用匯編語言編寫子程序,而最小數值通過主程序的調用得到確定。在編程中,用min.c*表示主程序,用qiumin.asm表示子程序,C語言、匯編語言結合,軟件之間進行交流,從而使程序運行速度得以提高。在程序運行中,需要具體編程程序設計過程中的內存模式、寄存器分配等,確保程序設計語言的相互協同,使外部接口處于正常使用狀況,為編程中的外部調用功能的實現提供保障。
4C語言多項式除法的程序設計
4.1設計流程在軟件編程中利用C語言,對計算機軟件的實用性進行探索。在C語言多項式除法的程序設計中,實驗設計的建立依據循環冗余的結構進行,設置循環冗余驗碼編制軟件程序。在此過程中,程序員需先對函數名稱進行定義,了解函數,對函數的初始位置進行確定,進而建立數據庫。此后,在C語言的基礎上,程序員編程、計算函數,并在此過程中,一個冗余余數在系統中自動生成,在remainder文件中存儲余數,確定程序的起始文件。最后,根據系統運行的結果,結合軟件需求,程序員科學分析計算機軟件實驗,此時,如果計算結果能夠滿足軟件運行需求,則說明軟性運行正常。如果計算結果不能夠滿足軟件運行需求,則需要程序員仔細檢查軟件編程過程,發現問題,解決問題。在C語言基礎上,對軟件編程實驗流程進行設計,簡化編程過程,提高實驗結果的準確性。
4.2程序應用很多領域的發展過程都需要運用到C語言多項式除法程序的編程,該編程使軟件應用的實際價值得到最大程度的發揮,并拓寬了混合語言在多項式除法的應用范圍。在C語言、編程語言混合語言的使用中,程序員應及時定義函數,通過函數名對函數性質進行準確體現,獲取準確的余數結果,確保計算機軟性系統高效運行。
5結語
關鍵詞FranklinC51編譯器匯編語言結構化設計模塊中斷
--------------------------------------------------------------------------------
在研制單片機應用系統時,匯編語言是一種常用的軟件工具。它能直接操作硬件,指令的執行速度快。但其指令系統的固有格式受硬件結構的限制很大,且難于編寫與調試,可移植性也差。隨著單片機硬件性能的提高,其工作速度越來越快,因此在編寫單片機應用系統程序時,更著重于程序本身的編寫效率。而FranklinC51交叉編譯器是專為80C51系列單片機設計的一種高效的C語言編譯器,使用它可以縮短開發周期,降低開發成本,而且開發出的系統易于維護,可靠性高,可移植性好,即使在代碼的使用效率上,也完全可以和匯編語言相比,因此目前它已成為開發80C51系列單片機的流行工具。
1C51語言程序設計的基本技巧
C語言是一種高級程序設計語言,它提供了十分完備的規范化流程控制結構。因此采用C51語言設計單片機應用系統程序時,首先要盡可能地采用結構化的程序設計方法,這樣可使整個應用系統程序結構清晰,易于調試和維護。對于一個較大的程序,可將整個程序按功能分成若干個模塊,不同的模塊完成不同的功能。對于不同的功能模塊,分別指定相應的入口參數和出口參數,而經常使用的一些程序最好編成函數,這樣既不會引起整個程序管理的混亂,還可增強可讀性,移植性也好。
在程序設計過程中,要充分利用C51語言的預處理命令。對于一些常用的常數,如TRUE,FALSE,PI以及各種特殊功能寄存器,或程序中一些重要的依據外界條件可變的常量,可采用宏定義"#define"或集中起來放在一個頭文件中進行定義,再采用文件包含命令"#include"將其加入到程序中去。這樣當需要修改某個參量時,只須修改相應的包含文件或宏定義,而不必對使用它們的每個程序文件都作修改,從而有利于文件的維護和更新。現舉例說明如下:
例1對于不同的單片機晶振,程序取不同的延時時間,而且可根據外界條件的變化修改延時時間的長短。對于這樣的程序,可利用宏定義和條件編譯來實現。程序如下:
#defineflag1
#ifdefflag==1
#definefosc6M
delay=10;
#elifflag==0
#definefosc8M
delay=12;
#else
#definefosc12M
delay=20;
#endif
main()
{
for(I=0;I<delay;I++);
}
這樣源程序不作任何修改就可適用于不同時鐘頻率的單片機系統,并可根據情況的不同取不同的delay值,完成不同的目的。
2C51語言與匯編語言程序的混合編程
C51編譯器能對C語言源程序進行高效率的編譯,生成高效簡潔的代碼,在絕大多數場合采用C語言編程即可完成預期的目的。但有時為了編程直觀或某些特殊地址的處理,還須采用一定的匯編語言編程。而在另一些場合,出于某種目的,匯編語言也可調用C語言。在這種混合編程中,關鍵是參數的傳遞和函數的返回值。它們必須有完整的約定,否則數據的交換就可能出錯。下面就以力源公司的10位串行A/D轉換器TLC1549為例說明C語言程序與匯編語言程序的調用。
圖1TLC1549管腳圖
1549的管腳圖和時序圖分別如圖1和圖2所示,假定DATAOUT接P1.0,接P1.1,CLOCK接P1.2。
1549的具體特性請查閱有關資料。
例2C語言程序與匯編語言程序的調用,其子程序如下:
PUBLICAD;入口地址
SEG_ADSEGMENTCODE;程序段
RSEGSEG_AD
USING0
AD:MOVR6,#00
MOVR7,#00
SETBP1.1
ACALLDELAY
CLRP1.1
ACALLDELAY
MOVR0,#10
RR0:SETBP1.2
NOP
CLRP1.2
DJNZR0,RR0
ACALLDELAY
MOV30H,R6;A/D轉換的高
;兩位保存在R6中
ACALLCIR
MOVR6,30H
SETBP1.2
NOP
CLRP1.2
MOV30H,R6
ACALLCIR
MOVR6,30H
MOVR0,#8;A/D轉換的低
;8位保存在R7中
RR2:SETBP1.2
NOP
CLRP1.2
MOV30H,R7
ACALLCIR
MOVR7,30H
DJNZR0,RR2
RET
CIR:CLRC
MOVC,P1.0
MOVA,30H
RLCA
MOV30H,A
RET
END
在以上程序中,函數的返回值為一無符號整型數,根據調用規則,返回值的高位必須在R6中,低位在R7中,這樣才可保證數據的傳遞不出錯。另外,在調用過程中,必須注意寄存器的入棧。這樣在以后用到A/D轉換時,在C語言中調用匯編語言子程序AD()即可。
3C51中斷處理過程
C51編譯器支持在C源程序中直接開發中斷過程,因此減輕了使用匯編語言的繁瑣工作,提高了開發效率。中斷服務函數的完整語法如下:
void函數名(void)[模式]
[再入]interruptn[usingr]
其中n(0~31)代表中斷號。C51編譯器允許32個中斷,具體使用哪個中斷由80C51系列的芯片決定。r(0~3)代表第r組寄存器。在調用中斷函數時,要求中斷過程調用的函數所使用的寄存器組必須與其相同。"再入"用于說明中斷處理函數有無"再入"能力。C51編譯器及其對C語言的擴充允許編程者對中斷所有方面的控制和寄存器組的使用。這種支持能使編程者創建高效的中斷服務程序,用戶只須在C語言下關心中斷和必要的寄存器組切換操作。
例3設單片機的fosc=12MHz,要求用T0的方式1編程,在P1.0腳輸出周期為2ms的方波。
用C語言編寫的中斷服務程序如下:
#include<reg51.h>
sbitP1_0=P1^0;
voidtimer0(void)interrupt1using1{
/*T0中斷服務程序入口*/
P1_0=!P1_0;
TH0=-(1000/256);/*計數初值重裝*/
TL0=-(1000%256);
}
voidmain(void)
{
TMOD=0x01;/*T0工作在定時器方式1*/
P1_0=0;
TH0=-(1000/256);/*預置計數初值*/
TL0=-(1000%256);
EA=1;/*CPU開中斷*/
ET0=1;/*T0開中斷*/
TR0=1;/*啟動T0*/
do{}while(1);
}
在編寫中斷服務程序時必須注意不能進行參數傳遞,不能有返回值。
學習C語言程序設計應當充分注意實驗環節。首先老師在上實驗課時盡量要求學生多編寫程序,多上機調試程序,上機實驗的目的決不僅是為了驗證所編程序的正確性,其主要目的在于讓學生熟練掌握上機操作要領和調試程序技術,積累編程經驗。其次上機實驗可以加深學生對講授內容的理解,尤其是一些語法規定,光靠課堂講授比較枯燥又難以記住,但它們又很重要,通過多次上機就能自然地熟練掌握,通過上機來掌握語法規則是行之有效的一種方法。最后,學生在上機調試通過一個程序后,可以自己改變程序中某些部分,甚至故意設置一些障礙,觀察和分析在不同情況下的編譯和運行結果。應當說,上機實驗的重要性絕不亞于課堂聽課,這是鞏固和發展課堂知識的十分重要的環節。
2C語言實驗課存在的問題
目前在不少高校C語言實驗教學活動中,經常會出現以下一些問題:
2.1沒有充分調動學生學習的積極性。大部分學生在學習程序設計以前只知道使用計算機娛樂或辦公,認為計算機的學習應該很輕松。但是C語言的許多基礎知識都是概念性強、理論性強,內容豐富且抽象,具有嚴密邏輯性的,學習難度比較大。這時有的學生會產生畏難情緒,而老師又沒有及時引導,因此許多學生學習興趣開始降低,不聽老師講授理論課,甚至連實驗課也干脆不去。
2.2很多高校的C語言課一般是理論課和實驗課分開教學,任課老師只負責理論教學,實驗部分則是把學生丟到機房由實驗室老師負責輔導,任課老師很少或基本不去機房,學生上機調試程序的自覺性當然很差,就算任課老師布置了作業,也有不少同學在偷偷玩游戲浪費時間,有同學有問題也是由輔導老師負責解答。任課老師和輔導老師溝通不夠,學生到底哪里不懂,上機時在干什么這些情況任課老師很少知道,當然也不了解學生現階段的學習情況,教與學在這里脫節了,任課老師上課就失去了針對性。
2.3學生的作業存在抄襲現象,有的程序錯誤百出,根本就沒上機調試過。對批改過的作業,有相當一部分學生也不認真去分析,交作業僅僅是為了應付老師。對于C語言這樣一門實踐性很強的課程,僅靠布置作業和書面批改作業的方法來督促學生學習和了解學習情況是很不全面和客觀的,很難提高教學質量。
2.4學生每次上機時缺乏明確的量化指標,雖然教師事先也向學生布置應準備的內容,但沒有督促和檢查,完成完不成無所謂。上機情況與期末總成績沒有直接關系,這常常導致學生上機前不充分準備,上機過程中時間抓得不緊,思想上沒壓力,故而上機調試程序的能力提高不快。
2.5不少高校目前C語言的編譯軟件還在用DOS下的TC,現在是WINDOWS橫行的年代,如果還是堅持讓學生面對純英文操作界面的TC,運行一系列難以記憶的DOS命令,很多學生看第一眼就被嚇倒了,更不用說去仔細分析調試程序時產生的諸多英文提示,而且TC本生也有不支持鼠標操作,輸入中文不方便等缺點。3C語言實驗課教學改革的原則和方法
基于對以上問題的分析和認識,在上機實踐教學中應采取如下改進措施:
3.1為了方便管理任課老師最好兼任實驗室輔導老師,或者要和實驗室輔導老師保持密切聯系、經常溝通,及時了解學生的上機作業情況,適時調整授課進度。加強機房管理,端正學生的上機目的。上機考勤、紀律情況記入期末成績。
3.2在每次上機時,要求學生在規定時間內獨立完成一定數量的練習題。老師(任課老師或實驗室輔導老師)根據每人完成練習題的數量、質量與時間,現場打分并做為平時成績,影響該課程的總成績。練習題可在上機之前提前告訴學生,方便他們事先做好準備。這樣一來即可有效地避免學生互相抄襲作業、不求甚解的弊端。
3.3凡講過的基本操作方法,要求學生必須事先復習好,上機時一律不予解答。目的是提高學生理論課的聽課質量。
3.4取消原來的書面作業,換成學生寫實驗報告,這樣可以幫助他們總結編程經驗。實驗報告的格式可以參照上機實驗指導書,此類書現在書店很多,比如譚浩強編著清華大學出版社出版的《C程序設計》就比較不錯。
3.5改進C語言的編譯環境,選用WINDOWS下的編譯軟件,比如WIN—TC,WIN—TC的內核實質上和TC是完全一樣的,只不過是操作界面不一樣,WIN—TC的優勢主要就是純中文菜單,支持鼠標操作,在WINDOWS下編輯TC代碼,充分利用WINDOWS的剪貼版,可以很方便的輸入和顯示漢字等,這是一個免費軟件在網上很容易找到。
3.6筆者結合國內外優秀編程語言的實驗教學方法和模式,并經幾年來C語言的教學實踐,建議在有條件的情況下盡量將理論課和實驗課的比例設置成1:1,千萬不可為趕教學進度或其它任何理由而壓縮實驗課時,那樣做會得不償失。
4C語言實驗課教學改革的效果
上述方案經筆者若干循環的C語言教學實踐后,明顯感到改革前后的情況大不相同,取得了較好的教學效果:
4.1課堂聽課質量明顯提高。因為上機時老師要當場檢查程序,根本就不可能去抄襲別人的,就算抄來弄不明白也是白費心機。要想上機時順利通過,課堂上必須認真聽講,記筆記。因此課堂教學時學生基本上沒有遲到和無故缺的,并且課堂上都能專心聽講,記筆記,課間10分鐘還問個不停,因為上機時就沒有這么多時間詳細問老師了。
4.2實驗課上機效率明顯提高。因為要趕快把程序調通過讓老師檢查,否則這次作業就沒成績了,上機時大家都在爭分奪秒,根本沒有人有時間去玩游戲、上網,甚至于有的學生下課后都還要拖堂調試程序。
混合編程方法包括C語言調用匯編語言子程序、匯編語言調用C語言子程序和C語言程序嵌入匯編語言三種。第一,C語言調用匯編語言子程序需要遵循以下規則。一是根據參數順序,依據反序順序將參數壓入堆棧中。二是依據參數的值進行傳遞;三是使用“EXTERN”對函數顯示進行說明,函數名使用下劃線格式的8個字符以內的名字命名;四是對代碼段加以說明,并使用“—TEXT”作為代碼段命名原則。五是匯編程序的參數取C程序的參數;六是匯編程序需要兼顧保護寄存器。基于以上6個原則,C語言與匯編語言混合編程時,匯編過程需要遵守規定的開頭及結尾格式。第二,匯編語言調用C語言子程序則不需要改變匯編語言主程序和子程序的格式,只需主程序和子程序的格式保持一致,再開始前使用“EXTREN函數名”用于表明身份,表示該函屬于調用C語言子程序的外部函數。第三,C語言程序嵌入匯編語言包括兩種:一是C程序調用匯編子程序模塊和C程序嵌入匯編指令兩種。C程序調用會匯編子程序模塊需根據主程序和模塊編寫語言確定,如果主程序為C語言、模塊為匯編語言,則需要使用C程序調用匯編子模塊。C程序嵌入匯編指令主要用于處理C語言無法控制硬件的情況。例如修改中斷標志寄存器、重復使用某種功能可采用C語言嵌入匯編指令的方式實現。
二、C語言與匯編語言連接的關鍵問題要實現
C語言與匯編語言之間的連接還需要解決參數關系、確定調用關系和模塊連接三個問題。參數關系是混合編程過程中必須解決的問題,多數程序員均采用堆棧方式解決參數傳遞問題,具體操作為:以匯編語言中的BP作為機制寄存器,以反序多為調用順序,將C語言中的參數壓入堆棧中,且BP根據參數加入相應的偏移量即可實現參數使用。而確定調用關系則需要說明要調用的函數或過程,并確定調用及其調用關系。外部模型可調用被調用的函數或被調用過程,調用程序需說明被引用的外部模塊的名稱。實現匯編程序與C程序模塊連接需要保證不同語言模塊的存儲模式相同以及遵守C兼容的函數及變量命名約定。
三、結語
1.1計算機軟件C語言的編程技巧
計算機軟件C語言的編程中,最主要的依據是指針應用,C語言指針能夠根據軟件程序的編寫需求,構建可行的函數,而程序員在設計函數編程的過程中,即可通過函數參數的具體分配,設置C語言的指令控制。程序員利用C語言編寫軟件程序時,不僅要準確地控制指令,更重要的是編制C語言的算法。C語言的算法內,體現出諸多應用技巧,利用流程表示的方法規劃操作位置,以此來提高C語言的流程算法。程序員編程軟件C語言時,需要注意語言設置,首先確定C語言在軟件編寫中的對象,如程序運算,保障C語言在編程實驗中的對象;然后分類計算機軟件編程所需的文件,完善文件之間的關聯性,設定C語言編程文件的相關步驟;最后全面檢查軟件C語言編程中涉及的數據,方便編程中的數據查找。
1.2計算機軟件C語言的程序應用
計算機軟件C語言編程實驗中的程序應用,分為函數、算法和運算三個部分。分析如:
(1)C語言在軟件編程中的函數,軟件編程的函數,負責不同的軟件功能,程序員通過C語言定義編程中的函數,由于C語言可以實現編譯,因此軟件編程所需要的函數,可以在系統內直接調用,程序員操作“#include指令”,關聯所有的應用文件,如程序員使用C語言中的sqrt函數,還需引入頭文件#include“string.h”;
(2)算法是計算機軟件編程的核心,C語言在基礎算法的作用下,實現程序表達,程序員需要掌握程序算法,才能保障C語言在計算機軟件中合理性,程序員還要在算法的過程中,添加流程圖,利用流程符號協助算法運行,提高C語言編程的效率;
(3)運算是C語言編程實驗的特色,其對象是二進制,按照計算機軟件的C語言編程,設計程序運算,軟件的C語言編程中包括諸多基礎文件,此類文件是軟件編程的重要部分,程序員將編寫程序存儲到相關的語言內,有利于運算過程中的語言查詢。
2計算機軟件C語言編程的案例
計算機軟件C語言的程序設計比較復雜,以混合軟件編程為例,分析C語言的編程。首先程序員應該根據計算機軟件的運行目的,將運行語句編寫到C語言中,形成源代碼,程序員需要連接C語言中的匯編語句,如:Main(){asm{Movah,2Movbh,5Int10h}}整個編程實驗案例中,C語言的語句匯編存在格式要求,而且格式較為固定,因此,程序員應遵循一定要求,如:檢查語句中是否具備asm,如果缺少asm需重新設定在語句前;確定匯編語句能夠正常嵌入C語言內;注意C語言的分隔符,分隔符必須正確。然后設置編譯代碼,此項模塊需要具備單獨編程,待C語言編程完成后,利用鏈接的方式聯合代碼和編程。混合軟件編程中的C語言,函數部分能夠被匯編使用,多個編程共同組成一項語言任務,而且C語言傾向于獨立編程,基本是以函數的狀態實現軟件的編程實驗。編譯代碼的應用,提高C語言在計算機軟件中的編程能力,保障C語言編程的準確度,強化計算機軟件的實踐性。最后程序員在混合軟件C語言編程實驗中,需注重已經出現的編程問題,尤其是參數、存儲等問題,排除C語言編程的因素干擾。例如C語言編程實驗中出現的參數問題,實際匯編中無法實現正常的參數傳遞,導致參數堆棧傳輸時出現問題,不能正常匯編到C語言的程序內,因此還需在匯編中增加兩類指令,如:sp、pushbppopbp。混合軟件C語言中添加匯編方式,可以提升計算機軟件程序的運行速度,完善軟件編程。
3結語
優秀C語言學論文致謝詞(1)篇
在碩士學位論文即將完成之際,我想向曾經給我幫助和支持的人們表示衷心的感謝。首先要感謝我的導師曹計昌教授,他在學習和科研方面給了我大量的指導,并為我們提供了良好的科研環境,讓我學到了知識,掌握了科研的方法,也獲得了實踐鍛煉的機會。他嚴謹的治學態度、對我的嚴格要求以及為人處世的坦蕩將使我終身受益。除此之外,他對我生活的關心和照顧也使得我得以順利完成研究生的學業。在此祝愿他身體健康,全家幸福!
感謝我已經畢業的師兄徐日東、張凡、周志堅、段云涌和夏志遠,他們曾經給了我無私的幫助和鼓勵,讓我學到很多2015優秀C語言學論文致謝詞(3)篇2015優秀C語言學論文致謝詞(3)篇。感謝汪健和程詩猛兩位師兄,他們豐富的工作經驗對于本文的硬件設計提供了很大的幫助。感謝同屆的張斌、李純和張登寶,他們是我學習、工作和生活上的伙伴,也是面對困難和挑戰時的戰友。感謝我的師妹鄧禎,師弟馮國平、古明生、周建瓊、楊帆、舒林、周宇杰、朱圣健、吳喧輝和張澤,從他們身上,我學到很多東西,和他們在一起的日子是讀研期間快樂的時光。
感謝在廣東普信公司實習時的同事們,他們在我第一次參加實際項目開發的過程中給了我莫大的幫助和鼓勵
特別要感謝我的項目經理李旭和黃潤懷,是他們的信任給了我很多鍛煉的機會,也一直對他們給予我的生活上的照顧心存感激。和他們一起為廣州項目奮戰的一年多是我人生中一段難忘的經歷2015優秀C語言學論文致謝詞(3)篇論文。
感謝我的朋友Louis,Dick,Iris,Tracy,Sawyer,Joe,Jason,IceBear,以及更多我無法逐一列出名字的朋友,他們給了我無數的關心和鼓勵,也讓我的研究生生活充滿了溫暖和歡樂。我非常珍視和他們的友誼!
感覺計算機學院研028班的我的同學,感謝他們在學習和生活上給予我的幫助。
感謝生我養我的父母,他們給了我無私的愛,我深知他們為我求學所付出的巨大犧牲和努力,而我至今仍無以為報。祝福他們,以及那些給予我關愛的長輩,祝他們幸福、安康!
還有很多我無法一一列舉姓名的師長和友人給了我指導和幫助,在此衷心的表示感謝,他們的名字我一直銘記在心!
最后,衷心感謝在百忙之中抽出時間審閱本論文的專家教授。
Acknowledgements
MydeepestgratitudegoesfirstandforemosttoProfessoraaa,mysupervisor,forherconstantencouragementandguidance.Shehaswalkedmethroughallthestagesofthewritingofthisthesis.Withoutherconsistentandilluminatinginstruction,thisthesiscouldnothavereacheditspresentform.
Second,IwouldliketoexpressmyheartfeltgratitudetoProfessoraaa,wholedmeintotheworldoftranslation.IamalsogreatlyindebtedtotheprofessorsandteachersattheDepartmentofEnglish:Professordddd,Professorssss,whohaveinstructedandhelpedmealotinthepasttwoyears.
優秀C語言學論文致謝詞(2)篇
在碩士學位論文即將完成之際,我想向曾經給我幫助和支持的人們表示衷心的感謝。首先要感謝我的導師曹計昌教授,他在學習和科研方面給了我大量的指導,并為我們提供了良好的科研環境,讓我學到了知識,掌握了科研的方法,也獲得了實踐鍛煉的機會。他嚴謹的治學態度、對我的嚴格要求以及為人處世的坦蕩將使我終身受益。除此之外,他對我生活的關心和照顧也使得我得以順利完成研究生的學業。在此祝愿他身體健康,全家幸福!
感謝我已經畢業的師兄徐日東、張凡、周志堅、段云涌和夏志遠,他們曾經給了我無私的幫助和鼓勵,讓我學到很多。感謝汪健和程詩猛兩位師兄,他們豐富的工作經驗對于本文的硬件設計提供了很大的幫助。感謝同屆的張斌、李純和張登寶,他們是我學習、工作和生活上的伙伴,也是面對困難和挑戰時的戰友。感謝我的師妹鄧禎,師弟馮國平、古明生、周建瓊、楊帆、舒林、周宇杰、朱圣健、吳喧輝和張澤,從他們身上,我學到很多東西,和他們在一起的日子是讀研期間快樂的時光。
感謝在廣東普信公司實習時的同事們,他們在我第一次參加實際項目開發的過程中給了我莫大的幫助和鼓勵2015優秀C語言學論文致謝詞(3)篇論文。特別要感謝我的項目經理李旭和黃潤懷,是他們的信任給了我很多鍛煉的機會,也一直對他們給予我的生活上的照顧心存感激。和他們一起為廣州項目奮戰的一年多是我人生中一段難忘的經歷。
感謝我的朋友louis,dick,iris,tracy,sawyer,joe,jason,icebear,以及更多我無法逐一列出名字的朋友,他們給了我無數的關心和鼓勵,也讓我的研究生生活充滿了溫暖和歡樂。我非常珍視和他們的友誼!
優秀C語言學論文致謝詞(3)篇
在碩士學位論文即將完成之際,我想向曾經給我幫助和支持的人們表示衷心的感謝。首先要感謝我的導師曹計昌教授,他在學習和科研方面給了我大量的指導,并為我們提供了良好的科研環境,讓我學到了知識,掌握了科研的方法,也獲得了實踐鍛煉的機會。他嚴謹的治學態度、對我的嚴格要求以及為人處世的坦蕩將使我終身受益。除此之外,他對我生活的關心和照顧也使得我得以順利完成研究生的學業。在此祝愿他身體健康,全家幸福!
感謝我已經畢業的師兄徐日東、張凡、周志堅、段云涌和夏志遠,他們曾經給了我無私的幫助和鼓勵,讓我學到很多。感謝汪健和程詩猛兩位師兄,他們豐富的工作經驗對于本文的硬件設計提供了很大的幫助。感謝同屆的張斌、李純和張登寶,他們是我學習、工作和生活上的伙伴,也是面對困難和挑戰時的戰友。感謝我的師妹鄧禎,師弟馮國平、古明生、周建瓊、楊帆、舒林、周宇杰、朱圣健、吳喧輝和張澤,從他們身上,我學到很多東西,和他們在一起的日子是讀研期間快樂的時光。
感謝在廣東普信公司實習時的同事們,他們在我第一次參加實際項目開發的過程中給了我莫大的幫助和鼓勵
特別要感謝我的項目經理李旭和黃潤懷,是他們的信任給了我很多鍛煉的機會,也一直對他們給予我的生活上的照顧心存感激。和他們一起為廣州項目奮戰的一年多是我人生中一段難忘的經歷。
感謝我的朋友Louis,Dick,Iris,Tracy,Sawyer,Joe,Jason,IceBear,以及更多我無法逐一列出名字的朋友,他們給了我無數的關心和鼓勵,也讓我的研究生生活充滿了溫暖和歡樂。我非常珍視和他們的友誼!
感覺計算機學院研028班的我的同學,感謝他們在學習和生活上給予我的幫助。感謝生我養我的父母,他們給了我無私的愛,我深知他們為我求學所付出的巨大犧牲和努力,而我至今仍無以為報。祝福他們,以及那些給予我關愛的長輩,祝他們幸福、安康!
還有很多我無法一一列舉姓名的師長和友人給了我指導和幫助,在此衷心的表示感謝,他們的名字我一直銘記在心!
一、CRSP各階段的實踐教育內容與方法
1.認知性實踐階段。認知性實踐一般安排在學生的第一學年的學期中或者暑假期間。實習的方式主要包括四部分:第一,實踐類課程(如旅游服務禮儀、溝通技巧等)專門針對旅游管理專業學生的儀容儀表和行為舉止的塑造,針對學生文明禮貌、微笑服務、善于溝通、精于陳述的表達能力的訓練。第二,專業基礎課程和必修課(如管理學、旅游學概論、旅游資源開發等)的理論教育中穿插的實踐教育環節,由于每門課程的教育內容不同、授課教師風格不同,實踐教育的形式是多樣的,如案例分析、情景表演、網絡資料查詢、學習心得分享等。第三,為了加深學生對旅游業的感性認知,在學期中利用課程實踐教育環節、班級活動、學校組織的活動等機會,組織相關景區、旅游飯店、旅行社、博物館、旅游商品購物點等的參觀,組織學生觀摩市級、區級的飯店技能大賽和導游技能大賽,增加學生對旅游行業的感性認識。第四,利用節假日做旅游市場的觀察,觀察旅游者的流向、旅游者的消費等。2.調研性實踐階段。調研性實踐是在認知性實踐活動的基礎上的升級。這個階段主要有兩種實踐教育方式。一是課程依托型,以專業必修課和選修課(如旅游規劃、旅行社管理、旅游飯店管理、旅游市場營銷、旅游經濟學等)等理論課程的實踐環節為主,學生以分組的形式確定不同的調研主題前往相關企業、旅游地進行資料收集、調查問卷設計及調查、統計等工作,以增加對行業的理性認識。二是學校所在地或更大區域的旅游業的專門調研實習,在我校這個實踐項目是被安排在了二年級下學期,學生將集體前往昆明、楚雄、大理、麗江、香格里拉、騰沖、瑞麗等地對云南省滇西北旅游資源、旅游線路組合設計、旅游市場狀況、游客旅游體驗等進行觀察和調研,完成旅游資源問卷調查、旅游資源統計、旅行社座談等項目。3.技能性實踐階段。技能性實踐階段一般開始于學生二年級下學期的技能型課程,并延伸到二年級暑期或者三年級寒假。主要有三種方式:第一,實踐課程依托型學習,以部分技能性較強的專業必修課和選修課(如旅行社管理、導游業務、飯店管理、飯店服務技能)為實踐課程,充分利用校內的實訓室,如飯店實訓室、導游講解實訓室等完成模擬狀態下的操作技能的訓練。第二,前往景區、旅行社、酒店等實習單位進行“蹲點式”實際訓練,這要求實習學生將實訓室中模擬情景下所學的知識和技能遷移到實習單位的實習工作當中。第三,利用會議展覽、大型活動等機會,動員學生進行“零星式”實習,讓學生參與會議服務、展覽組織、宴會服務、外事接待等活動,主要鍛煉學生應對大型活動和特殊活動的操作能力和協調能力。4.職業化實踐階段。我校旅游管理專業實行的是四年級下學期全員全時段實習制度,即四年級上學期期末完成畢業論文設計和答辯,四年級下學期不安排課程,由學生根據自己的職業規劃選擇畢業實習單位,深入到具體的業務部門全方位地熟悉相關領域的工作內容、規范和運作過程,促成知識向技能的初步轉化,并逐步達到融入。在實習期內或實習期結束,學生即可與實習單位簽訂勞動合同,這大大縮短了學生的入職時間,為他們爭取到更多的職業機會和晉升機會。
二、CRSP階段漸進式實踐教育體系的保障因素
1.實踐教育的考核。按照CRSP階段漸進式模式所設計的旅游管理專業本科實踐教育的方法很多,總結起來說主要包括獨立的實訓課程、理論課程中的實踐環節、旅游資源調研專門實習、旅游企業技能實習、畢業設計(論文)及答辯、畢業實習等。對于獨立的實訓課程和理論課程的實踐環節的考核,我們采用的是教育過程的評價方式,從教育目的、教育結構、教育準備、教育過程、教師素質和教育效果六個方面對教育實訓課程和理論課程中的實踐環節進行考核。考核項目中比較重視教育效果的評價和教育過程的組織,同時對教育前的準備工作也做了詳細的要求。對于調研性的專門實習、企業技能實習、畢業論文、畢業實習來說,我們不是評價實踐教育過程本身,而是評價實踐教育活動的指導教師,原因是以上的實習活動常常以小組為單位展開,并指定了專門的指導教師。通過多年的觀察,指導教師的指導理念和指導行為對實習效果的影響非常深遠。在這個評價標準當中,將教師的教書育人、教育準備、技能訓練、指導方法、成績考核等作為評價標準,同時加上了實踐教育指導工作創新的評價項目,促進實習指導教師勤于思考,提高實習指導的成效。2.師資水平的提升。知識的形成離不開學習發生的具體環境,否則課堂上學習的東西難以應用和遷移于課堂之外的環境。課堂教育在實施理論講授的同時為學生提供充分的專業操作流程模擬與案例、場景,引導學生參與模擬操作、案例討論、情景創設,并在此基礎上加深對相關理論的認識和理解,加強對相關技能的掌握。因此,在課堂教育過程中,教師必須有意識地創造與實際環境相似的真實情境。教師應充分利用自身的知識、經驗積累與各種教育資源尤其是社會資源將本專業理論與實踐有機地結合起來。這樣一來,對旅游管理專業本科教育的專業教師的知識和能力就提出了要求:第一要求專業教師掌握旅游管理專業的學科特點,熟悉本專業的人才培養方案,對于不同階段的課程安排及其關系做到心中有數,避免重復的實踐教育環節的設計和實踐教育活動的安排。第二要求專業教師不僅具有較強的理論知識的講授和演示能力,而且具備實訓項目的設計能力和實踐活動的協調能力。第三要求專業教師是“雙師型”教師,并具有在旅游飯店、旅行社、旅游景區、旅游行政管理單位、旅游規劃設計單位等實踐的經歷,或具有相關培訓認證機構的培訓經歷和認證證書。第四要求專業教師擁有豐富的校外兼職機會,具有廣泛的人脈關系。3.實踐基地的建設。為保證教育實踐效果,應結合專業特點有針對性地建立校內和校外兩類實習基地。校內實習基地包括“情景導游實訓室”、“模擬前廳實訓室”、“模擬客房實訓室”、“模擬餐廳實訓室”、“模擬酒吧實驗室”、“旅游規劃設計室”等,并配備相關教育資料。校外實習基地的建設則更多地以旅游企事業單位為陣地,通過密切與各旅游企事業單位的關系,按照優勢互補、共同發展的原則共同建設。校內實訓基地和校外實訓基地其實是不同的兩種情境,校內實訓基地大多是模擬型的情境,學生的操作失誤是被允許和被原諒的,也有一部分校內實訓基地是處于真實情境的。而校外實習基地卻不一樣,學生的操作失誤將會給實習基地造成一定的損失,所以如何從模擬情境到真實情境的遷移是老師和學生都應該重視的問題。4.職業導師的設立。如果把校內的專業教師稱為指導教師,那么,我們認為還有必要在技能性實踐階段和職業化實踐階段設立職業導師。職業導師應具備豐富的實踐操作能力、組織能力、管理能力,絕大多數為曾經在旅游相關企業任職多年并表現突出者或者為正在公司擔任培訓、管理等職位的專業人士。職業導師根據企業的發展需要、根據學生的個體情況,對學生實習進行恰當的計劃、組合與管理,以確保學生學習到更多企業所需的經驗、技能、能力,同時職業導師的個人技能、管理思想和處事態度都將對學生產生深遠的影響。5.學生的參與。前面的設計再優秀,沒有實踐教育的參與主體———學生,一切都變成了徒勞。因此,我們激發學生對實踐教育的興趣,通過豐富多彩的實踐教育設計讓學生有所收獲,引導學生主動參與到實踐活動中,在活動中收獲成就。努力與實習企業溝通,促使企業重視和愛護實習生,不簡單地把實習生當作企業的“短期廉價勞動力”,讓學生在實習單位有工作尊嚴、有生活保障。
作者:唐玲萍孟麗楊麗萍單位:玉溪師范學院
C語言是一種計算機程序設計語言,是計算機匯編語言的重要組成部分。其實質就是通過對語言進行編寫和翻譯,使其產生一種與社會相銜接的語言,讓人和計算之間通過這種語言能夠進行簡單的交流。C語言是在1972年由美國貝爾研究所提出,1978年先后被運用到各種機型中。C語言具有雙重性,具備高級語言的特點和匯編語言的優越性,不僅能對系統應用程序進行編寫,而且能對不依靠計算機硬件的應用程序進行編寫。同時C語言也具有廣泛的應用性,能在多個計算機的操作系統中運用,大大提高了計算機軟件編程的效率。隨著計算機的日益普及,C語言的應用領域越來越寬,成為目前較為流行的高級程序設計語言之一,在許多大型的軟件編程中被廣泛的應用。C語言具有如下的特點:
1.1模塊化思想模塊化的基本思想就是運用C語言在進行計算機軟件編程設計時,按功能作用的不同將一個較大的程序分割成為許多小的子模塊,使每個小的子模塊成為一個功能單一、理解簡單和結構合理的小程序。
1.2簡潔性強C語言具有語言簡潔、結構緊湊、使用方便、靈活的優勢。C語言包含了32個關鍵字和9條控制語句,源程序書寫方式較自由靈活,因此在計算機軟件編程中要選擇使用小寫字母,壓縮掉所有不重要的部分。
1.3運算范圍廣C語言總共具有34種運算符,其運算符號十分豐富且對運輸結果能采用各種各樣的表達形式,因此C語言的數據處理能力強,可以為各類數據結構進行復雜的運算,進行一些高級語言較難實現的運算功能。
1.4移植泛用性C語言在進行軟件編程中基本上不需要做任何的修改,就能運用于各種不同型號的計算機和操作系統環境上,從而形成很多不同版本的C語言。
1.5應用效率高C語言的應用結構簡單清晰,能夠對內存中的相應地址進行直接的訪問,操作十分方便,被稱為高級語言中的低級語言。同時能夠直接調用系統功能,直接操作硬件,具備許多高級語言所不具備的高效率。
2.C語言在計算機軟件編程中的技巧
C語言具有模塊化的特點,因此在計算機軟件程序編程中,充分發揮C語言的靈活性和方便性,提高軟件編程的技巧性,能夠優化軟件程序編輯和提高軟件開發的效率和質量。
2.1變量數據和運算模式的合理設置設置變量數據時,要在最大限度滿足計算機軟件編程需要的前提下,盡可能合理的設置變量數據,使用無符號的最小數據類型,這樣能減少程序代碼,從而促進計算機軟件編程的有效運行。同時在設置運算模式時,要盡量運用定點運算,避免運用浮點運算。
2.2變量存貯器類型的合理定義在計算機軟件編程中,采用和操作不同類型的變量存貯器時,會造成編譯后的代碼執行效率各不相同,只有合理定義變量存貯器類型,才能不斷提高程序的執行效率。因此在定義變量存貯器類型時,應在滿足條件的情況下盡量選用內部直接尋址存貯器。
2.3變量存貯類型的靈活設置在計算機軟件編程中,C語言具有模塊化思想,正確函數變量的傳遞在編程中十分重要,因此子程序模塊使用的變量常采用局部變量,而整個程序模塊使用的變量要采用全局變量。另外在C語言中靈活使用指針、結構和聯合,也便于數據的傳遞,提高軟件編程的效率。
2.4設計軟件編程與C語言的接口C語言具有程序執行速度快和直接操作硬件的優勢,在進行數據采集、中斷服務器處理和實時控制時,可以將C語言程序運用到計算機軟件編程中,自行控制數據的傳遞,從而能夠精確控制任務,加快實時響應。
2.5編譯控制指令的正確選擇C語言能為計算機的軟件編程提供了20多條控制指令,總體可分為首要控制指令和一般控制指令,首要控制指令的選擇只能用一次,要放在源程序的開始處,以防止重復而導致停止編譯,而一般控制指令的選擇可以多次。因此選擇正確的控制指令,能加速程序調試過程。
3.C語言在計算機軟件編程中的應用
C語言具有很強的優越性,可以適用于計算機軟件編程實驗研究,這就需要對C語言在計算機軟件編程中的應用有一個全面的認識,避免在以后的程序設計過程中出現基礎不足的情況。
3.1指針的應用C語言中的指針代表相關變量、相應函數的地址和地址相對應的存儲內容。在進行軟件編程時,如果一個相應的變量聲明前面,出現“*”號,那就表示這個內存地址相對應的存儲內容。通常情況下C語言的一個指針代表著一個相應函數的地址,是一個常量。此外,C語言的指針可以在調用函數時得到幾個不同于return(z)的返回值。
3.2字符串在C語言中,字符串是一種以ASCII的UNL作為數組退出的一種chair型的數組,在計算機軟件編程中,字符串的使用一般不需要引用庫。但在C標準庫中包含著一些函數可以操作相應的字符串,在使用這些函數時,需要運用相對應的頭文件進行引用。
3.3C語言結構C語言主要包括三種結構模式即順序結構、選擇結構和循環結構。順序結構在C語言中是按照先后次序進行操作,通過構建一個相對簡單和完整的程序,進行相對獨立的運用。循環結構是在進行各種數據運算和處理時,需要對其中的一些語句進行反復的執行,這在一定程度上簡化了程序的長度,使程序變得簡潔。選擇結構是根據相關的分支條件選擇相應的執行路徑,在計算機軟件編程中要選擇具有較強適應性執行路徑。