學微控制器必須學組合語言嗎,還是學好c語言就足夠了

時間 2021-08-13 00:45:49

1樓:武音

微控制器要做工程的話還是用c好,用匯編太複雜。c要100行的在彙編裡面要300-500行。。。。

我已經學了c語言(不是專門用來編微控制器的)然後學的微控制器彙編,下學期還要開微控制器c語言,足見c還是更加適用於微控制器。我們現在做的微控制器課程設計很多人用匯編編不出來的用c就很容易。

先學c,彙編大致瞭解一下就可以了

1、對於普通的專案,只要學好c就行了,但不是足夠了。

2、現在流行的微控制器開發程式語言有彙編、c、c++。

3、它們是可以相互依託的,比如要求開發速度,我們可以儘量用c或c++,因為它們都比用匯編完成任務速度要快。比如要求執行速度,我們必須考慮使用匯編,因為彙編的速度大體要比c或c++快5%~15%,另外我們還可以考慮用c或c++來巢狀匯編完成。

4、通過以上說明,只會c是不夠的,有空還是要看看彙編和c++的。

c語言是一種計算機程式設計語言,它既具有高階語言的特點,又具有組合語言的特點。它由美國貝爾研究所的d.m.

ritchie於2023年推出,2023年後,c語言已先後被移植到大、中、小及微型機上,它可以作為工作系統設計語言,編寫系統應用程式,也可以作為應用程式設計語言,編寫不依賴計算機硬體的應用程式。它的應用範圍廣泛,具備很強的資料處理能力,不僅僅是在軟體開發上,而且各類科研都需要用到c語言,適於編寫系統軟體,三維,二維圖形和動畫,具體應用比如微控制器以及嵌入式系統開發。

2樓:匿名使用者

我的一點感想:

以前關於51微控制器的專案,均用匯編,裡面的資源如何用,到什麼程度,你特別清楚。【例如一段程式執行多少時間,用了哪些記憶體】。感覺特爽。

現在用c,寫其他型別得微控制器,編譯時,系統會佔用部分資源,這樣:資源用到何地步,一段c程式執行時間,中斷巢狀等,就不清楚了。雖然能完成任務,但是感覺特別不爽。

3樓:雪泥灬鴻爪

現在的微控制器用c就可以了。甚至有一些還支援c++。但是經常會在c**中嵌入彙編**,所以建議樓主還是學習一下組合語言會比較有幫助

4樓:匿名使用者

1、對於普通的專案,只要學好c就行了,但不是足夠了。

2、現在流行的微控制器開發程式語言有彙編、c、c++。

3、它們是可以相互依託的,比如要求開發速度,我們可以儘量用c或c++,因為它們都比用匯編完成任務速度要快。比如要求執行速度,我們必須考慮使用匯編,因為彙編的速度大體要比c或c++快5%~15%,另外我們還可以考慮用c或c++來巢狀匯編完成。

4、通過以上說明,只會c是不夠的,有空還是要看看彙編和c++的。

5樓:匿名使用者

不是必須的,但是要微控制器學的非常好就必須掌握彙編,我是之前學彙編的,程式設計的感覺和c完全不一樣,每一條指令都能感覺的清清楚楚,像電機等精確控制的時候是需要用匯編的。不過還是有很多人不會彙編,只會c,c是必須會的,移植性好。

51的彙編指令有111條,其實非常好掌握,分類分好就只有會30幾條就可以了。祕訣是知道指令的英文含義,比如mov是move的簡寫,setb是set bit的簡寫=置位,clr是清除的意思就是清零,call是呼叫的意思,建議看趙星寒的從0開始學微控制器你去看一下,很好的,你有電子基礎就更容易了.每天學一小時我就一個多月會的.

6樓:醉月空明

先學c,彙編大致瞭解一下就可以了

學51微控制器用匯編還是用c語言比較好?先學彙編可以嗎?

7樓:晨曦問

絕對可以,我就是先學習的組合語言,只有學習了彙編才能真正的瞭解微控制器。。 如果不瞭解微控制器的構造及原理,學c很快就會厭倦。不過c就是簡單點,容易上手, 我先學的是彙編,也感覺不是很難。

8樓:匿名使用者

從絕大多數資深微控制器從業人員的經驗來看,學習微控制器從彙編入手,內

逐步過渡到c語言這容麼一個過程最好。因為組合語言最直接的接觸硬體各個介面,弄懂了組合語言,硬體介面和控制模組基本上就掌握了,駕馭起來就會得心應手,之後再用c語言來編制複雜程式就能揮灑自如了。

9樓:匿名使用者

先學習c語言哦,c語言更簡單,並且現在的微控制器程式基本上都用c語言寫更加簡單哦,匯內編學起來較

容難點,雖然學會了彙編可以更好的瞭解程式的執行過程,用匯編編寫**量非常大也要求思路很清楚,對於新手來說最好就用c哦,比如叫你寫了延時函式,用c很簡單,幾句話就可以,但彙編的話 你首先得知道有哪些暫存器,**也比較多

10樓:匿名使用者

先學c吧,簡單點

沒程式設計基礎學彙編有點難度

11樓:

當然可以,不過個人建議直接學習c比較好點。

12樓:尼古丁___憂傷

這個沒有先後,但個人感覺c語言好學一點。

組合語言微控制器,組合語言怎麼寫入微控制器

rlc 是帶進位的迴圈左移,rlc a即將a的內容左移一位,將進位位c中的值移到累加器a的最低位,a的最高位移到c裡。譬如說 設a 01000001,c 1 則如果執行rl 則a 10000010,c 1 a所有位左移一位,最低位補零,c不參加移位操作,保持原值不變 如果執行rlc後,則a 1000...

微控制器組合語言程式設計,全國微控制器組合語言程式設計師

org 0000h main mov dptr,3000h clr r0 clr r1 clr r2 mov r3,100 loop mov a,dptr clr c cjne a,0h,loop1 inc r0 djnz r3,loop loop1 rl a jc fushu inc r1 djn...

微控制器組合語言的幾個疑問

靈若伊雪 1 r1 20h 不是一條指令,而只是一種說明,表明r1暫存器中的內容是20h。這個20h是地址還是資料,與這個說明無關。2 在指令 mov r1,40h 中,r1 是間接定址方式,表明r1中的內容是地址,指令的功能表明是將立即數40h傳送到r1指定的地址中。3 在指令中容易混淆的是立即數...