Diseño de un compilador desde 0. yajuu
1.-Convenciones léxicas.
Un programa en YAJUU consta de uno o más archivos. Un archivo se traduce conceptualmente, en varias fases. La primera de estas es el pre procesamiento, que incluye archivos y sustituye macros. El pre procesamiento se controla por medio de directivas introducidas con líneas que tienen a @ como primer carácter distinto de espacio blanco.El resultado del pre procesamiento es una secuencia de componentes léxicos, es decir, un archivo pre procesado, que se llama unidad de traducción.
Componentes léxicos.
YAJUU posee 5 tipos de componentes léxicos: identificadores, palabras clave, literales, operadores y otros separadores. Se pasan por alto los espacios, tabuladores horizontales y verticales, cambios de línea, cambios de página ycomentarios. Se requiere cierto espacio blanco para separar identificadores, palabras clave y constantes que de otro modo quedarían adyacentes.
Comentarios.
Los caracteres …. Inician un comentario el cual termina con los caracteres ….
Identificadores
El identificador será una secuencia arbitrariamente larga de letras y dígitos. El primer carácter debe ser una letra. El subrayado cuenta comoletra. Las mayúsculas y minúsculas son diferentes. Todos los caracteres son significativos.
Palabras Clave: Son un conjunto de palabras que tienen un significado predeterminado para el compilador, y solo pueden ser utilizadas con dicho sentido.
-ENUMERAR
-EXTERNO
-FLOTANTE
-PARA
-AMIGO
-IRHA
-CORTO
-ESTRUCTURAR
-PROBAR
-VOLATIL
-LARGO
-NUEVO
-OPERADOR
-PRIVADO
-PROTEGIDO
-PUBLICO-FIRMADO
-SWICH
-UNION
-MIEMBROS
-ENUMERAR
-EXTERNO
-FLOTANTE
-PARA
-AMIGO
-IRHA
-CORTO
-ESTRUCTURAR
-PROBAR
-VOLATIL
-LARGO
-NUEVO
-OPERADOR
-PRIVADO
-PROTEGIDO
-PUBLICO
-FIRMADO
-SWICH
-UNION
-MIEMBROS
-AUTOMATICO
-FRENO
-CARÁCTER
-CLASE
-CONSTANTE
-REGISTRAR
-TALLAOF
-PLANTILLA
-SINFIRMAR
-FUII
-CONTINUE
-NORMAL
-ELIMINAR
-HACER
-DOBLE
-SIEMPRE
-REGRESO-ESTATICO
-ESTEES
-VIRTUAL
-AUTOMATICO
-FRENO
-CARÁCTER
-CLASE
-CONSTANTE
-REGISTRAR
-TALLAOF
-PLANTILLA
-SINFIRMAR
-FUII
-CONTINUE
-NORMAL
-ELIMINAR
-HACER
-DOBLE
-SIEMPRE
-REGRESO
-ESTATICO
-ESTEES
-VIRTUAL
Letra Roja: Constantes
Símbolos especiales y palabras reservadas.
z
z
a
a
Z
Z
A
A
Letra
. . . . . .
Letra:a-b-c-d-e-f-g-h-i-j-k-l-m-n-ñ-o-p-q-r-s-t-u-v-w-x-y-z
9
9
8
8
6
6
7
7
5
5
4
4
3
3
2
2
1
1
0
0
Dígito
dígito
dígito
Digito: 1-2-3-4-5-6-7-8-9-0
f
f
a
a
F
F
A
A
dígito hexadecimal
Digito hex
Digito hex
Secuencia de dígitos hexadecimales
dígito
dígito
Secuencia de dígitos
secuencia dígitos
secuencia dígitosEntero sin signo
secuencia dígitos hex
secuencia dígitos hex
$
$
+
+
-
-
Signo
dígito
dígito
.
.
dígito
dígito
Real sin signo
factor de escala
factor de escala
dígitos
dígitos
E
E
signo sign
signo sign
e
e
Factor de escala
entero sin signo
entero sin signo
real sin signo
real sinsigno
Numero sin signo
Operadores:
Constantes.
Constante-entera
Constante-de-caracteres
Constante-flotante
Constante-de-cadena
Diagrama de la declaración de Constantes:
Sección de declaración de constantes
Declaración de constantes
Declaración de constantes
CONSTANTE
CONSTANTE
Declaración de constantes con tipo
Declaración deconstantes con tipo
Constantes Enteras.
El tipo de una constante entera depende de su forma valor y sufijo. Si es decimal y carece de sufijo tiene el primero de los siguientes tipos en que se puede representar el valor:
Entero, largo, largo entero, nolargo entero
Sufijo: nle
Entero, corto, corto entero, nocorto entero
Sufijo: nce
Constantes de caracteres....
Regístrate para leer el documento completo.