久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3861|回復(fù): 26
打印 上一主題 下一主題
收起左側(cè)

_nop_()這個(gè)函數(shù)的括號里寫入什么值

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:711481 發(fā)表于 2020-3-24 20:02 來自觸屏版 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |正序?yàn)g覽 |閱讀模式
如題
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

27#
ID:1134816 發(fā)表于 2024-10-27 18:36 | 只看該作者
什么都不寫,本來就是個(gè)空指令
回復(fù)

使用道具 舉報(bào)

26#
ID:1133676 發(fā)表于 2024-10-26 13:26 | 只看該作者
不用填
回復(fù)

使用道具 舉報(bào)

25#
ID:592807 發(fā)表于 2024-10-21 08:18 | 只看該作者

你可以理解成void _nop_(void){;}這是個(gè)什么都不做就浪費(fèi)單片機(jī)時(shí)間的函數(shù)就行了
回復(fù)

使用道具 舉報(bào)

24#
ID:466250 發(fā)表于 2024-10-21 00:10 | 只看該作者
188610329 發(fā)表于 2024-10-20 21:07
正常的書寫方式,應(yīng)該是這樣:

編譯后不會(huì)有任何錯(cuò)誤。

不是所有的編譯器都支持這種寫法,這是keil的寫法,你找其他的編譯器看看能支持?
按標(biāo)準(zhǔn)寫法,肯定會(huì)成成call指令,如果是替換為nop只能說明這是編譯器的關(guān)鍵字。
define的寫法在一些編譯器的未加密的庫函數(shù)可以看到封裝后的寫法,但如果這時(shí)用keil就會(huì)報(bào)錯(cuò)。而define這種寫法的通用性還可以用在keil上。
回復(fù)

使用道具 舉報(bào)

23#
ID:624769 發(fā)表于 2024-10-20 21:07 | 只看該作者
藍(lán)藍(lán)小星星 發(fā)表于 2024-10-20 04:05
按正常書寫方法,可通過編譯,并產(chǎn)生了CALL指令,并非NOP指令。

正常的書寫方式,應(yīng)該是這樣:

編譯后不會(huì)有任何錯(cuò)誤。

Ctrl+F5 查看匯編指令后,也是一個(gè)空指令NOP。


嘴上說著別以為別人都是傻子,但是你卻總以為別人都是傻子。
都說了這是系統(tǒng)函數(shù)庫的東西了,你去KEIL 的 HELP 里面都能搜到這個(gè)指令,壓根不需要什么自作聰明的 define, 只要一個(gè)extern 就能調(diào)用,你如果調(diào)用不了,就是你系統(tǒng)函數(shù)庫出了問題!

回復(fù)

使用道具 舉報(bào)

22#
ID:466250 發(fā)表于 2024-10-20 04:05 | 只看該作者
188610329 發(fā)表于 2024-10-18 14:14
你這 多打一個(gè) _ 以為大家看不見么? 不要自欺欺人好吧?




按正常書寫方法,可通過編譯,并產(chǎn)生了CALL指令,并非NOP指令。
回復(fù)

使用道具 舉報(bào)

21#
ID:466250 發(fā)表于 2024-10-20 04:02 | 只看該作者
188610329 發(fā)表于 2024-10-18 14:14
你這 多打一個(gè) _ 以為大家看不見么? 不要自欺欺人好吧?




刪除所有代碼,只寫2行足以測試,別總以為別人是傻子,你倒是來解釋解釋為什么不能通過編譯。
至于為什么會(huì)多出來_,是因?yàn)榘茨愕膶懛ㄖ宦暶髁撕瘮?shù),但沒有書寫函數(shù)所以警告,編譯器直接在出錯(cuò)函數(shù)前面加上_符號而已。
回復(fù)

使用道具 舉報(bào)

20#
ID:624769 發(fā)表于 2024-10-18 14:14 | 只看該作者
藍(lán)藍(lán)小星星 發(fā)表于 2024-10-18 00:09
現(xiàn)在用過了,直接無法編譯。

你這 多打一個(gè) _ 以為大家看不見么? 不要自欺欺人好吧?
回復(fù)

使用道具 舉報(bào)

19#
ID:466250 發(fā)表于 2024-10-18 00:09 | 只看該作者
188610329 發(fā)表于 2024-10-17 23:53
你用過么? 你能不想當(dāng)然的 認(rèn)為 有LCALL 而實(shí)際 編譯一下看看么?



現(xiàn)在用過了,直接無法編譯。
回復(fù)

使用道具 舉報(bào)

