KEIL C51 中 C語(yǔ)言加入?yún)R編語(yǔ)言的使用方法
1.通過(guò)使用預(yù)處理指令#asm 和#endasm來(lái)使用匯編語(yǔ)言。用戶編寫的匯編語(yǔ)言可以緊跟在#asm之后,而在#endasm之前結(jié)束。如下所示:
# asm
/*匯編源程序*/
# endasm
在#asm和#endasm之間的語(yǔ)句將作為匯編語(yǔ)言的語(yǔ)句輸出到由編譯器產(chǎn)生的匯編語(yǔ)言文件中。
2.通過(guò)使用預(yù)處理指令# pragma asm和函數(shù)_asm()來(lái)使用匯編語(yǔ)言。在程序的開(kāi)頭加上預(yù)處理指令#pragma asm,在該預(yù)處理指令之前只能有注釋和其它預(yù)處理指令。
_asm()函數(shù)可按以下方式使用。
_asm(匯編語(yǔ)言字符串)
在匯編語(yǔ)言字符串中,可以通過(guò)回車和換行符把各個(gè)語(yǔ)句分開(kāi)。
在C語(yǔ)言中使用匯編語(yǔ)言,可以操作C語(yǔ)言中的全局變量或完成用C語(yǔ)言難于完成的功能,但要注意以下幾點(diǎn):
① #asm不允許嵌套使用。
② 當(dāng)使用asm語(yǔ)句時(shí),編譯系統(tǒng)并不輸出目標(biāo)模塊,而只輸出匯編源文件。
③ _asm只能用小寫字母,如果寫成大寫,就作為普通變量。
④ #asm#endasm和_asm只能用在函數(shù)內(nèi)。