Assembler для начинающих


Флаг переноса


    Флаг переноса (CF) служит  для поддержания процессором многоразряд-
    ной арифметики. Обычно при выполнении арифметических операций вроде
    сложения  или  вычитания  8088  может   работать  с  не  более  чем
    16-битовыми   числами.  Однако   в    некоторых   случаях  приходится
    манипулировать с числами превышающими 2**16. Например, для сложения
    двух  32-битовых чисел  программе придется  сложить сначала младшие
    части  чисел, а  затем -   старшие. На  Фиг 3.11  показано сложение
    32-битовых чисел 22223333H и 44445555H.
      В этом примере складываются  сначала младшие 16-битовые згначе-
    ния с  получением результата 8888H. Затем  складываются старшие 16-
 
          второе сложение         первое сложение
          ---------------------------------------
             2222              3333
             4444              5555
             ----              ----
             6666              8888     Фиг. 3.11
          --------------------------------------- 32-битовое сложение
 
    битовые  значения с  результатом 6666H.  32-битовый результат равен
    66668888H.    Для  получения    32-битового  результата  требуется  два
    16-битовых    сложения.  Для    48-битового  числа  потребуется уже три
    16-битовых сложения и т.д. Для выполнения сложения программа должна
    расчленять каждое большое число на 16-бтовые куски.
      Однако, приведенный пример  достаточно прост. Результат первого
    16-битового сложения не влиял на второе. В общем же случае сложения
    возможен  перенос  из  одной  позиции  в  другую.  Когда  процессор
    выполняет слоожение двух 16-битовых  чисел, он автоматически выпол-
    няет переносы. Когда же  программа складывает два 32-битовых числа,
    как в нашем  примере, то ей приходится запоминать  перенос в первом
    сложении  и   использовать      его  при   сложении  вторых  16-битовых
    значений.  На  Фиг.  3.12 показано  сложение  чисел  22224444H  и
    3333EEEEH. В этом примере перенос от первого сложения отражается на



- Начало -  - Назад -  - Вперед -



Книжный магазин