日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]C語言最早是由貝爾實驗室的Dennis Ritchie為了UNIX的輔助開發(fā)而編寫的,它是在B語言的基礎(chǔ)上開發(fā)出來的。盡管C語言不是專門針對UNIX操作系統(tǒng)或機器編寫的,但它與UNIX系統(tǒng)的關(guān)系十分緊密。由于它的硬件無關(guān)性和可移植性,使C語言逐漸成為世界上使用最廣泛的計算機語言。

3.1Linux下C語言編程概述3.1.1C語言簡單回顧

C語言最早是由貝爾實驗室的DennisRitchie為了UNIX的輔助開發(fā)而編寫的,它是在B語言的基礎(chǔ)上開發(fā)出來的。盡管C語言不是專門針對UNIX操作系統(tǒng)或機器編寫的,但它與UNIX系統(tǒng)的關(guān)系十分緊密。由于它的硬件無關(guān)性和可移植性,使C語言逐漸成為世界上使用最廣泛的計算機語言。

為了進一步規(guī)范C語言的硬件無關(guān)性,1987年,美國國家標(biāo)準協(xié)會(ANSI)根據(jù)C語言問世以來各種版本對C語言的發(fā)展和擴充,制定了新的標(biāo)準,稱為ANSIC。ANSIC語言比原來的標(biāo)準C語言有了很大的發(fā)展。目前流行的C語言編譯系統(tǒng)都是以它為基礎(chǔ)的。

C語言的成功并不是偶然的,它強大的功能和它的可移植性讓它能在各種硬件平臺上游刃自如。總體而言,C語言有如下特點。

(1)C語言是“中級語言”。它把高級語言的基本結(jié)構(gòu)和語句與低級語言的實用性結(jié)合起來。C語言可以像匯編語言一樣對位、字節(jié)和地址進行操作,而這三者是計算機最基本的工作單元。

(2)C語言是結(jié)構(gòu)化的語言。C語言采用代碼及數(shù)據(jù)分隔,使程序的各個部分除了必要的信息交流外彼此獨立。這種結(jié)構(gòu)化方式可使程序?qū)哟吻逦阌谑褂?、維護以及調(diào)試。C語言是以函數(shù)形式提供給用戶的,這些函數(shù)可方便地調(diào)用,并具有多種循環(huán)、條件語句控制程序流向,從而使程序完全結(jié)構(gòu)化。

(3)C語言功能齊全。C語言具有各種各樣的數(shù)據(jù)類型,并引入了指針的概念,可使程序效率更高。另外,C語言也具有強大的圖形功能,支持多種顯示器和驅(qū)動器,而且計算功能、邏輯判斷功能也比較強大,可以實現(xiàn)決策目的。

(4)C語言可移植性強。C語言適合多種操作系統(tǒng),如DOS、Windows、Linux,也適合多種體系結(jié)構(gòu),因此尤其適合在嵌入式領(lǐng)域的開發(fā)。

3.1.2Linux下C語言編程環(huán)境概述

Linux下的C語言程序設(shè)計與在其他環(huán)境中的C程序設(shè)計一樣,主要涉及編輯器、編譯鏈接器、調(diào)試器及項目管理工具?,F(xiàn)在我們先對這4種工具進行簡單介紹,后面會對其一一進行講解。

(1)編輯器.

Linux下的編輯器就如Windows下的記事本、寫字板等一樣,完成對所錄入文字的編輯功能。Linux中最常用的編輯器有vi(vim)和emacs,

它們功能強大、使用方便,深受編程愛好者的喜愛。在本書中,著重介紹vi和emacs。

(2)編譯鏈接器。

編譯是指源代碼轉(zhuǎn)化生成可執(zhí)行代碼的過程,它所完成的主要工作如圖3.1所示。

圖3.1編譯過程

可見,編譯過程是非常復(fù)雜的,它包括詞法、語法和語義的分析、中間代碼的生成和優(yōu)化、符號表的管理和出錯處理等。在Linux中,最常用的編譯器是gcc編譯器。它是GNU推出的功能強大、性能優(yōu)越的多平臺編譯器,其執(zhí)行效率與一般的編譯器相比平均效率要高20%~30%。

(3)調(diào)試器

調(diào)試器并不是代碼執(zhí)行的必備工具,而是專為方便程序員調(diào)試程序而用的。有編程經(jīng)驗的讀者都知道,在編程的過程當(dāng)中,往往調(diào)試所消耗的時間遠遠大于編寫代碼的時間。因此,有一個功能強大、使用方便的調(diào)試器是必不可少的。gdb是絕大多數(shù)Linux開發(fā)人員所使用的調(diào)試器,它可以方便地設(shè)置斷點、單步跟蹤等,足以滿足開發(fā)人員的需要。

(4)項目管理器。

Linux中的項目管理器“make”有些類似于Windows中Visualc++里的“工程”,它是一種控制編譯或者重復(fù)編譯軟件的工具,另外,它還能自動管理軟件編譯的內(nèi)容、方式和時機,使程序員能夠把精力集中在代碼的編寫上而不是在源代碼的組織上。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當(dāng)下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