Да.
При первой генерации генерируется псевдокод, а не код ассемблера. А оптимизация происходит при отдельных нескольких проходах.
Псевдокод состоит из команд вида: мнемоника-число-строка. Хранится в массиве записей. Потом после оптимизации при окончательной генерации кода уже генерируется код ассемблера. Каждая команда псевдокода, как правило, состоит из нескольких ассемблерных команд.
На уровне псевдокода проще проводить оптимизацию, чем на окончательном ассемблере. И из него уже можно генерировать не только под Спектрум, но и под другие процы. Просто задать коды конкретного асма для каждой псевдокоманды.





Ответить с цитированием