匯編移位: SHL、SHR、SAL、SAR、ROL、ROR、RCL、RCR


轉自:

https://blog.csdn.net/richerg85/article/details/27558005

侵刪

 

SHL、SHR、SAL、SAR: 移位指令

;SHL(Shift Left):      邏輯左移
;SHR(Shift Right):      邏輯右移
;SAL(Shift Arithmetic Left): 算術左移
;SAR(Shift Arithmetic Right): 算術右移

;其中的 SHL 和 SAL 相同, 但 SHR 和 SAR 不同.

;SHL、SAL: 每位左移, 低位補 0, 高位進 CF
;SHR  : 每位右移, 低位進 CF, 高位補 0
;SAR  : 每位右移, 低位進 CF, 高位不變

;它們的結果影響 OF、SF、ZF、PF、CF
;它們的指令格式相同:
SHL r/m, i8
SHL r/m, CL

ROL、ROR、RCL、RCR: 循環移位指令


;ROL(Rotate Left):        循環左移
;ROR(Rotate Right):      循環右移
;RCL(Rotate through Carry Left): 帶進位循環左移
;RCR(Rotate through Carry Right): 帶進位循環右移

;ROL: 循環左移, 高位到低位並送 CF
;ROR: 循環右移, 低位到高位並送 CF
;RCL: 循環左移, 進位值(原CF)到低位, 高位進 CF
;RCR: 循環右移, 進位值(原CF)到高位, 低位進 CF

;它們的結果影響 OF、CF
;它們的指令格式相同:
SHL r/m, i8
SHL r/m, CL


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM