Написание транслятора для языка С - Курсовая работа

бесплатно 0
4.5 62
Методика разработки и частичная реализация транслятора для языка "С" с использованием языка "С ", производящего разбиение на минимальные неделимые конструкции языка исходной цепочки символов основываясь на лексике языка. Анализ работы программы.

Скачать работу Скачать уникальную работу

Чтобы скачать работу, Вы должны пройти проверку:


Аннотация к работе
Программные системы, предназначенные для анализа и интерпретации текстов, называются трансляторами. Несмотря на то, что к настоящему времени разработаны тысячи различных языков и их трансляторов, процесс создания новых приложений в этой области не прекращается. В данной работе будет представлена частичная реализация транслятора для языка «С» с использованием языка «С ». Также он должен производить построение промежуточного дерева разбора для основных конструкций языка. Для демонстрации работы транслятора возьмём в качестве анализируемого следующий код на языке «С»: #include «dim.h» int a; char b=\0x56; AnsiString s=»\ «k\abcd\k\»

\a \056 \0x56»; bool c=true; bool Dim_1 (int v, int e, int d); void main() {/* Многострочный комментарий/* // Однострочный комментарий double i_dim_78=5465.56, d=321; double c_1=(013 0Xab 1.*12)*5; char sim=b; int i=5*(6 7) 8*sim -a; while(a) { switch (sim) { case 2: sim=\a; break; case 3: sim=

; break; default: a*=0x56; } if (sim==7||sim==8||sim==9) { if (sim==-7) {sim ; sim/=2;} else sim/=2; if (sim==8) {sim ; sim/=03;} else sim/=02; } else - sim; a ; } for (int j=0; j=a&&LowerCase (str[j 1])256) {PrintError («Диапазон Char», pos); break;} else result =(char) res_i; break; } if (LowerCase (str[i 1])!=x) { for (int j=i; isdigit (str[j 1]); j ) { if (str [j 1]>=0&&str [j 1]256) {PrintError («Диапазон Char в последовательности», pos); break;} else result =(char) res_i; break; } } default: PrintError («Ошибка в управляющей последовательности.», pos); } } else {result =str[i]; len ;} if (i 1==str.

Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность
своей работы


Новые загруженные работы

Дисциплины научных работ





Хотите, перезвоним вам?