mini pascal
IS744 Compiladores - Primer Semestre 2014
Última actualización: Febrero 6, 2013
Mini Pascal es el lenguaje que debeser compilado en IS744. El nombre en realidad no significa gran cosa,
excepto que, bueno, tiene la palabra PASCAL en ella y va derecho al corazón detodos los lenguajes de
programación.
El lenguaje es en gran parte derivado de Pascal y lenguajes similares. Sin embargo, se ha simplificado
enormementepara hacer su vida un poco más fácil. Por ejemplo, no hay punteros, registros, arreglos multidimensionales u objetos. Del mismo modo, el lenguaje es unpoco escaso a la hora de características avanzadas.
Sin embargo, usted encontrará que es lo suficientemente difícil para un proyecto de 14 semanas.
Sutarea es escribir un compilador para el lenguaje Mini Pascal. Su compilador leerá programas fuentes de Mini
Pascal ".pas" y producirá código ensambladorpara x86, MIPS, LLVM o SPARC que pueda ser compilado y
ejecutado en una estaciones de trabajo. Su primer objetivo es producir un compilador quefuncione. Sin
embargo, los compiladores que generen código objeto optimizado no se recompensarán.
Un programa de ejemplo Mini Pascal
Este es un programa muysimple en Mini Pascal:
fun quicksort(l:int, r:int, a:int[8192])
i:int;
j:int;
x:int;
w:int;
tmp:int;
done:int;
begin
i := l;
j := r;
x :=a[(l+r)/2];
done := 0;
while done == 0 do
begin
while a[i] < x do
i := i + 1;
while x < a[j] do
j := j - 1;
if i j then
done := 1
end;
if l
Regístrate para leer el documento completo.