Already have an account? Get multiple benefits of using own account!
Login in your account..!
Remember me
Don't have an account? Create your account in less than a minutes,
Forgot password? how can I recover my password now!
Enter right registered email to receive password!
Automata and Compiler
(1) [25 marks] Let N be the last two digits of your student number. Design a finite automaton that accepts the language of strings that end with the last four bits of the binary expansion of N. (1.1) Make a regular expression ? of this language. For example the set of strings that end with 101 is expressed by a regular expression (0+1)*101. (1.2) Make an NFA that accepts this expression ?. You should remove any ?-moves that can be done trivially by inspection. (1.3) Make a subset automaton that accepts the language. (1.4) Perform state minimization on the above automaton.
(2) [25 marks] A CFG is given by S ? aSbS, S ? bSaS, S ? c
(2.1) Draw a syntax chart for this grammar. [5]
(2.2) Write a Python program for the recursive descent parser Trace the parser using two strings of at least 10 symbols, one for an accepted case and one for an unaccepted case. Do the trace using the style in the notes. [20]
(3) [25 marks] A sample program for computing the greatest common divisor by recursive call and its object program are given below. Some sample comments are given.
const a=75, b=55;
var x, y;
procedure gcd;
var w;
begin
if y>0 then begin
w:=y;
y:=x ? (x/y)*y;
x:=w;
call gcd;
end;
x:=a; y:=b;
write(x);
end.
0 jmp 0 21 Jump to 21, start of main
1 jmp 0 2
2 inc 0 4
3 lod 1 4
4 lit 0 0 Load literal 0
5 opr 0 12 Test if y>0
6 jpc 0 20 Jump to 20 if false
7 lod 1 4 Load y
8 sto 0 3 Store in w
9 lod 1 3
10 lod 1 3
11 lod 1 4
12 opr 0 5
13 lod 1 4
14 opr 0 4
15 opr 0 3
16 sto 1 4
17 lod 0 3
18 sto 1 3
19 cal 1 2
20 opr 0 0
21 inc 0 5
22 lit 0 75
23 sto 0 3
24 lit 0 55
25 sto 0 4
26 cal 0 2
27 lod 0 3
28 wrt 0 0 Write stack top
29 opr 0 0
Differentiate between DFA and NFA. Convert the following Regular Expression into DFA. (0+1)*(01*+10*)*(0+1)*. Also write a regular grammar for this DFA.
how to understand DFA ?
Theorem (Myhill-Nerode) A language L ⊆ Σ is recognizable iff ≡L partitions Σ* into ?nitely many Nerode equivalence classes. Proof: For the "only if" direction (that every recogn
Ask queyystion #Minimum 100 words accepted#
A finite, nonempty ordered set will be called an alphabet if its elements are symbols, or characters. A finite sequence of symbols from a given alphabet will be called a string ove
Strictly 2-local automata are based on lookup tables that are sets of 2-factors, the pairs of adjacent symbols which are permitted to occur in a word. To generalize, we extend the
The project 2 involves completing and modifying the C++ program that evaluates statements of an expression language contained in the Expression Interpreter that interprets fully pa
Another way of interpreting a strictly local automaton is as a generator: a mechanism for building strings which is restricted to building all and only the automaton as an inexh
In general non-determinism, by introducing a degree of parallelism, may increase the accepting power of a model of computation. But if we subject NFAs to the same sort of analysis
Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!
whatsapp: +91-977-207-8620
Phone: +91-977-207-8620
Email: [email protected]
All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd