Deje que el atributo ‘val’ dé el valor de un número binario generado por S en la siguiente gramática:
S → LL | L
L→ LB | si
si → 0 | 1
Por ejemplo, una entrada 101.101 da S.val = 5.625
Construya un esquema de traducción dirigido por la sintaxis utilizando solo atributos sintetizados para determinar S.val.
Respuesta:
Explicación: La gramática dada es: –
S -> L.L | L L-> LB | B B -> 0 | 1
Ahora, el esquema de traducción dirigido por la sintaxis que usa solo atributos sintetizados es:
S -> L.L { S.val = L.Val + L.val / L.nb } S -> L { S.val = L.val} L -> LB { L.val = 2 * L.Val + B.val , L.nb = L.nb + B.nb } L -> B { L.val = B.val , L.nb = B.nb} B -> 0 { B.val = 0 , B.nb = 1 } B -> 1 { B.val = 1 , B.nb = 1 }
donde, val = valor decimal, nb = número de bits
Prueba de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA