UniTestReal

Tema 3 · Compiladores

Test de Análisis sintáctico

19 preguntas tipo test de exámenes reales de Compiladores.

Qué entra en este tema

Según la guía docente oficial.

Preguntas falladas

Aquí irán las que falles, dejes en blanco o marques para revisar, para repasarlas después.

Configura tu test

19 preguntas de Análisis sintáctico

Modo

Ves si aciertas nada más responder.

Número de preguntas

Ejemplos de preguntas de Análisis sintáctico

8 de 19 preguntas. La respuesta correcta se ve al practicar.

  1. 1.

    Dada la siguiente gramática G y su correspondiente tabla SLR:

    textS → V ⇐ V ; | P ;
    P → id
    V → id
    Estado Acción Ir-a
    ; ⇐ id $ P S V
    0 d4 3 1 2
    1 acepta
    2 d5
    3 d6
    4 r3/r4 r4
    5 d8 7
    6 r2
    7 d9
    8 r4 r4
    9 r1
    sabiendo que la colección LALR incluye el conjunto I4 = { [ P → id · , ; ], [ V → id·, ⇐ ] }:
    • a)El conflicto en la tabla SLR se eliminaría dejando T [4, ; ] = r3.
    • b)El conflicto en la tabla SLR se eliminaría dejando T [4, ; ] = r4.
    • c)Ninguna de las acciones sería correcta para un análisis SLR.
  2. 2.

    Dada la siguiente gramática G y su correspondiente tabla LALR:

    text(1) S → s ( A )
    (2) A → A , B
    (3) | B
    (4) B → b
    Estado Acción Ir-a
    , ( ) b s A B S
    0 d2 1
    1 acepta
    2 d3
    3 d6 4 5
    4 d8 d7
    5 r3 r3
    6 r4 r4
    7 r1
    8 d6 9
    9 r2 r2
    • a)G es LL, LALR y LR-Canónica.
    • b)G es SLR, LALR, LR-Canónica.
    • c)G es LALR y LR-Canónica, pero no SLR.
  3. 3.

    La gramática del lenguaje miniC de las prácticas:

    • a)Es LALR, pues no podría procesarse en otro caso con Bison.
    • b)No es LALR, ni siquiera LR-Canónica.
    • c)No es SLR pues presenta conflictos en expresiones aritméticas y sentencias if/if-else. Los comandos %left de Bison, en cambio, hacen que sea LALR.
  4. 4.
    textDada la siguiente gramática G con VT = {(, )} y VN = {S}, siendo P :
    S → ( S ) S | λ
    • a)G es ambigua.
    • b)G es LL(1).
    • c)G es recursiva por la izquierda.
  5. 5.

    Supongamos que, durante el análisis descendente con la tabla LL(1) de una gramática G, la pila y la entrada del analizador evoluciona de la siguiente forma usando algunas de las reglas de G: Pila Entrada $S abb$ $CBa abb$ $CB bb$ $Cb bb$ $C b$ $CB b$ ¿Cuál es la forma sentencial izquierda que corresponde a la última configuración del análisis?

    • a)CBb
    • b)bBC
    • c)abBC
  6. 6.

    Dada la gramática

    textS → S a S b | λ

    y la forma sentencial derecha SaSabb, ¿cual de los siguientes puede ser un prefijo viable?

    • a)SaSab
    • b)SaS
    • c)SaSabb
  7. 7.

    Consideramos la gramática G siguiente:

    textS → ( L ) | id
    L → S L′
    L′ →, S L′ | λ
    • a)textG es LL(1), predict(L′ → λ) = {), $}, y la tabla de análisis es NO TERMINAL TERM ( ) , id $ S S → ( L ) S → id L L → S L′ L → S L′ L′ L′ → λ L′ →, S L′ L′ → λ
    • b)textG es LL(1), predict(L′ → λ) = {)}, y la tabla de análisis es NO TERMINAL TERM ( ) , id $ S S → ( L ) S → id L L → S L′ L → S L′ L′ L′ → λ L′ →, S L′
    • c)G no es LL(1) puesto que predict(L′ →, S L′) ∩ predict(L′ → λ) = {, }.
  8. 8.

    Dada la gramática

    textE → − E | E + E | a

    el estado 5 de la tabla SLR presenta el siguiente conflicto:

    textEstado Acción Ir-a
    + - a $ E
    5 r1/d4 r1

    Deduce los ítems que intervienen en el conflicto:

    • a)[E → −E·] y [E → E · +E]
    • b)[E → −E·] y [E → E + E·]
    • c)[E → · − E] y [E → E + E·]

Otros temas de Compiladores