NOP(No Operation)意為無操作,是匯編語言的一個指令。NOP指令既空指令。NOP指令通常作為偽指令。但是,如果在ARMv6K、ARMv6T2、ARMv7、ARMv8-M結構體系中,NOP不是偽指令。
偽指令(Pseudo Instruction)是用于對匯編過程進行控制的指令,該類指令并不是可執行指令,沒有機器代碼,只用于匯編過程中為匯編程序提供匯編信息。偽指令包括ADR、ADRL、LDR、NOP。
NOP偽指令使用以及描述如下:
Syntax
NOP在匯編過程中,將r0寄存器的數據賦值給r0寄存器,相當于做了一次無用功。下圖也給出了NOP的語法、描述。
此圖來自IAR的幫助文檔。
![pYYBAGMz-_aAQS3EAAGmu8VSF2U079.png](https://file.elecfans.com/web2/M00/6D/92/pYYBAGMz-_aAQS3EAAGmu8VSF2U079.png)
根據百度百科的解釋,NOP的主要作用如下:
1. 字節填充對齊
2. 精確延時和計時3. 破解程序的call驗證4. 等待其他設備執行完畢5. 清除由上一個算術邏輯指令設置的flag位6. 輔助jmp、call等指令
審核編輯:湯梓紅
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
指令
+關注
關注
1文章
611瀏覽量
35817 -
nop
+關注
關注
0文章
9瀏覽量
1944
發布評論請先 登錄
相關推薦
STM8S的NOP指令一個周期是多少?
大家好,STM8S的NOP指令一個周期是多少?現在外部晶振16MHZ,CPU不分頻,請問NOP的周期是多少?因為想用NOP做延時,謝謝!
發表于 04-09 07:54
ST芯片中nop指令的延時問題
如題,在程序運行中經常用到延時。出了常用的定時器以外,還有一種直接調用指令nop()來產生 延時的方法。這條指令的延時是取決于時鐘頻率的,我的疑惑是,直接調用nop()
發表于 06-02 09:54
請問在C語言調用匯編指令asm (" NOP ");便是等待一個指令周期,asm (" NOP 5");表示什么意思?
您好TI:在C語言調用匯編指令asm (" NOP ");便是等待一個指令周期,asm (" NOP 5");表示什么意思?
發表于 07-24 09:00
__NOP();延時函數 精選資料分享
不用系統時鐘與通用外設時鐘的延時函數介紹下__NOP();函數;它類似于匯編里的偽指令,也稱作“空指令”;它不執行操作,但占一個程序步???b class='flag-5'>指令使用時會占用執行一個
發表于 08-18 07:26
如何在s32k中添加NOP指令?
所以我需要生成一些等待延遲幾微秒,我需要在延遲循環中添加 NOP 指令,我找不到 s32k146 的 NOP 指令。
我在用
ARM 的 S32 設計工作室
版本:2018.R1
內
發表于 04-28 07:12
#define NOP() _nop_() /* 定義空指令 */這個空指令怎么用的?。?/a>
#defineNOP() _nop_()/* 定義空指令 */
這個空指令怎么用的啊?
發表于 06-19 07:47
單片機C語言中如何使用nop函數進行短延時的效果資料和程序說明
單片機C語言中如何使用nop函數進行短延時的效果資料和程序說明
標準的C語言中沒有空語句。但在單片機的C語言編程中,經常需要用幾個空指令產生短延時的效果。這在匯編語言中很容易實現,寫幾個no
發表于 03-05 11:01
?10次下載
![單片機C語言中如何使用<b class='flag-5'>nop</b>函數進行短延時的效果資料和程序說明](https://file.elecfans.com/web1/M00/86/A5/pIYBAFx953iAYmFtAAQ3NBrSV_U802.png)
51單片機C語言的nop_()指令有什么作用和詳細資料說明
C語言中沒有_nop_()函數。在51C中一般包含在#include “intrins.h” 頭文件中。該函數是在51單片機中用的延時函數,表示執行一條沒有什么意義的指令,延時一個指令周期,有的
發表于 07-05 17:41
?1次下載
![51單片機C語言的<b class='flag-5'>nop</b>_()<b class='flag-5'>指令</b>有什么作用和詳細資料說明](https://file.elecfans.com/web1/M00/9A/2B/o4YBAF0etGyAb2cUAAKJFndKwgg641.png)
如何用NOP指令覆蓋相關代碼繞開鑒權
啟動后檢查一次注冊碼是否有效——一個 if 判斷,他也認定,若反匯編軟件只要 欺騙過這條判斷加密措施蕩然無存。 群里我給他一個破解設計思想:“利用NOP指令覆蓋相關代碼繞開鑒權”。 2. 演示 下面是我做的一個例子演示運用NOP
plc中常見指令的操作方法
與母線連接,也不能象指令表中的OR、ORI、ORP、ORF指令那樣單獨使用。 2、NOP(空操作指令) 是一條空操作指令,用于程序的修改。它
發表于 12-17 14:14
?5219次閱讀
nop不同晶振頻率下的延時時間
_nop_()函數包括在庫函數intrins.h中的表示空循環一個機器指令的時間,12M中表示1us;6M中表示2us;24M中表示0.5us(微妙)1S=1000ms=1000000us;NOP
發表于 01-18 10:22
?7次下載
![<b class='flag-5'>nop</b>不同晶振頻率下的延時時間](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論