(4)除法指令
①DIV
格式: DIV OPRD
功能:無符號除法指令。用指定的源操作數OPRD去除累加器中的值,所得商和余數分別放在AL和AH(字節操作)或AX和DX(字操作)中。
②其他除法指令
●IDIV: 完成帶符號數的除法運算。
●AAD: 完成AX中的兩位未組合的十進制數在兩個數相除之前進行核正。
●CBW: 字節轉換為字。具體操作是按AL的符號位擴展到整個AH中。
●CMD: 字轉換為雙字。按AX的符號擴展到整個DX中。
3.邏輯運算和移位指令
(1)邏輯運算指令①NOT
格式: NOT OPRD
功能:完成對操作數求反,然后送回原處。說明:此指令對標志位無影響。
②AND
格式: AND OPRD1,OPRD2
功能:對兩操作數進行按位邏輯“與”運算,結果送目的操作數。目的操作數可為通用寄存器、存儲器,源操作數可以是立即數、寄存器、存儲器。
③OR
格式: OR OPRD1, OPRD2
功能:對兩操作數進行按位“或”運算,結果回送目的操作數。操作數規定與AND相同。
說明:“或”運算令標志位CF=0,OF=0,其“或”操作后的結果反映在標志位PF、SF和ZF上。
④XOR
格式: XOR OPRD1,OPRD2
功能:對兩個操作數進行按位“異或”運算,結果回送目的操作數。
說明:XOR執行后,標志位CF=0,OF=0,“異或”操作結果反映在標志位PF、SF和ZF上。
⑤TEST
格式: TEST OPRD1,OPRD2
功能:TEST指令的操作與AND指令完全相同,但結果不送目的操作數,僅反映在狀態標志位上,TEST指令的操作數規定與AND相同,對標志位的影響亦與AND相同,即:CF=0,OF=0,結果反映在標志位PF、SF和ZF上。
(2)移位指令
移位指令可將寄存器或存儲單元的8位或16位的內容向左或向右移動1位或多位。
①SAL/SHL
格式: SAL/SHL OPRD m
功能:SAL(算述左移)和SHL(邏輯左移)指令將操作數OPRD左移m位,移位后空出的位填零。操作數可以是寄存器、存儲器。m是移位次數,為1時取立即數,大于1時先將m賦予CL寄存器。
②SAR
格式: SAR OPRD m
功能:算術右移指令。將指定操作數右移m位,最低位進入標志位CF,其他位依次右移,但符號位(最高位)保持不變。m的規定與SHL相同。③SHR
格式: SHR OPRD m
功能:邏輯右移指令。與SAR類擬,最低位進入標志位CF,但移位后空位的最高位填0。
(3)循環移位指令
8086/8088有四條循環移位指令,它們是:
●ROL OPRD M ;左循環移位
●ROR OPRD M ;右循環移位
●RCL OPRD M ;帶進位的左循環移位
●RCR OPRD M ;帶進位的右循環移位
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |