| 
 |  | 
                                Unsigned Divide                               
  
    | 
       86/88  | 
    
       Y  | 
    
       186  | 
    
       Y  | 
    
       286  | 
    
       Y  | 
    
       386  | 
    
       Y  | 
    
       486  | 
    
       Y  | 
    
       DIV source  | 
   
  
    | 
       Ovfl  | 
    
       ?  | 
    
       Dir  | 
    
       N  | 
    
       Int  | 
    
       N  | 
    
       Trap  | 
    
       N  | 
    
       Sign  | 
    
       ?  | 
    
       Zero  | 
    
       ?  | 
    
       Aux  | 
    
       ?  | 
    
       Prty  | 
    
       ?  | 
    
       Carry  | 
    
       ?  | 
   
     This instruction performs unsigned division. If the source is a byte,
    DIV divides the word value in AX by source, returning the quotient in
    AL and the remainder in AH. If the source is a word, DIV divides the
    double-word value in DX:AX by the source, returning the quotient in AX
    and the remainder in DX.
       Notes:         If the result is too large to fit in the destination
                      (AL or AX), an INT 0 (Divide by Zero) is generated,
                      and the quotient and remainder are undefined.
                      When an Interrupt 0 (Divide by Zero) is generated,
                      the saved CS:IP value on the 80286 and 80386 points
                      to the instruction that failed (the DIV
                      instruction).  On the 8088/8086, however, CS:IP
                      points to the instruction following the failed DIV
                      instruction.
------------------------------------ Timing ----------------------------------
OpCode          Instruction             386     286     86
F6/6            DIV AL, r/m8            14/17   14/17   90/96+EA
F7/6            DIV AX, r/m16           22/25   22/25   162/168+EA
F7/6            DIV EAX, r/m32          38/41
------------------------------------ Logic -----------------------------------
        AL = AX / Source
        AH = Remainder
    or
        AX = DX:AX / Source
        DX = Remainder
See Also IDIV SHR AAD CBW CWD CWDE CDQ INT/00 Flags |