<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          MSP430匯編指令

          作者: 時間:2016-11-25 來源:網(wǎng)絡(luò) 收藏
          操作數(shù)位置及執(zhí)行過程 狀 態(tài) 位
          代 碼 源操作數(shù)目的操作數(shù) 指令執(zhí)行過程詳述 VNZC
          ADC[.W]或ADC.B dst dst+C->dst 進位C 加至目的操作數(shù)目的操作數(shù)以前的內(nèi)容丟失 ****
          ADD[.W]或ADD.B src,dst src+dst->dst 源操作數(shù)加至目的操作數(shù)源操作數(shù)不受影響目的操作數(shù)以前的內(nèi)容丟失 ****
          ADDC[.W]或ADDC.B src,dst src+dst+C->dst 源操作數(shù)和進位C 加至目的操作數(shù)源操作數(shù)不受影響目的操作數(shù)以前的內(nèi)容丟失 ****
          AND[.W]或AND.B src,dst src.and.dst->dst 源操作數(shù)和目的操作數(shù)邏輯與結(jié)果放入目的操作 0***
          BIC[.W]或BIC.B src,dst not.src.and.dst->dst 求反后的源操作數(shù)和目的操作數(shù)邏輯與結(jié)果放入目的操作數(shù)源操作數(shù)不變 ----
          BIS[.W]或BIS.B src,dst src.or.dst->dst 源操作數(shù)和目的操作數(shù)邏輯或 結(jié)果放入目的操作數(shù)源操作數(shù)不變 ----
          BIT[.W]或BIT.B src,dst src.and.dst 源操作數(shù)和目的操作數(shù)邏輯與其結(jié)果只影響狀態(tài)位目的操作數(shù)和源操作數(shù)不變 0***
          BR dst轉(zhuǎn)移到 無條件轉(zhuǎn)移到64K 地址空間的任一地址處可使用所有的源尋址方式轉(zhuǎn)換指令是一個字指令 ----
          CALL dstPC+2->堆棧,dst->PC 調(diào)用64K 地址空間中任一地址處的子程序可使用所有的尋址方式返回地址(后續(xù)指令的地址)儲存在堆棧中調(diào)用指令是一個字指令 ----
          CLR[.W]或CLR.B dst清除目的操作數(shù) 清除目的操作數(shù) ----
          CLRC 清除進位位 進位位被清零清除進位位指令是一個字指令 ---0
          CLRN 清除負(fù)位 常數(shù)#04H 求反后(0FFFBH)和目的操作數(shù)邏輯與結(jié)果放入目的操作數(shù)清除負(fù)位指令是一個字指令 -0--
          CLRZ 清除零位 常數(shù)#02H 求反后(0FFFDH)和目的操作數(shù)邏輯與結(jié)果放入目的操作數(shù)清除負(fù)位指令是一個字指令 --0-
          CMP[.W]或CMP.B dstdst-src 從目的操作數(shù)中減去源操作數(shù)方法是將源操作數(shù)求反再加 1,源操作數(shù)和目的操作數(shù)不受影響不保存結(jié)果只影響狀態(tài)位 ****
          DADC[.W]或DADC.B dst dst+C->dst(十進制) 進位位C 作為十進制加至目的操作數(shù) ****
          DADD[.W]或DADD.B src,dst src+dst+C->dst(十進制) 源操作數(shù)和目的操作數(shù)被當(dāng)作4 個帶有正符號的二-十進制BCD 數(shù)十進制的源操作數(shù)和進位C 被加至目的操作數(shù)源操作數(shù)不受影響目的操作數(shù)以前的內(nèi)容丟失些結(jié)果對于非二-十進制數(shù)是不確定的 ****
          DEC[.W]或DEC.B dst dst-1->dst 目的操作數(shù)減1 以前的內(nèi)容丟失 ****
          DECD[.W]或DECD.B dst dst-2->dst 目的操作數(shù)減2 以前的內(nèi)容丟失 ****
          DINT 禁止中斷 禁止所有中斷 ----
          EINT 使能中斷 使能所有中斷,常數(shù)08H 與狀態(tài)寄存器SR 邏輯或其結(jié)果放入SR ----
          INC[.W]或INC.B dst dst+1->dst目的操作數(shù)增1 目的操作數(shù)加1 以前的內(nèi)容丟失 ****
          INCD[.W]或INCD.B dst dst+2->dst目的操作數(shù)增2 目的操作數(shù)加2 以前的內(nèi)容丟失 ****
          INV[.W]或INV.B dst目的操作數(shù)求反 目的操作數(shù)取反以前的內(nèi)容丟失 ****
          JC/JHS 標(biāo)號進位位被置時轉(zhuǎn)移到標(biāo)號語句 測試狀態(tài)寄存器的進位位C 如果它被置則指令的LSB 中包含的10 位符號偏移加至程序計數(shù)器如果C 被復(fù)位則執(zhí)行JUMP 后面的一條指令JC( 有進位/大于等于時跳轉(zhuǎn) )用于比較無符號數(shù)(0~65536) ----
          JEQ/JZ 標(biāo)號零位被置時轉(zhuǎn)移到標(biāo)號語句 測試狀態(tài)寄存器的零位Z 如果它被置則指令的LSB 中包含的10 位符號偏移加至程序計數(shù)器如果Z 被復(fù)位則執(zhí)行JUMP 后面的一條指令 ----
          JGE 標(biāo)號N.xor.V=0時轉(zhuǎn)移到標(biāo)號語句 測試狀態(tài)寄存器的負(fù)位N 和溢出位V 如果N 和V 均被置位或復(fù)位則指令的LSB 中包含的10 位符號偏移加至程序計數(shù)器如果其中之一被置位則執(zhí)行JUMP 后面的一條指令該指令允許比較符號整數(shù) ----
          JL 標(biāo)號N.xor.V=0時轉(zhuǎn)移到標(biāo)號語句 測試狀態(tài)寄存器的負(fù)位N 和溢出位V 如果N 和V 其中之一被置位則指令的LSB 中包含的10 位符號偏移加至程序計數(shù)器如果兩都均被置位或復(fù)位則執(zhí)行JUMP 后面的一條指令該指令允許比較符號整數(shù) ----
          JMP 標(biāo)號無條件轉(zhuǎn)移到標(biāo)號語句 指令的LSB中包含的10 位符號偏移加至程序計數(shù)器 ----
          JN 標(biāo)號負(fù)位被置時轉(zhuǎn)移到標(biāo)號語句 測試狀態(tài)寄存器的負(fù)位N 如果N 被置位則指令的LSB 中包含的10 位符號偏移加至程序計數(shù)器如果N 被復(fù)位則執(zhí)行JUMP 后面的一條指令該指令允許比較符號整數(shù)狀態(tài)位 不影響狀態(tài)位 ----
          JNC/JLO 標(biāo)號進位位復(fù)位時轉(zhuǎn)移到標(biāo)號語句 測試狀態(tài)寄存器的進位位C 如果它被復(fù)位則指令的LSB 中包含的10 位符號偏移加至程序計數(shù)器如果C 被置位則執(zhí)行JUMP 后面的一條指令JC( 有進位/大于等于時跳轉(zhuǎn) )用于比較無符號數(shù)(0~65536) ----
          JNE/JNZ 標(biāo)號零位復(fù)位時轉(zhuǎn)移到標(biāo)號語句 測試狀態(tài)寄存器的零位Z 如果它被復(fù)位則指令的LSB 中包含的10 位符號偏移加至程序計數(shù)器如果Z 被復(fù)位則執(zhí)行JUMP 后面的一條指令 ----
          MOV[.W]或MOV.B src,dst src->dst 源操作數(shù)被移至目的操作數(shù)源操作數(shù)不變目的操作數(shù)以前的內(nèi)容丟失 ----
          NOP 空操作 此指令可用于在檢查軟件期間仿真指令或用于已確定的等待時間 ----
          POP[.W]或POP.B dst項目從堆棧彈出,SP+2->SP 堆棧指針(TOS)指向的棧區(qū)字移至目的操作數(shù)隨后堆棧指針加2 ----
          PUSH[.W]或PUSH.B src SP–2->SP,src->@SP 堆棧指針減2 然后源操作數(shù)移至由此指針(TOS)尋址的RAM 字 ----
          RETI TOS->SR SP+2->SP,TOS->PC SP+2->SP (1)狀態(tài)寄存器恢復(fù)到中斷服務(wù)程序開始時的值用TOS 存儲器中的值替換SR 中的當(dāng)前值可做到這一點堆棧指針SP加2
          (2)程序計數(shù)器恢復(fù)到中斷服務(wù)程序開始時的值這是中斷程序流的后續(xù)步驟用TOS 存儲器中的值替換PC 的當(dāng)前值可實現(xiàn)這種恢復(fù)堆棧指SP 加1 ----
          RET TOS->SR SP+2->SP 由CALL 指令壓進棧的返回地址移至程序計數(shù)器程序在子程序調(diào)用后的代碼地址處繼續(xù)執(zhí)行 ----
          RLA[.W]或RLA.B dst算術(shù)左移 目的操作數(shù)左移一位MSB成為進位位C LSB 填0 RLA 指令可當(dāng)作符號乘2 在執(zhí)行該操作前如果dst 大于等于04000H 且小于0C000H 則產(chǎn)生溢出結(jié)果會改變符號 ****
          RLC[.W]或RLC.B dst帶進位位左移 目的操作數(shù)左移一位進位位C 移入LSB MSB移入進位位C ****
          RRA[.W]或RRA.B dst算術(shù)右移 目的操作數(shù)右移一位MSB移入MSB MSB移入MSB – 1 LSB + 1 移入LSB 0***
          RRC[.W]或RRC.B dst帶進位位右移 目的操作數(shù)右移一位進位位C 移入MSB LSB移入進位位C ****
          SBC[.W]或SBC.B dst從目的操作數(shù)減去借位 進位C 加到減1 后的目的操作數(shù)目的操作數(shù)原來的內(nèi)容丟失 ****
          SETC 置進位位 進位C 被置這是一個常用的操作 ---1
          SETN 置負(fù)位-1 負(fù)位N 被置 -1--
          SETZ 置零位-1 負(fù)位Z 被置 --1-
          SUB[.W]或SUB.B src,dst dst+.not.src+1->dst 從目的操作數(shù)中減去源操作數(shù)方法是將源操作數(shù)求反再加上常數(shù)1 源操作數(shù)不受影響目的操作數(shù)以前的內(nèi)容丟失 ****
          SUBC[.W]或SUBC.B src,dst dst+.not.src+C->dst 從目的操作數(shù)中減去源操作數(shù)方法是將源操作數(shù)求反再加上進位C 源操作數(shù)不受影響目的操作數(shù)以前的內(nèi)容丟失 ****
          SWAP dst交換字節(jié) 目的操作數(shù)的高位字節(jié)和低位字節(jié)互換 ----
          SXT dst dst位7->位8......位150 低位字節(jié)的符號擴展到高位字節(jié) 0***
          TST[.W]或TST.B dst測試目的操作數(shù) 比較目的操作數(shù)和 0 根據(jù)結(jié)果設(shè)置狀態(tài)位目的操作數(shù)不受影響 0**1
          XOR[.W]或XOR.B src,dst src.xor.dst->dst 源操作數(shù)和目的操作數(shù)異或其結(jié)果放放目的操作數(shù)源操作數(shù)不受影響 ****
          注:
          1、以上指令共51條
          2、狀態(tài)位中“*”表示影響“-”表示不影響“0”表示清零“1”表示置位
          3、含.B的為單字節(jié)操作指令,含[.W]的為雙字節(jié)操作指令(可省略)
          4、src 源操作數(shù),dst目的操作數(shù),TOS堆棧頂部,SR狀態(tài)寄存器,SP堆棧指針


          關(guān)鍵詞: MSP430匯編指

          評論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();