1 -a) Escreva um programa LEX para reconhecer expressão aritmética válida. Os identificadores na expressão podem ser apenas números inteiros e operadores podem ser + e *. Conte os identificadores e operadores os apresentam e imprimem -os separadamente.
1 - b) Escreva o programa YACC para avaliar a expressão aritmética envolvendo operadores: +, -, *e /
2 - Desenvolva, implemente e execute um programa usando a ferramenta YACC para reconhecer todas as strings que terminam com B precedido por N A's usando a gramática e B (Nota: Valor de entrada n)
3 - Projete, desenvolva e implemente o programa YACC / C para construir a tabela de análise preditiva / ll (1) para as regras gramaticais: a ®aba, b ®bb | e. Use esta tabela para analisar a frase: ABBA $
4 - Projete, desenvolva e implemente o programa YACC/C para demonstrar a técnica de redução de mudança para as regras gramaticais: e ®e+t | T, t ®t*f | F, f ® (e) | ID e analise a frase: id + id * id.
5 -Projete, desenvolva e implemente um programa C/Java para gerar o código da máquina usando triplos para a instrução A = -B * (C +D) cujo código intermediário no formulário de três endereço:
T1 = -b
T2 = C + D
T3 = T1 + T2
A = t3
6 - a) Escreva um programa LEX para eliminar linhas de comentários em um programa C e copie o programa resultante em um arquivo separado.
6 - b) Escreva o programa YACC para reconhecer o identificador, operadores e palavras -chave válidas no arquivo de texto fornecido (programa C).
7 - Projete, desenvolva e implemente um programa C/C ++/Java para simular o funcionamento dos algoritmos de agendamento de tempo restante e redondo (RR). Experimente com diferentes tamanhos quânticos para o algoritmo RR.
8 - Projete, desenvolva e implemente um programa C/C ++/Java para implementar o algoritmo do banqueiro. Suponha que a entrada adequada necessária para demonstrar os resultados.
9 - Projete, desenvolva e implemente um programa C/C ++/Java para implementar algoritmos de substituição de página LRU e FIFO. Suponha que a entrada adequada necessária para demonstrar os resultados.
10 - a). Projete, desenvolva e implemente um programa C/C ++/Java para simular uma calculadora numérica.
10 - b). Projete, desenvolva e implemente um programa C/C ++/Java para simular a técnica de substituição de páginas.
11 - Programa para reconhecer se uma determinada frase é simples ou composta.
12 - Escreva um programa C ++ para imitar o comando Unix LN