GNU內嵌組語
一、C內嵌 asm 語法格式:
asm volatile (“asm code”:output:input:changed); //語法結尾必須以‘;’做結尾
語法格式說明:
1. 開頭的 asm
是內嵌asm關鍵字,接著的 volatile 是\告訴編譯器不要優化內嵌的asm,如果想優化就不加 volatile。
2. ANSI C 的 asm
語法格式必須改為:
__asm__ __volatile__(“asm code”:output:input:changed);// 這是因ANSI C把asm用於其它用途,不能用於內嵌 asm 語法,GCC就可以
3. 如果後面部分沒有output、input、changed內容,‘:’可以省略,前面或中間的不能省略‘:’,沒有asm code也不可以省略‘“”’,如果沒有changed必須省略‘:’。
沒有留言:
張貼留言