Retro video games delivered to your door every month!
Click above to get retro games delivered to your door ever month!
X-Hacker.org- Assembly Language - <b>sbb subtract with borrow flags: o d i t s z a p c</b> http://www.X-Hacker.org [<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
SBB              Subtract with Borrow                Flags: O D I T S Z A P C
                                                            *       * * * * *
SBB destination,source

          Logic:    destination . destination - source - CF

    SBB subtracts the source from the destination, subtracts 1 from that
    result if the Carry Flag is set, and stores the result in destination.
    The operands may be bytes or words, and both may be signed or unsigned
    binary numbers.

  --------------------------------------------------------------------------
   Operands                  Clocks   Transfers  Bytes   Example
                           byte(word)
   register, register          3          -        2     SBB DX,AX
   register, memory        9(13) + EA     1       2-4    SBB DX,FEE
   memory, register       16(24) + EA     2       2-4    SBB SIGH,SI
   accumulator, immediate      4          -       2-3    SBB AX,8
   register, immediate         4          -       3-4    SBB BH,4
   memory, immediate      17(25) + EA     2       3-6    SBB TOTAL,10
  --------------------------------------------------------------------------

       Notes:         SBB is useful for subtracting numbers that are
                      larger than 16 bits, since it subtracts a borrow (in
                      the carry flag) from a previous operation.

                      You may subtract a byte-length immediate value from
                      a destination which is a word; in this case, the
                      byte is sign-extended to 16 bits before the
                      subtraction.

See Also: SUB DEC NEG AAS DAS EA Flags

Online resources provided by: http://www.X-Hacker.org --- NG 2 HTML conversion by Dave Pearson