
Сообщение от
Robus
Зацикливание будет только в случае адреса #8003. Поскольку длина кода будет меняться от адреса куда попадает "Х" !!!
То есть ассемблер не выявляет циклических зависимостей, просто впадая в бесконечный цикл проходов, правильно?
Тогда такой вопрос: а как он определяет необходимость дополнительного прохода? Я имею в виду формальный критерий.
Ведь кроме случаев, когда подходящих значений меток нет (как, например, с ORG #8003-(END-START) выше), есть случаи, когда подходящих значений меток несколько. Я не знаю как это записать на ASAM, но схематично это может выглядеть так:
Код:
ORG #8008-(END-START)
START DB "ABC"
IF $ = #8000
DB "XX"
ELSE
DB "Y"
ENDIF
DB "DEF"
END
Будет ли в этом случае какое-нибудь указание от ассемблера на неоднозначность?