intrins.h一般出現(xiàn)在C51單片機編程中,一般程序中需要使用到空指令_nop_();字符循環(huán)移位指令_crol_等時使用。
10年積累的網(wǎng)站設(shè)計、成都做網(wǎng)站經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有洱源免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
在單片機c語言中直接調(diào)用庫函數(shù)即可,具體如下:includeintrins.h // 聲明了void _nop_(void);_nop_(); // 產(chǎn)生一條NOP指令。
其實就是匯編命令中的nop,調(diào)用一次就空閑一個機器周期,不需要看C文件的,其實就是個宏定義而已。
加載頭文件:includeintrins.h 該函數(shù),即可使用了。
這類內(nèi)核級的內(nèi)聯(lián)函數(shù)你可以搜索一下編譯器自帶的幫助。在MDK環(huán)境下是__nop();,其函數(shù)原型為void __nop(void)。編譯時會在每個__nop();處生成一個NOP指令。
reg5h是c51(用于單片機開發(fā)的一種c語言)的頭文件。類似于頭文件AT89X5h。
1、在單片機的C語言編程中,經(jīng)常需要許多空指令來產(chǎn)生短延遲效應(yīng)。很容易做的匯編語言,只寫幾個空操作。avr-gcc采用以下方法嵌入組裝說明:Asm(nop”;nop。nop。nop。
2、第四條指令即“NOP”指令,這是一條空操作指令,有調(diào)機的作用。其中第一個CPU周期中取指令,CPU把23號單元的“NOP”指令取出放到指令寄存器,第二個CPU周期中執(zhí)行該指令。
3、在單片機C語言中加入NOP指令是因為標(biāo)準(zhǔn)的C語言中沒有空語句。但在單片機的C語言編程中,經(jīng)常需要用幾個空指令產(chǎn)生短延時的效果。這在匯編語言中很容易實現(xiàn),寫幾個nop就行了。
4、NOP指令,也稱作“空指令”,在x86的CPU中機器碼為0x90(144)。NOP不執(zhí)行操作,但占一個程序步。執(zhí)行NOP時并不做任何事,有時可用NOP指令短接某些觸點或用NOP指令將不要的指令覆蓋。
5、俚語是一種非正式的語言,通常用在非正式的場合。有時俚語用以表達(dá)新鮮事物,或?qū)εf事物賦以新的說法。
6、nop--空語句的作用:nop指令執(zhí)行時花去一個時鐘周期,所以可用把它用在延時程序中作為循環(huán)體,用以估計一個延時時間;用于程序指令的對齊,比如字對齊--以便于反匯編時容易讀懂。
在c語言里沒有這個_nop_函數(shù),這個函數(shù)是在51單片機里使用的。作用:對于延時很短的,要求在us級的,采用“_nop_”函數(shù),這個函數(shù)相當(dāng)匯編NOP指令,延時幾微秒。
C語言中沒有_nop_()函數(shù),該函數(shù)是在51單片機中用的延時函數(shù),延時一個指令周期。一般包含在 intrins.h 頭文件當(dāng)中。例如用6MHz的晶振,則如下for循環(huán)大約延時1秒。
C中 _nop_()是空指令,延時一個指令周期;如果是51單片機,外部晶振是12M,那么延時時間為12M*12=1us;C語言是一門通用計算機編程語言,應(yīng)用廣泛。
網(wǎng)站名稱:c語言nop函數(shù)的作用 c語言norm函數(shù)的定義
文章分享:http://vcdvsql.cn/article8/dcsgcip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、網(wǎng)站設(shè)計公司、域名注冊、網(wǎng)站制作、營銷型網(wǎng)站建設(shè)、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)