Лабораторная работа №5
Лексический анализатор
Цель: Исследование лексического анализатора
Ход выполнения работы
Листинг файла main:
main()
{
printf("Lex \t\tToken\t\t\n");
printf("----------------------------\n");
do
{
ch = yylex();
if (ch == SEMISYM)
printf("%s\t\tSEMICOLON ", yytext);
else if (ch == COMMASYM)
printf("%s\t\tCOMMA ", yytext);
else if (ch == LPARSYM)
printf("%s\t\tL_PARENTHESIS ", yytext);
else if (ch == RPARSYM)
printf("%s\t\tR_PARENTHESIS ", yytext);
else if (ch == EQSYM)
printf("%s\t\tEQ_OP ", yytext);
else if (ch == PLUSSYM)
printf("%s\t\tPLUS_OP ", yytext);
else if (ch == MULTSYM)
printf("%s\t\tMULT_OP ", yytext);
else if (ch == ASGNSYM)
printf("%s\t\tASSIGNMENT_STMT ", yytext);
else if (ch == MINUSSYM)
printf("%s\t\tMINUS_OP ", yytext);
else if (ch == NUMBER)
printf("%s\t\tNUMBER ", yytext);
else if (ch == NAME)
printf("%s\t\tNAME\t\t", yytext);
else
printf("%c ",ch);
printf("\n");
}
while(ch != 0);
}
Вывод: в лабораторной работе исследована работа программа lex, а так же получены результаты этой программы в виде исходного кода на языке С, при компиляции которого получается лексический анализатор, преобразовывающий входной поток в последовательность токенов.
Литература
1. А.В. Гордеев А.Ю. Молчанов. Системное программное обеспечение. Санкт-Петербург. Питер. 2002 г. 740 с.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.