在剛剛涉足嵌入式開發(fā)的時(shí)候,總想找到這樣一本書,它可以解決我一些這樣那樣的疑惑。但是遺憾的是,到現(xiàn)在也沒有這樣一本書面世,而且我想永遠(yuǎn)也不可能面世了。因?yàn)槲业囊苫筇嗵s了。這些疑惑在教科書中又難以尋找到答案。C 教程注重講C 的語法,編譯原理注重講語法,語義的分析。每一門教科書都是有它的注重,所以那些交叉的問題便成了三不管。市場上的那些自稱為《XX 寶典》、《XX 圣經(jīng)》的書卻總是說一些可能連作者自己也沒搞清楚的問題。于是我想,我想了解的也許是大家都想了解的吧,那么把我學(xué)到的一點(diǎn)東西寫出來,大家也許就可以少花點(diǎn)時(shí)間在上面,留出寶貴的腦力資源去做更有意義的事。 語言選擇,C 還是其他 剛剛涉及嵌入式開發(fā)者總是先閱讀一些指導(dǎo)類型文章,然后就開始對開發(fā)語言的選擇躊躇不決。是C 還是C++?還是好像更熱門的JAVA?不用猶豫,至少目前看來C 還是你的選擇。嵌入式開發(fā)的本質(zhì)是訂制開發(fā),硬件平臺(tái)林林總總,處理能力高下不同,如果想保護(hù)你學(xué)習(xí)精力投資的話,C 是最好的“優(yōu)績股”。C++的優(yōu)點(diǎn)在于它的代碼重用,但是效率比C低很多,最重要的是,并非所有芯片的編譯器都能支持C++。JAVA 就更不用提及,在一個(gè)虛擬平臺(tái)上開發(fā)的優(yōu)點(diǎn)是不用關(guān)心具體的硬件細(xì)節(jié),但這不是一個(gè)嵌入式開發(fā)者的作風(fēng),換一種說法,這種開發(fā)不能稱之為嵌入式開發(fā)。 C被稱為高級語言中的低級語言,低級語言中的高級語言,這是因?yàn)槠湟环矫嬗懈呒壵Z言所具有的接近于人類思想的語言體系,另一方面同時(shí)支持地址與位操作。可以方便的與硬件打交道。嵌入式開發(fā)必然要操作IO、硬件地址,沒有位操作和指針你又如何方便做到? 下面詳細(xì)的內(nèi)容請看附件:
![]() |