Add With Carry                                

86/88

Y

186

Y

286

Y

386

Y

486

Y

ADC destination, source

Ovfl

Y

Dir

N

Int

N

Trap

N

Sign

Y

Zero

Y

Aux

Y

Prty

Y

Carry

Y

    ADC adds the operands, adds 1 if the Carry Flag is set, and places the
    resulting sum in destination. Both operands may be bytes or words, and
    both may be signed or unsigned binary numbers.

       Note:          ADC is useful for adding numbers that are larger
                      than 16 bits, since it adds a carry from a previous
                      operation.

------------------------------------ Timing ----------------------------------

OpCode          Instruction             386     286     86
10/r            ADC r/m8, r8            2/7     2/7     3/16+EA
11/r            ADC r/m16, r16          2/7     2/7     3/16+EA
11/r            ADC r/m32, r32          2/7
12/r            ADC r8, r/m8            2/6     2/7     3/9+EA
13/r            ADC r16, r/m16          2/6     2/7     3/9+EA
13/r            ADC r32, r/m32          2/6
14 ib           ADC AL, imm8            2       3       4
15 iw           ADC AX, imm16           2       3       4
15 id           ADC EAX, imm32          2
80/2 ib         ADC r/m8, imm8          2/7     3/7     4/17+EA
81/2 ib         ADC r/m16, imm16        2/7     3/7     4/17+EA
81/2 ib         ADC r/m32, imm32        2/7
83/2 ib         ADC r/m16, imm8         2/7     3/7     4/17+EA
83/2 ib         ADC r/m32, imm8         2/7

------------------------------------ Logic -----------------------------------

        destination = destination + source + CF

See Also ADD INC AAA DAA Flags


Copyright © 1985 to 2022 Beta Systems                            Last modified: Wednesday, January 05, 2022 .