移位指令

1、算术移位指令 SAL / SAR   (影响CF , OF , PF ,SF , ZF)

  格式:SAL  DST , COUNT   把DST各位依次向左移动COUNT位,低位补0

   SAR   DST , COUNT   把DST各位依次向右移动COUNT位,高位用符号位内容填充

2、逻辑移位指令 SHL / SHR    (影响CF , OF , PF ,SF , ZF)

格式: SHL  DST  ,  COUNT  把DST各位依次向左移动COUNT位,低位补0

     SHR  DST ,  COUNT  把DST各位依次向右移动COUNT位, 高位补0

3、循环移位指令 ROL / ROR    (影响CF , OF )

格式:ROL DST ,  COUNT    把DST各位依次向左移动 COUNT位,移出的位不但送入到CF,同时移动到DST的最低位

            ROR DST , COUTN     把DST各位依次向右移动COUNT位,移出的位不但送入到CF,同时移动到DST的最高位

4、带进位的循环移位指令  RCL / RCR   (影响CF , OF)

格式: RCL  DST, COUNT  把DST各位依次向左移动COUNT位, 移出的位先送入到CF中,同时将CF位的数送入到DST的最低位

     RCR  DST,COUNT  把DST各位依次向右移动COUNT位, 移出的位先送入到CF中, 同时将CF位的数送入到DST的最高位

注:在8086中COUNT可以为立即数1 ,如果大于1的数应该放入到CL 寄存器中

你可能感兴趣的:(汇编学习)