18#
ID:624769 發(fā)表于 2024-10-17 23:53 | 只看該作者
藍(lán)藍(lán)小星星 發(fā)表于 2024-10-11 23:25
使用函數(shù)傳遞空指令會(huì)發(fā)生LCALL跳轉(zhuǎn),而不是匯編NOP指令,所謂的庫函數(shù),就是系統(tǒng)封裝好的指令。
部分編 ...

你用過么? 你能不想當(dāng)然的 認(rèn)為 有LCALL 而實(shí)際 編譯一下看看么?
回復(fù)

使用道具 舉報(bào)

17#
ID:466250 發(fā)表于 2024-10-11 23:25 | 只看該作者
188610329 發(fā)表于 2024-10-11 20:45
_nop_()  根本不是來自宏定義!! 來自于 系統(tǒng)函數(shù)庫!
你只需要使用
extern void          _nop_     (voi ...

使用函數(shù)傳遞空指令會(huì)發(fā)生LCALL跳轉(zhuǎn),而不是匯編NOP指令,所謂的庫函數(shù),就是系統(tǒng)封裝好的指令。
部分編譯器能看到NOP()被宏定義,部分編譯器可能看不到。
通過宏定義還可以重定義自己喜好的寫法。
回復(fù)

使用道具 舉報(bào)

16#
ID:624769 發(fā)表于 2024-10-11 20:45 | 只看該作者
_nop_()  根本不是來自宏定義!! 來自于 系統(tǒng)函數(shù)庫!
你只需要使用
extern void          _nop_     (void);
來申明就能直接調(diào)用, 而不需要 勞神子 的 define
根據(jù)這個(gè)函數(shù)模型可以看出, 這是一個(gè)不傳參的 函數(shù)。
回復(fù)

使用道具 舉報(bào)

15#
ID:155507 發(fā)表于 2024-10-11 13:50 | 只看該作者

_nop_();的由來是宏定義

函數(shù)原型

#define           _nop_()        __asm { nop }

/////////////////////////////////////////////////
#define NOP1()  _nop_()
#define NOP2()  NOP1(),NOP1()
#define NOP3()  NOP2(),NOP1()
#define NOP4()  NOP3(),NOP1()
#define NOP5()  NOP4(),NOP1()
#define NOP6()  NOP5(),NOP1()
#define NOP7()  NOP6(),NOP1()
#define NOP8()  NOP7(),NOP1()
#define NOP9()  NOP8(),NOP1()
#define NOP10() NOP9(),NOP1()
#define NOP11() NOP10(),NOP1()
#define NOP12() NOP11(),NOP1()
#define NOP13() NOP12(),NOP1()
#define NOP14() NOP13(),NOP1()
#define NOP15() NOP14(),NOP1()
#define NOP16() NOP15(),NOP1()
#define NOP17() NOP16(),NOP1()
#define NOP18() NOP17(),NOP1()
#define NOP19() NOP18(),NOP1()
#define NOP20() NOP19(),NOP1()
#define NOP21() NOP20(),NOP1()
#define NOP22() NOP21(),NOP1()
#define NOP23() NOP22(),NOP1()
#define NOP24() NOP23(),NOP1()
#define NOP25() NOP24(),NOP1()
#define NOP26() NOP25(),NOP1()
#define NOP27() NOP26(),NOP1()
#define NOP28() NOP27(),NOP1()
#define NOP29() NOP28(),NOP1()
#define NOP30() NOP29(),NOP1()
#define NOP31() NOP30(),NOP1()
#define NOP32() NOP31(),NOP1()
#define NOP33() NOP32(),NOP1()
#define NOP34() NOP33(),NOP1()
#define NOP35() NOP34(),NOP1()
#define NOP36() NOP35(),NOP1()
#define NOP37() NOP36(),NOP1()
#define NOP38() NOP37(),NOP1()
#define NOP39() NOP38(),NOP1()
#define NOP40() NOP39(),NOP1()
#define NOP(N)  NOP##N()


/////////////////////////////////////////////////

回復(fù)

使用道具 舉報(bào)

14#
ID:466250 發(fā)表于 2024-10-10 21:52 | 只看該作者
本帖最后由 藍(lán)藍(lán)小星星 于 2024-10-11 00:17 編輯

_nop_();的由來是宏定義

#define _nop_()  asm"nop"
回復(fù)

使用道具 舉報(bào)

13#
ID:517951 發(fā)表于 2024-10-10 07:59 | 只看該作者
_nop_(); 是空轉(zhuǎn)指令, 主要用于非常短暫的延時(shí). 不需要參數(shù).
回復(fù)

使用道具 舉報(bào)

12#
ID:697917 發(fā)表于 2020-3-25 17:28 | 只看該作者
nothing,就是一個(gè)空指令,會(huì)占用一個(gè)機(jī)器周期,匯編中為了防止程序跑飛也會(huì)對此調(diào)用該指令,防止程序死掉。
回復(fù)

使用道具 舉報(bào)

11#
ID:426861 發(fā)表于 2020-3-25 17:07 | 只看該作者
不要填任何值
回復(fù)

使用道具 舉報(bào)

10#
ID:685726 發(fā)表于 2020-3-25 16:56 | 只看該作者
不用填,這個(gè)是空操作符,延時(shí)函數(shù)里面的指令,相當(dāng)于延時(shí)一個(gè)機(jī)器周期。
回復(fù)

使用道具 舉報(bào)

9#
ID:592807 發(fā)表于 2020-3-25 08:29 | 只看該作者
空白操作,不寫值
回復(fù)

使用道具 舉報(bào)

8#
ID:481073 發(fā)表于 2020-3-25 07:56 | 只看該作者
就是一個(gè)周期,就有的時(shí)候你要做很精確的延時(shí)的時(shí)候很多單片機(jī)自己延時(shí)函數(shù)做不到,一般us級別的,就要用到這個(gè)函數(shù),可以仿真測下時(shí)間,然后決定用幾個(gè)
回復(fù)

使用道具 舉報(bào)

7#
ID:388135 發(fā)表于 2020-3-24 22:41 | 只看該作者
nop后面有括號嗎?
回復(fù)

使用道具 舉報(bào)

6#
ID:473159 發(fā)表于 2020-3-24 22:16 | 只看該作者
_nop_()本身是一個(gè)操作為空的函數(shù)(不執(zhí)行具體事情的函數(shù)(括號類也是空)),作用就是白白浪費(fèi)單片機(jī)周期時(shí)間,起到簡短延時(shí)效果
回復(fù)

使用道具 舉報(bào)

5#
ID:711481 發(fā)表于 2020-3-24 21:54 來自觸屏版 | 只看該作者
xxpp2011 發(fā)表于 2020-3-24 21:28
什么都不用填,只有定義函數(shù)時(shí)有輸入?yún)?shù)的才要在括號里填

