Árboles de derivación
Un árbol de derivación (o árbol sintáctico) es una representación gráfica de cómo una cadena de entrada puede ser derivada a partir del símbolo inicial de una gramática libre de contexto. Cada nodo interno del árbol corresponde a un no terminal en una regla de producción, y los nodos hoja corresponden a los símbolos terminales (tokens) de la cadena de entrada.
Los árboles de derivación son una forma visual de entender la estructura sintáctica de un programa y cómo el analizador sintáctico lo ha interpretado.
Declaración de variable
Section titled “Declaración de variable”Declaración de constante (numero)
Section titled “Declaración de constante (numero)”Declaración de constante (texto)
Section titled “Declaración de constante (texto)”Declaración de constante (booleano)
Section titled “Declaración de constante (booleano)”Reasignación de variable
Section titled “Reasignación de variable” <Programa> | ------------------------------------------ | | | <_nl> <Sentencias> <_nl> | <Sentencia> | <Asignacion> | ------------------------------------------------------------------------- | | | | | | | <Designable> <_> <_OP_ASIGNACION> <_> <Expresion> <_> <_PUNTO_Y_COMA> | | | | | | |<_IDENTIFICADOR_VAR> ( ) = ( ) <ExpresionLogicaOr> ( ) ; | | $variable <ExpresionLogicaAnd> | <ExpresionIgualdad> | <ExpresionRelacional> | <ExpresionAditiva> | <ExpresionMultiplicativa> | <ExpresionPotencia> | <ExpresionUnaria> | <ExpresionPostfija>e | <LiteralPrimario> | <_numero> | 123
Arreglo de datos (numero)
Section titled “Arreglo de datos (numero)”Arreglo de datos (texto)
Section titled “Arreglo de datos (texto)”Arreglo de datos (booleano)
Section titled “Arreglo de datos (booleano)”Concatenación
Section titled “Concatenación”Condicional si
Section titled “Condicional si” <Programa> | <Sentencias> | --------------------- | | <CondicionalSi> <OtrasSentencias> | --------------------------------------------------- | | | | | "si" "(" <Expresión> ")" "{" <Bloque> "}" | ----------------------------------- | | <ExpresiónLogicaOr> <OperadorLogico>? | | <ExpresiónLogicaAnd> | | | <ExpresiónIgualdad> <ExpresiónRelacional> | | <ExpresiónRelacional> --------------------- | | | <ExpresiónAditiva> <ExpresiónAditiva> <OperadorRelacional> | <ExpresiónMultiplicativa> | <ExpresiónPotencia> | <ExpresiónUnaria> | <ExpresiónPostfija> | --------------------- | | <Variable> <Literal> | | "$<ID>" "<numero>|<texto>|<booleano>"
<Bloque> | <Sentencia>* | --------------------- | | | <Imprimir> <Asignación> <CondicionalSi>
Condicional si-siNo
si-siNo
Section titled “Condicional si-siNo si-siNo”Condicional segun
Section titled “Condicional segun”funcion
Section titled “funcion”Operacion aritmetica compleja
Section titled “Operacion aritmetica compleja” <Expresion> | <ExpresionAsignacion> / | \ <Variable> <OP_ASIGNACION> <ExpresionLogicaOR> | <ExpresionLogicaAND> | <ExpresionIgualdad> | <ExpresionRelacional> | <ExpresionAditiva> / | \ <ExpresionMultiplicativa> <OP_SUMA> <ExpresionMultiplicativa> | | <ExpresionPotencia> <ExpresionPotencia> | | <ExpresionUnaria> <ExpresionUnaria> | | <ExpresionPrimaria> <ExpresionPrimaria> | | <Literal> <Literal>