資料介紹
5.2 MVN指令
1.指令編碼格式
MVN是反相傳送(Move Negative)指令。它將操作數(shù)的反碼傳送到目的寄存器。
MVN指令多用于向寄存器傳送一個(gè)負(fù)數(shù)或生成位掩碼。
指令的編碼格式如圖5.2所示。

圖5.2 MVN指令編碼格式
MVN指令將《shifter_operand》表示的數(shù)據(jù)的反碼傳送到目的寄存器Rd。并根據(jù)操作的結(jié)果更新CPSR中相應(yīng)的條件標(biāo)志位。
2.指令的語法格式
MNV{《cond》}{S} 《Rd》,《shifter_operand》
?、?《cond》
為指令編碼中的條件域。它指示MVN指令在什么條件下執(zhí)行。當(dāng)《cond》忽略時(shí),指令為無條件執(zhí)行(cond=AL(Alway))。
?、?S(bit[20])
如果S=1,MVN指令更新CPSR中條件標(biāo)志位的值;如果S=0,MVN指令不更新CPSR中條件標(biāo)志位的值。當(dāng)更新狀態(tài)寄存器CPSR中的條件標(biāo)志位時(shí),有兩種情況。
· 如果指令中的目標(biāo)寄存器《Rd》不是為r15,指令根據(jù)傳送的數(shù)值設(shè)置CPSR中的N位和Z位(如果數(shù)據(jù)在傳送前需要移位,則根據(jù)移位后的數(shù)值設(shè)置),并根據(jù)移位器的進(jìn)位值設(shè)置CPSR的C位。標(biāo)志位V和其他位不受影響。
· 如果指令中的目標(biāo)寄存器《Rd》為r15,則當(dāng)前處理器模式對應(yīng)的SPSR的值復(fù)制到CPSR寄存器中,對于用戶模式和系統(tǒng)模式,由于沒有相應(yīng)的SPSR,指令執(zhí)行的結(jié)果不可預(yù)知。
?、?《Rd》
確定目標(biāo)寄存器。
?、?《shifter_operand》
確定操作數(shù),為目標(biāo)寄存器傳送數(shù)據(jù)。
3.指令操作的偽代碼
指令操作的偽代碼如下面程序段所示。
If ConditionPassed{cond} then
Rd = NOT(shifter_operand)
If S==1 and Rd==r15 then
CPSR = SPSR
Else if S==1 then
N Flag = Rd[31]
Z Flag = If Rd==0 then 1 else 0
C Flag = shifter_carry_out
V Flag = unaggected
4.指令舉例
【例5.2】MVN指令
MVN指令和MOV指令相同也可以把一個(gè)數(shù)N送到目標(biāo)寄存器Rd,其中N可以是立即數(shù),也可以是寄存器。
注意這是邏輯非操作而不是算術(shù)操作,這個(gè)取反的值加 1 才是它的取負(fù)的值。
MVN R0, #4 ; R0 = -5
MVN R0, #0 ; R0 = -1
5.指令的使用
MVN指令主要完成以下功能。
· 向寄存器中傳送一個(gè)負(fù)數(shù)。
· 生成位掩碼(bit mask)。
· 求一個(gè)數(shù)的反碼。
?
1.指令編碼格式
MVN是反相傳送(Move Negative)指令。它將操作數(shù)的反碼傳送到目的寄存器。
MVN指令多用于向寄存器傳送一個(gè)負(fù)數(shù)或生成位掩碼。
指令的編碼格式如圖5.2所示。

