匯編語言,移植性差,壹般針對某型cpu,每個類型的cpu都有自己的匯編語言
為保證C語言編制的通用算法的可移植性,比如我們用C編寫了壹套mp3解碼算法程序,要在pc機上、手機上都能用,那麽我們就采用通用的C編譯器,將C語言程序編譯成指定CPU的匯編語言,再匯編成機器可執行程序。
另壹個用途是程序優化問題,在C語言層次,由於是高級語言,不涉及底層硬件,那麽底層硬件的特性不能夠得到充分利用,在需要優化算法的場合,我們需要將C語言算法編譯生成匯編程序,然後修改需要優化的匯編程序達到目的。比如,妳在手機上經常會遇到音頻解碼器,需要安裝,而且不同的cpu需要選擇不同的解碼器,這些解碼器應當就是在匯編層次上優化了算法的可執行代碼,關鍵部分經過匯編級優化,不需要優化部分仍然使用C語言編譯的結果。