1、嵌入式操作系統(tǒng)需要匯編語言
2、實時性要求非常高的地方,需要匯編語言,比如FFT算法。
3、匯編語言做運算那叫一個痛苦,下面是一段雙字節(jié)乘法,浮點數(shù)就更難搞。
MUL16_16 ;RES3:RES0=ARG1HARG2LMOVF ARG1L,WMULWF ARG2LMOVFF PRODH,RES1MOVFF PRODL,RES0MOVF ARG1H,WMULWF ARG2H ;ARG1H*ARG2H->PRODH:PRODLMOVFF PRODH,RES3MOVFF PRODL,RES2MOVF ARG1L,WMULWF ARG2H ;ARG1L*ARG2H->PRODH:PRODLMOVF PRODL,WADDWF RES1,F ;Add cross productsMOVF PRODH,WADDWFC RES2,FCLRF WREGADDWFC RES3,FMOVF ARG1H,WMULWF ARG2L ;ARG1H*ARG2L->PRODH:PRODLMOVF PRODL,WADDWF RES1,F ;Add cross productsMOVF PRODH,WADDWFC RES2,FCLRF WREGADDWFC RES3,FRETURN
我這里并不是鼓勵一個項目全部使用匯編語言編程,比如一個3萬多行代碼的項目,如下圖,其中function.c就已經(jīng)有13763行。

全匯編的話編程難度將會劇增,也給日后修改維護帶來很大的挑戰(zhàn)。通常的做法是C語言嵌套匯編語言。
學習匯編可以更深層次的了解單片機的工作原理,了解系統(tǒng)是如何啟動的。

掌握匯編是成為底層系統(tǒng)工程師、牛逼工程師的必備技能。其實匯編也沒有那么恐怖,也就是那十幾個常用的命令,再加上配套的偽指令,基本程序結(jié)構(gòu)。不必糾結(jié)要不要學習,有時間的話馬上學,正所謂技不壓身。

這是我早年做的一個項目,全匯編語言編寫。光點紅外線光幕完整項目,本人曾經(jīng)拓展到34光點。



路漫漫其修遠兮,吾將上下而求索。覺得不錯,動動發(fā)財?shù)男∈贮c個贊哦!
審核編輯 黃宇
-
匯編語言
+關(guān)注
關(guān)注
14文章
413瀏覽量
38926
發(fā)布評論請先 登錄
匯編語言還有必要學習嗎
評論