循环移位指令有:循环左移ROL(Rotate Left)和循环右移ROR(Rotate Right)。
指令的格式:ROL/ROR Reg/Mem, CL/Imm
受影响的标志位:CF和OF
循环左移/右移指令只是移位方向不同,它们移出的位不仅要进入CF,而且还要填补空出的位。具体功能如下图(a)、(b)所示。
![]()  |                                                           
      ![]()  |                                                           
    
| 
         (a)、ROL  |                                                          
      
         (b)、ROR  | 
下面是几个循环移位的例子及其执行结果。
|                                                         
       循环移位指令  |                                                         
                                                            
       指令操作数的初值  |                                                         
                                                            
       指令执行后的结果  |                                                         
  
|                                                         
       ROL AX, 1  |                                                               
                                                                  
       (AX)=6789H  |                                                             
                                                                
       (AX)=0CF12H  |                                                             
  
|                                                             
       ROL AX, 3  |                                                               
                                                                  
       (AX)=6789H  |                                                             
                                                                
       (AX)=3C4BH  |                                                             
  
|                                                             
       ROR AX, 2  |                                                               
                                                                  
       (AX)=6789H  |                                                             
                                                                
       (AX)=59E2H  |                                                             
  
|                                                             
       ROR AX, 4  |                                                               
                                                                  
       (AX)=6789H  |                                                             
                                                                
       (AX)=9678H  |                                                             
  
学习和理解不带进位的循环移位指令的控件。