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



Поскольку венгерская нотация часто используется при разработке программ для Windows, приведем основные префиксы переменных, которые нам придется час­то встречать в следующей главе:

с — символ; by - BYTE;

n — короткое целое (WORD); i — целое;

х, у — координаты на экране (естественно, целые); b — переменная с двумя значениями TRUE и FALSE;

f — флаг — то же, что и bool;

w — слово WORD — беззнаковое короткое целое;

1 — длинное целое (DWORD);

dw — беззнаковое длинное целое (DWORD);

s — последовательность символов;

sz — строка символов, завершаемая нулем;

h — handle;

р — адрес.

Эти основные символы можно сочетать друг с другом. Например, lpsz означает «длинный указатель на начало строки символов, завершаемой нулем».

Команды АЛУ и присвоение флагов

Окончания арифметических процедур оказывают воздействие на принадлежность 8 флагов. Большая частица сих указателей может быть рассчитана после выполнения действительных операций с поддержкой функций условного перевода, а также с поддержкой функции CIN (перебой по заполнению). Воздействие циферных процедур на знаки обрисовано ниже.

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

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


назад далее