Question: For this assignment, you will use FLex or Lex for the lexical part of the task and Yacc or Bison for writing a parser for

For this assignment, you will use FLex or Lex for the lexical part of the task and Yacc or Bison for writing a
parser for a simple language described as:
Consider the CFG that defines a simple expression.
E -> int + E | int * E | (E) | int
We want to read expressions and generate codes for this language using the MIPS processor's assembly
language, assuming a stack evaluation model. For example, the generated code for the expression 5+7 should
be
li $a0 5
sw $a0 0($sp)
addiu $sp $sp -4
li $a0 7
lw $t1 4($sp)
add $a0 $t1 $a0
addiu $sp $sp -4
Your work results in a C program that can take expressions written in the above language and produce the
relevant code. For example, for input 5+7, it generates the above MIPS code.
You will use FLex to capture the tokens of the language. And Yacc or Bison to parse and generate code for
valid expressions.
PS: you need to mention the commands needed to generate all needed files up to the file a.out

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!