Open source
  • Bandwidth benchmark
  • TouchWidgets UI lib
  • Diviner big number math
  • Documentation
  • x86 instructions ref
  • GIT quick ref
  • GPG quick ref
  • Avoid Ubuntu
  • Android malware risks
  • iOS malware risks
  • OS/X security tips
  • Who blocks Tor
  • Software engineering
  • BASH aliases
  • I.B. pro/con
  • Nutrition
  • Other apps
  • Blog
  • Contact
    1 at zsmith dot co

    The Intel 8086 / 8088 / 80186 / 80286 / 80386 / 80486 Instruction Set

    This HTML version of the file intel.doc from the PC Game Programmer's guide was produced by , veritasNOSPAM@comcast.net. Fancy HTML modifications are copyright © 2005 by , all rights reserved. This information is provided in the hope that it will be useful, but without any warranty; it is provided AS-IS, without even the implied warranty of fitness for a particular purpose.

    D Instructions

    DAA - Decimal Adjust for Addition
     
        Usage:  DAA
        Modifies flags: AF CF PF SF ZF (OF undefined)
    
        Corrects result (in AL) of a previous BCD addition operation.
        Contents of AL are changed to a pair of packed decimal digits.
    
                                 Clocks                 Size
        Operands         808x  286   386   486          Bytes
    
        none              4     3     4     2             1
    

    DAS - Decimal Adjust for Subtraction
     
        Usage:  DAS
        Modifies flags: AF CF PF SF ZF (OF undefined)
    
        Corrects result (in AL) of a previous BCD subtraction operation.
        Contents of AL are changed to a pair of packed decimal digits.
    
                                 Clocks                 Size
        Operands         808x  286   386   486          Bytes
    
        none              4     3     4     2             1
    

    DEC - Decrement
     
        Usage:  DEC     dest
        Modifies flags: AF OF PF SF ZF
    
        Unsigned binary subtraction of one from the destination.
    
                                 Clocks                 Size
        Operands         808x  286   386   486          Bytes
    
        reg8              3     2     2     1             2
        mem             15+EA   7     6     3            2-4
        reg16/32          3     2     2     1             1
    

    DIV - Divide
     
        Usage:  DIV     src
        Modifies flags: (AF,CF,OF,PF,SF,ZF undefined)
    
        Unsigned binary division of accumulator by source.  If the source
        divisor is a byte value then AX is divided by "src" and the quotient
        is placed in AL and the remainder in AH.  If source operand is a word
        value, then DX:AX is divided by "src" and the quotient is stored in AX
        and the remainder in DX.
    
                                 Clocks                 Size
        Operands         808x  286   386   486          Bytes
    
        reg8             80-90  14    14    16            2
        reg16           144-162 22    22    24            2
        reg32              -    -     38    40            2
        mem8        (86-96)+EA  17    17    16           2-4
        mem16     (150-168)+EA  25    25    24           2-4  (W88=158-176+EA)
        mem32              -    -     41    40           2-4
    



    © Zack Smith