圖5.2 MVN指令編碼格式
MVN指令將《shifter_operand》表示的數(shù)據(jù)的反碼傳送到目的寄存器Rd。并根據(jù)操作的結(jié)果更新CPSR中相應(yīng)的條件標(biāo)志位。
2.指令的語法格式
MNV{《cond》}{S} 《Rd》,《shifter_operand》
?、?《cond》
為指令編碼中的條件域。它指示MVN指令在什么條件下執(zhí)行。當(dāng)《cond》忽略時(shí),指令為無條件執(zhí)行(cond=AL(Alway))。
?、?S(bit[20])
如果S=1,MVN指令更新CPSR中條件標(biāo)志位的值;如果S=0,MVN指令不更新CPSR中條件標(biāo)志位的值。當(dāng)更新狀態(tài)寄存器CPSR中的條件標(biāo)志位時(shí),有兩種情況。
· 如果指令中的目標(biāo)寄存器《Rd》不是為r15,指令根據(jù)傳送的數(shù)值設(shè)置CPSR中的N位和Z位(如果數(shù)據(jù)在傳送前需要移位,則根據(jù)移位后的數(shù)值設(shè)置),并根據(jù)移位器的進(jìn)位值設(shè)置CPSR的C位。標(biāo)志位V和其他位不受影響。
· 如果指令中的目標(biāo)寄存器《Rd》為r15,則當(dāng)前處理器模式對應(yīng)的SPSR的值復(fù)制到CPSR寄存器中,對于用戶模式和系統(tǒng)模式,由于沒有相應(yīng)的SPSR,指令執(zhí)行的結(jié)果不可預(yù)知。
?、?《Rd》
確定目標(biāo)寄存器。
?、?《shifter_operand》
確定操作數(shù),為目標(biāo)寄存器傳送數(shù)據(jù)。
3.指令操作的偽代碼
指令操作的偽代碼如下面程序段所示。
If ConditionPassed{cond} then
Rd = NOT(shifter_operand)
If S==1 and Rd==r15 then
CPSR = SPSR
Else if S==1 then
N Flag = Rd[31]
Z Flag = If Rd==0 then 1 else 0
C Flag = shifter_carry_out
V Flag = unaggected
4.指令舉例
【例5.2】MVN指令
MVN指令和MOV指令相同也可以把一個(gè)數(shù)N送到目標(biāo)寄存器Rd,其中N可以是立即數(shù),也可以是寄存器。
注意這是邏輯非操作而不是算術(shù)操作,這個(gè)取反的值加 1 才是它的取負(fù)的值。
MVN R0, #4 ; R0 = -5
MVN R0, #0 ; R0 = -1
5.指令的使用
MVN指令主要完成以下功能。
· 向寄存器中傳送一個(gè)負(fù)數(shù)。
· 生成位掩碼(bit mask)。
· 求一個(gè)數(shù)的反碼。
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 51單片機(jī)數(shù)據(jù)傳送指令
- 51單片機(jī)之系統(tǒng)指令
- 使用51單片機(jī)實(shí)現(xiàn)數(shù)據(jù)傳送指令的資料免費(fèi)下載
- 51單片機(jī)的數(shù)據(jù)傳遞類和控制轉(zhuǎn)移類指令的詳細(xì)資料說明
- 51單片機(jī)的數(shù)據(jù)傳送指令詳細(xì)資料說明
- 單片機(jī)程序設(shè)計(jì)案例教程之數(shù)據(jù)傳送指令的詳細(xì)資料說明
- 80X86指令系統(tǒng)-傳送指令講解的詳細(xì)資料課件免費(fèi)下載 0次下載
- 淺談單寄存器數(shù)據(jù)傳送指令 1次下載
- Thumb指令集之多寄存器數(shù)據(jù)傳送指令解析 0次下載
- 數(shù)據(jù)傳送指令之程序狀態(tài)寄存器指令簡述 1次下載
- 數(shù)據(jù)傳送指令之單數(shù)據(jù)交換指令 1次下載
- 數(shù)據(jù)處理指令之SUB減操作指令分析 1次下載
- 數(shù)據(jù)傳送指令之MOV指令 4次下載
- 4.3 數(shù)據(jù)傳送指令 0次下載
- MCS-51系列單片機(jī)指令系統(tǒng)表數(shù)據(jù)傳送類指令
- 三菱PLC數(shù)據(jù)傳送指令介紹 8.5k次閱讀
- 三菱PLC傳送指令的用法 8.5k次閱讀
- 電路塊ANB指令與ORB指令操作 9.2k次閱讀
- PLC傳送與比較指令用法 7.9k次閱讀
- 三菱PLC的塊傳送和多點(diǎn)傳送指令 6.1k次閱讀
- MCS-51單片機(jī)的指令系統(tǒng)和尋址方式有哪些 6.7k次閱讀
- 89C51單片機(jī)16位數(shù)據(jù)傳送指令的執(zhí)行過程 6.2k次閱讀
- 基于51單片機(jī)查表指令的應(yīng)用 4.1k次閱讀
- 指令和偽指令分得清嗎? 7.5k次閱讀
- PLC傳送與比較指令用法與PLC硬件的實(shí)現(xiàn) 7k次閱讀
- 關(guān)于單片機(jī)89C51指令匯集 3k次閱讀
- 基于AT89S51數(shù)據(jù)傳送類指令程序 3.3k次閱讀
- 協(xié)處理器的三大類數(shù)據(jù)傳送指令 2.5k次閱讀
- 單片機(jī)控制系統(tǒng)中實(shí)現(xiàn)DMA數(shù)據(jù)傳送方法介紹 1.2w次閱讀
- thumb指令集是什么_thumb指令集與arm指令集的區(qū)別 1.9w次閱讀
下載排行
本周
- 1MDD品牌三極管BC807數(shù)據(jù)手冊
- 3.00 MB | 次下載 | 免費(fèi)
- 2MDD品牌三極管BC817數(shù)據(jù)手冊
- 2.51 MB | 次下載 | 免費(fèi)
- 3MDD品牌三極管D882數(shù)據(jù)手冊
- 3.49 MB | 次下載 | 免費(fèi)
- 4MDD品牌三極管MMBT2222A數(shù)據(jù)手冊
- 3.26 MB | 次下載 | 免費(fèi)
- 5MDD品牌三極管MMBTA56數(shù)據(jù)手冊
- 3.09 MB | 次下載 | 免費(fèi)
- 6MDD品牌三極管MMBTA92數(shù)據(jù)手冊
- 2.32 MB | 次下載 | 免費(fèi)
- 7STM32G474 HRTIME PWM 丟波問題分析與解決
- 1.00 MB | 次下載 | 3 積分
- 8新能源電動汽車高壓線束的銅鋁連接解決方案
- 2.71 MB | 次下載 | 2 積分
本月
- 1愛華AIWA HS-J202維修手冊
- 3.34 MB | 37次下載 | 免費(fèi)
- 2NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 3PC5502負(fù)載均流控制電路數(shù)據(jù)手冊
- 1.63 MB | 22次下載 | 免費(fèi)
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供電電路圖資料
- 0.63 MB | 6次下載 | 1 積分
- 5UWB653Pro USB口測距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 6技嘉H110主板IT8628E_BX IO電路圖資料
- 2.61 MB | 4次下載 | 1 積分
- 7蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 8蘇泊爾DCL6909(即CHK-S009)單芯片電磁爐原理圖資料
- 0.08 MB | 2次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評論