Использование директивы GOTO и макроидентификаторов перехода позволяют вам управлять последовательностью расширения строк мак- рокоманды. Вы можете поместить цель перехода в любом месте тела макрокоманды. Она занимает всю строку макрокоманды и имеет следу- ющий синтаксис:
:идентификатор_перехода
При расширении макрокоманды все макроидентификаторы перехода отбрасываются.
Директива GOTO сообщает Турбо Ассемблеру, что нужно перейти на заданную точку исходного кода, а именно - на "идентифика- тор_перехода". Это позволяет вам поместить GOTO в блоке условного ассемблирования. Например:
IF foo GOTO tag1 ENDIF DISPLAY "foo имеет значение false!" :tag ; возобновление макрокоманды. ; работает одинаково, независимо от того, ; равно foo false или true
Примечание: Будьте аккуратны и не создавайте при ис- пользовании директивы GOTO бесконечных циклов. Бесконечные циклы могут привести к тому, что Турбо Ассемблер исчерпает доступную память или даже прекратит работу.
Подробнее о директивах условного ассемблирования рассказыва- ется в Главе 15.