當(dāng)前位置:首頁(yè) > 嵌入式培訓(xùn) > IT培訓(xùn)問(wèn)題庫(kù) > 學(xué)習(xí)嵌入式要學(xué)匯編還是C語(yǔ)言呢,看看高手怎么選
對(duì)于學(xué)習(xí)嵌入式,很多人都會(huì)有疑問(wèn),在開(kāi)始學(xué)的時(shí)候,在學(xué)匯編還是C語(yǔ)言上有了糾結(jié),不知道學(xué)習(xí)哪個(gè)比較好,有很多爭(zhēng)議,有的人不會(huì)匯編,所以推C語(yǔ)言,而反之一樣,那么到底學(xué)什么好呢,在這里我給你解答,匯編和C語(yǔ)言都是你要學(xué)的。從而出現(xiàn)了下面2中觀點(diǎn)
1:匯編,只是一個(gè)語(yǔ)言工具。你要學(xué)習(xí)的,其實(shí)是ARM。想要搞精、搞深,匯編和計(jì)算機(jī)系統(tǒng)知識(shí)是必須的。尤其是對(duì)于底層嵌入式系統(tǒng)工程師來(lái)說(shuō),匯編是必須要掌握的。
首先系統(tǒng)啟動(dòng)、上電代碼都是匯編,匯編不掌握,你如何知道系統(tǒng)是如何啟動(dòng)的?
想深入鏈接C語(yǔ)言的函數(shù)是如何調(diào)用的,參數(shù)是如何傳遞的,想了解指針的本質(zhì)、函數(shù)名的本質(zhì),就要深入?yún)R編級(jí)代碼,通過(guò)反匯編,看底層指令是如何對(duì)C語(yǔ)言的高級(jí)特性進(jìn)行處理的,這都需要匯編語(yǔ)言的功底。掌握匯編,是成為底層系統(tǒng)工程師、牛逼工程師的必備技能。
另外,匯編沒(méi)那么恐怖,也就是那十幾個(gè)常用的命令,再加上配套的偽指令,基本程序結(jié)構(gòu),半天就差不多了。與其花半天時(shí)間在這里糾結(jié)要不要學(xué),不如趕緊學(xué),技不壓身。當(dāng)然,學(xué)習(xí)匯編之前,你還要對(duì)CPU處理器架構(gòu)、寄存器有一個(gè)了解,你要知道,匯編程序都是跟這些寄存器打交道的。學(xué)ARM匯編的話,需要掌握ARM處理器的基本架構(gòu)、不同模式下的寄存器配置。了解之后,再去學(xué)習(xí)匯編,你會(huì)發(fā)現(xiàn),你學(xué)習(xí)的哪里是匯編?學(xué)習(xí)的明明是ARM嘛!匯編,只是一個(gè)語(yǔ)言工具,一些助記符而已。你要學(xué)習(xí)的,其實(shí)是ARM。
2:就現(xiàn)在的社會(huì)發(fā)展而看,這兩者是缺一不可的,C語(yǔ)言需要匯編,匯編也需要C語(yǔ)言,這樣才能更加的適應(yīng)社會(huì)的需求,相互配合,缺一不可!
來(lái)了解一下匯編的重要性:
幫助你從根本上徹底和完全了解芯片的結(jié)構(gòu)和性能,以及工作原理,如何使用。
在小的芯片上實(shí)現(xiàn)小的系統(tǒng)。
系統(tǒng)的調(diào)試。盡管你使用了高級(jí)語(yǔ)言,在調(diào)試中可以幫助你了解C代碼的性能和特點(diǎn),甚至找到使用開(kāi)發(fā)平臺(tái)本身的BUG。
編寫(xiě)時(shí)序要求嚴(yán)格的代碼,實(shí)現(xiàn)一些高級(jí)語(yǔ)言不易實(shí)現(xiàn)的功能。
作為一個(gè)高級(jí)嵌入式開(kāi)發(fā)者,下面的這些能力是必備的
1.硬件:模擬、數(shù)字電路的雄厚基礎(chǔ),了解跟蹤現(xiàn)在市場(chǎng)上的各種元器件的應(yīng)用和發(fā)展,能夠進(jìn)行可靠、完善的電路設(shè)計(jì)以及PCB的設(shè)計(jì)。
2.軟件:不僅需要精通匯編語(yǔ)言,也要精通C語(yǔ)言,要有好的單片機(jī)系統(tǒng)程序設(shè)計(jì)理念和能力,學(xué)校中學(xué)的那些分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)等基本原理遠(yuǎn)遠(yuǎn)不夠!要有基本的數(shù)據(jù)結(jié)構(gòu)的知識(shí)。否則你如何設(shè)計(jì)實(shí)現(xiàn)USB HOST讀U盤(pán)的接口? 如何實(shí)現(xiàn)嵌入式WEB系統(tǒng)? 以及如何使用真正了解和使用RTOS? 具備計(jì)算機(jī)網(wǎng)絡(luò)和數(shù)字通信的基礎(chǔ)知識(shí),從根本上熟悉和了解各種協(xié)議的構(gòu)造和實(shí)現(xiàn),如:UART、RS232、SPI、I2C、USB、 IEEE802、TCP/IP等。
3.計(jì)算機(jī)應(yīng)用的高手
4.熟練閱讀英文資料:熱愛(ài)和喜歡電子技術(shù),具備刻苦精神、踏踏實(shí)實(shí),不弄虛作假,不浮躁。多動(dòng)手,勤實(shí)踐。有強(qiáng)烈的專業(yè)和鉆研精神。最后一條最重要!
所以你不要覺(jué)得什么不應(yīng)該學(xué),匯編和C語(yǔ)言你可以都學(xué)習(xí)一下,對(duì)以后還是有很大的幫助的哦。