Реализация алгоритма однопроходного макропроцессора, содержащего опережающие макроопределения
11

string[] GetTko()

program.cs

Возвращает в качестве результата массив с командами.

string[] GetTimN()

program.cs

Возвращает в качестве результата массив имен макроса.

int[] GetTimS()

program.cs

Возвращает в качестве результата массив номеров начала макроса в ТМО.

int[] GetTimE()

program.cs

Возвращает в качестве результата массив номеров конца макроса в ТМО.

string[] GetTimD()

program.cs

Возвращает в качестве результата массив данных макроса.

string[] GetOutText()

program.cs

Возвращает в качестве результата массив с обработанным текстом.

 

Переменные

Имя идентификатора

Тип

Назначение

start

bool

Обозначает была ли найдена директива START.

end

bool

Обозначает была ли найдена директива END.

macro

bool

Происходит ли макроопределение.

endm

bool

Обозначает была ли найдена директива ENDM.

pS

bool

Обозначает что ошибка произошла или нет.

timInt

int

Счетчик данных в ТМО.

strError

string[]

Массив для ошибок.

tko

string[,]

Двумерный массив содержит в себе имена, коды, размер команд.

timN

string[]

Массив имен макросов.

timD

string[]

Массив данных макросов.

outText

string[]

Массив результата работы программы.

macroName

string

Содержит имя макроса.

slovo

string

Содержит обрабатываемый элемент исходного текста.

timS

Int[]

Массив содержащий номера начала данных в ТМО.

timE

Int[]

Массив содержащий номера конца данных в ТМО.