MPLAB XC16編譯器提供了一系列內(nèi)建函數(shù),使C語言編程人員可以訪問目前只能通過行內(nèi)匯編訪問的匯編運(yùn)算符或機(jī)器指令。內(nèi)建函數(shù)名都有一個前綴__builtin_,源代碼用C語言編寫,在句法上類似于函數(shù)調(diào)用,但它會被編譯成直接實(shí)現(xiàn)功能的匯編代碼,且不涉及函數(shù)調(diào)用或庫函數(shù)。
相比于使用行內(nèi)匯編,內(nèi)建函數(shù)具有以下優(yōu)勢:
1.提供專用的內(nèi)建函數(shù)可以簡化編碼。
2.使用行內(nèi)匯編時會禁止某些優(yōu)化功能,而使用內(nèi)建函數(shù)則不會。
3.對于使用專用寄存器的機(jī)器指令來說,編寫行內(nèi)匯編代碼時要特別注意避免寄存器分配錯誤。
而內(nèi)建函數(shù)使這個過程更簡單,無需考慮每個機(jī)器指令的特殊寄存器要求。內(nèi)建函數(shù)的編程接口和使用說明請參考《MPLAB XC16編譯器用戶指南》。
-
函數(shù)
+關(guān)注
關(guān)注
3文章
4363瀏覽量
63750 -
編譯器
+關(guān)注
關(guān)注
1文章
1651瀏覽量
49705 -
MPLAB
+關(guān)注
關(guān)注
9文章
220瀏覽量
67392
發(fā)布評論請先 登錄
相關(guān)推薦
GCC內(nèi)建函數(shù)問題!!!
MPLAB X IDE和XC16編譯器適用的頭文件是什么
MPLAB-X 3.55無法識別XC16編譯器
xc16編譯器不編譯延遲向量
XC16編譯器編譯失敗
內(nèi)置函數(shù)真的內(nèi)置到XC16編譯器嗎?
MPLAB X v2.10軟件下載

如何將C源代碼從MPLAB C18編譯器移植到MPLAB XC8C編譯器的詳細(xì)概述

面向嵌入式工程師的MPLAB XC16用戶指南
MPLAB XC16 C編譯器用戶指南

評論