新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 數據處理指令之: EOR邏輯異或指令

        數據處理指令之: EOR邏輯異或指令

        作者: 時間:2013-09-13 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/257075.htm

        6.2

        1.指令的編碼格式

        邏輯異或(Exclusive OR)指令將寄存器Rn>中的值和shifter_operand>的值執行按位“異或”操作,并將執行結果存儲到目的寄存器Rd>中,同時根據指令的執行結果更新CPSR中相應的條件標志位。

        指令的編碼格式如圖6.3所示。

        圖6.3 指令的編碼格式

        2.指令的語法格式

        EOR{cond>}{S} Rn>,Rn>,shifter_operand>

        ① cond>

        為指令編碼中的條件域。它指示指令在什么條件下執行。當cond>忽略時,指令為無條件執行(cond=AL(Alway))。

        ② S>

        S位(bit[20])決定指令的執行是否影響CPSR中的條件域。當S位清0時,指令執行不影響CPSR。當S位置位時(并且不是r15),則有以下規則。

        · 如果結果為負,則標志位N置位;否則清0(也就是說N等于結果的第31位)。

        · 如果結果為0,則標志位Z置位;否則清0。

        · 當操作定義為算術操作(ADD、ADC、SUB、SBC、RSB或RSC)時,標志位C設置為ALU的進位輸出;否則設置為移位器的進位輸出。如果不需要移位,則保持C。

        · 在非算術操作中,標志位V保持原值。在算術操作中,如果有從第30位到第31位的溢出,則置位;如果不發生溢出,則清0。僅當算術操作中操作數被認為是2的補碼的有符號數時,這個標志位才有意義,而且指示結果超出范圍。

        若指令中的目標寄存器Rd>為r15,則當前處理器模式對應的SPSR的值被復制到CPSR寄存器中。用戶模式和系統模式下,由于沒有相應的SPSR,指令的執行結果不可預知。

        ③ Rd>

        指定目標寄存器。

        ④ Rn>

        指定第一個源操作數寄存器。

        ⑤ shifter_operand>

        使用的通用尋址模式確定第二個源操作數。它影響指令編碼格式中的I(bit[25])位和shifter_operand(bits[11∶0])位。

        注意

        當指令的編碼格式中I位等于0,并且移位操作數shifter_operand中bit[7]和bit[4]也都等于1,則指令并非EOR指令。詳情請參閱系統結構參考手冊。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 新泰市| 神农架林区| 连南| 汝州市| 郸城县| 布拖县| 含山县| 莒南县| 信宜市| 米泉市| 镶黄旗| 扎鲁特旗| 贞丰县| 德钦县| 思南县| 红原县| 成都市| 东源县| 永丰县| 衢州市| 抚州市| 阿尔山市| 天津市| 台南市| 咸宁市| 东乌珠穆沁旗| 古蔺县| 朝阳县| 华宁县| 桦甸市| 安龙县| 东辽县| 钦州市| 隆化县| 鄢陵县| 山阳县| 隆林| 门源| 阜宁县| 新宁县| 罗田县|