1 -a) Schreiben Sie ein LEX -Programm, um den gültigen arithmetischen Ausdruck zu erkennen. Kennungen im Ausdruck könnten nur Ganzzahlen sein und Operatoren könnten + und * sein. Zählen Sie die vorhandenen Kennungen und Operatoren und drucken Sie sie separat aus.
1 - b) Schreiben Sie YACC -Programm, um den arithmetischen Ausdruck zu bewerten, an dem Operatoren beteiligt sind: +, -, *und /
2 - Entwickeln, implementieren und ausführen ein Programm mit YACC -Tool, um alle Zeichenfolgen zu erkennen, die mit B enden, der die N A -Grammatik A B endet (Hinweis: Eingabe n Wert).
3 - Entwerfen, Entwickeln und Implementieren von YACC / C -Programm zur Konstruktion von Predictive / LL (1) Parsing -Tabelle für die Grammatikregeln: A ®aba, B ®bb | e. Verwenden Sie diese Tabelle, um den Satz zu analysieren: Abba $
4 - Entwerfen, Entwickeln und Implementieren von YACC/C -Programm, um die Verschiebung zu demonstrieren, um die Parsing -Technik für die Grammatikregeln zu reduzieren: E ®e+T | T, t ®t*f | F, f ® (e) | ID und analysieren Sie den Satz: id + id * id.
5 -Entwerfen, entwickeln und implementieren Sie ein C/Java -Programm, um den Maschinencode mit Dreifachzahlen für die Anweisung a = -b * (c +d) zu generieren, deren Zwischencode in Form von Dreiadresse:
T1 = -B
T2 = c + d
T3 = T1 + T2
A = t3
6 - a) Schreiben Sie ein LEX -Programm, um Kommentarlinien in einem C -Programm zu beseitigen und das resultierende Programm in eine separate Datei zu kopieren.
6 - b) Schreiben Sie das YACC -Programm, um gültige Kennung, Bediener und Keywords in der Datei des angegebenen Textes (C -Programms) zu erkennen.
7 - Entwerfen, entwickeln und implementieren Sie ein C/C ++/Java -Programm, um die Arbeiten der kürzesten Zeit- und Round -Robin (RR) -Planierungsalgorithmen zu simulieren. Experimentieren Sie mit verschiedenen Quantengrößen für den RR -Algorithmus.
8 - Entwerfen, entwickeln und implementieren Sie ein C/C ++/Java -Programm, um den Banker -Algorithmus zu implementieren. Nehmen Sie an, dass geeignete Eingaben erforderlich sind, um die Ergebnisse zu demonstrieren.
9 - Entwerfen, entwickeln und implementieren Sie ein C/C ++/Java -Programm, um Seitenersatzalgorithmen LRU und FIFO zu implementieren. Nehmen Sie an, dass geeignete Eingaben erforderlich sind, um die Ergebnisse zu demonstrieren.
10 - a). Entwerfen, entwickeln und implementieren Sie ein C/C ++/Java -Programm, um einen numerischen Rechner zu simulieren.
10 - b). Entwerfen, entwickeln und implementieren Sie ein C/C ++/Java -Programm, um die Seitenersatztechnik zu simulieren.
11 - Programm Um zu erkennen, ob ein bestimmter Satz einfach oder zusammengesetzt ist.
12 - Schreiben Sie ein C ++ - Programm, um den UNIX LN -Befehl zu emulieren