Справочник по языку Ассемблера IBM PC

       

Для того чтобы произвести вычитание,


05 = 00000000 00000101  -10 = 00000000 00001010   Для того чтобы произвести вычитание, произведем воображаемый заем из старшего разряда:  100000000 00000101  -  00000000 00001010  =  11111111 11111011
Тем самым по сути выполняется действие
(65 536 + 5) — 10 = 65 531,
0 здесь как бы эквивалентен числу 65 536. Результат, конечно, неверен, но микропроцессор считает, что все нормально, хотя факт заема единицы он фиксирует установкой флага переноса cf. Но посмотрите еще раз внимательно на результат операции вычитания. Это же –5 в дополнительном коде! Проведем эксперимент: представим разность в виде суммы 5 + (–10).

Содержание раздела