The Gateway to Computer Science Excellence
0 votes
21 views

This grammar generates binary numbers with a "decimal" point:

  • $S\rightarrow L.L\mid L$
  • $L\rightarrow LB\mid B$
  • $B\rightarrow 0\mid 1$ 

Design an S-attributed SDD to compute $S.val$, the decimal-number value of an input string. For example, the translation of string $101.101$ should be the decimal number $5.625$.

in Compiler Design by Veteran (53.4k points)
edited by | 21 views
+1

@Lakshman Patel RJIT

pls remove the hint part from the question as it is not part of it. Also they've asked to design S-attributed SDD so there will be no use of inherited attributes

+1

@aditi19

Fixed it

1 Answer

0 votes
$S\rightarrow L.L$ $S.val=L_{1}.val+\frac{L_{2}.val}{2^{L_{2}.count}}$
$S\rightarrow L$ $S.val=L.val$
$L\rightarrow LB$

$L.val=2*L_{1}.val+B.val$

$L.count=L_{1}.count+B.count$

$L\rightarrow B$

$L.val=B.val$

$L.count=B.count$

$B\rightarrow 0$

$B.val=0$

$B.count=1$

$B\rightarrow 1$

$B.val=1$

$B.count=1$

 

by Active (5k points)

Related questions

Quick search syntax
tags tag:apple
author user:martin
title title:apple
content content:apple
exclude -tag:apple
force match +apple
views views:100
score score:10
answers answers:2
is accepted isaccepted:true
is closed isclosed:true
50,650 questions
56,194 answers
193,988 comments
94,866 users