單獨(dú)把它放在一行上,不用填入?yún)?shù),就會(huì)延遲嗎?
回復(fù)

使用道具 舉報(bào)

地板
ID:711481 發(fā)表于 2020-3-24 21:53 來自觸屏版 | 只看該作者
billaj 發(fā)表于 2020-3-24 21:29
我一直以為這是個(gè)空操作符,就是讓單片機(jī)白白浪費(fèi)一個(gè)機(jī)器周期用的。。。。還能寫入值的嗎???我也坐等答 ...

我初學(xué)  不太懂
回復(fù)

使用道具 舉報(bào)

板凳
ID:388929 發(fā)表于 2020-3-24 21:29 | 只看該作者
我一直以為這是個(gè)空操作符,就是讓單片機(jī)白白浪費(fèi)一個(gè)機(jī)器周期用的。。。。還能寫入值的嗎???我也坐等答案呢
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:452950 發(fā)表于 2020-3-24 21:28 | 只看該作者
什么都不用填,只有定義函數(shù)時(shí)有輸入?yún)?shù)的才要在括號里填
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲视频一区在线观看 | 一区观看 | 97精品超碰一区二区三区 | 日韩一区二区福利 | 久草精品视频 | 97视频在线免费 | 天天综合久久 | 欧美aaa | 在线黄 | 国产一区二区三区四区 | 日韩欧美手机在线 | 欧美日本韩国一区二区 | 麻豆一区二区三区精品视频 | av毛片在线免费观看 | 亚洲福利网 | 国产精品永久 | 久久久美女 | 亚洲国产精品99久久久久久久久 | 成人精品一区二区三区四区 | 一区二区三区四区在线视频 | 密乳av | 国产偷录叫床高潮录音 | 美女一级a毛片免费观看97 | 国产精品色| 一级片视频免费 | 久久精品国产清自在天天线 | 国产精品久久9 | 中文在线视频 | 亚洲免费精品 | 午夜成人免费视频 | 久久久一区二区三区 | 国产高清在线 | 亚洲一区二区 | 日本精品视频在线 | 在线免费看毛片 | 国产在视频一区二区三区吞精 | 色综合一区二区 | 亚洲激情视频在线 | 亚洲人成在线观看 | 日本精品一区二区三区在线观看视频 | 国产1区2区|