≯算术移位——把操作数看做有符号数; 逻辑移位——把操作数看做无符号数 移位位数放在CL寄存器中,如果只移1位,也 可以直接写在指令中。例如 MOV CL, 4 SHR AL,CL;AL中的内容右移4位 >影响C,P,S,Z,0标志。 结果未溢出时: 左移1位≡操作数*2 右移1位≡操作数/2
例:把AL中的数x乘10 因为10=8+2=23+21,所以可用移位实现乘10 操作。程序如下: SAL AL. 1 2x MOV AH.AL SAL AL. 1: 4x SAL AL. 1 &x ADD ALAH 8x+2x= 10x