Теория языков программирования и методы трансляции. Копейкин М.В - 14 стр.

UptoLike

"input",INPUT,
"if",IF,
"then",THEN,
"goto",GOTO,
"for",FOR,
"next",NEXT,
"to",TO,
"gosub",GOSUB,
"return",RETURN,
"end",END,
"",END,
};
Признак конца файла (нулевая строка) помещена в конец таблицы.
Внутренний формат лексемы функция заносит в таблицу переменных
look_up(s)
/* Поиск внутреннего формата для текущей лексемы */
look_up(s)
char *s;
{
register int i;
char *p;
/* преобразование к нижнему регистру */
p=s;
while(*p)
{
*p=tolower(*p); p++;
}
for(i=0; *table[i].command; i++)
if(!strcmp(table[i].command,s)) return table[i].tok;
return 0; /* неопознанная команда */
}
Исходный текст на языке SMALL BASIC готовится
в любом
текстовом редакторе и вводится функцией load_program(p, fname), где
fname содержит внешнее имя файла.
load_program(p, fname)
char *p;
char *fname;
{ FILE *fp;
int i=0;