Ссылки на данные и функции
В операторах asm вы можете использовать любой идентификатор
Си, включая динамические локальные переменные, регистровые переменные и параметры функции. Borland С++ автоматически преобразует
эти символы в соответствующие операнды ассемблера и добавляет к
именам идентификаторов символы подчеркивания.
В общем случае вы можете использовать идентификатор Си в любой позиции, где допускается операнд адреса. Там, где допустим
регистровый операнд, вы можете использовать регистровую переменную. Если ассемблер обнаруживает идентификатор при анализе операторов инструкции встроенного ассемблера, то он ищет идентификатор
в таблице идентификаторов Си. Имена регистров 80х86 из поиска
исключаются. Имена регистров можно задавать символами в верхнем
регистре.
При программировании вам не нужно заботиться о точных смещениях локальных переменных - использование имени переменной предусматривает корректные смещения. Однако, может оказаться необходимым включить в инструкции ассемблера WORD PTR, BYTE PTR или
другие переопределения размера. Для косвенных инструкций вызова
типа FAR или LES необходимо переопределение DWORD PTR.