Руководство по ассемблеру



Использование косвенной адресации для доступа к полю Year: invoke wsprintf. ADDR buf. ADDR ifmt. d[8]

открывает нам внутреннее устройство структуры, но в реальных программах удоб­ней пользоваться «точкой»: d.Year. Глядя на листинг, начинаешь понимать, по­чему дню, месяцу и году отведено по двойному слову, в то время как для числа и месяца достаточно одного байта, а год легко уместится в двух

Команды АЛУ и адресация

Окончания арифметических операций воздействуют на расположение 7 указателей. Громадная частица сих флагов будет рассмотрена после произведения действительных процедур с помощью команд относительного скачка, а также с поддержкой команды INTO (прерывание по восполнению). Действие арифметических команд на флаги описано внизу.

DF (флаг переноса): Если в следствии сочинения осуществляется сдвиг из старшего бита, флаг трансдукции возводится; в другом случае знак переноса опустошается. При вычете флаг трансдукции воздевается, в случае если проделывается заимствование в старший бит достигнутого результата; при отсутствии заема символ обнуляется. Необходимо учитывать, что при появлении меточного свитча ВА == OF (знак пополнения). Символ свитча АР имеет возможность применяться для воспроизведения беззнакового восполнения.

АМ (знак добавочного трансдукта): В случае если в достигнутом результате суммирования воплощается свитч из меньшого полубита в верхний, символ добавочного свитча подымается; в другом случае флаг обновляется. При вычете знак прибавочного свитча взводится, в случае если осуществляется заимствование из верхнего полубита в меньший; при недостатке заема знак сбрасывается.


назад далее