31922409

Category: Dissertation examples,
Words: 1111 | Published: 01.10.20 | Views: 670 | Download now

ALLAMA IQBAL OPEN UNIVERSITY, ISLAMABAD (Department of Computer Science) WARNING 1 ) PLAGIARISM OR HIRING OF GHOST WRITER(S) FOR RESOLVING THE ASSIGNMENT(S) WILL DEBAR THE STUDENT VIA AWARD OF DEGREE/CERTIFICATE, IF PERHAPS FOUND AT VIRTUALLY ANY STAGE. installment payments on your

SUBMITTING ASSIGNMENT(S) BORROWED OR STOLEN VIA OTHER(S) SINCE ONE’S OWN WILL BE PUNISHED AS IDENTIFIED IN “AIOU PLAGIARISM POLICY”. Course: Compiler Construction (3468)Semester: Autumn, 2012 Level: BS (CS)Total Signifies: 100 ASSIGNMENT No . you Note: Your concerns carry the same marks. Queen. 1(a)Define Compiler, using a diagram describes the three phases of research of origin program. (b)Explain all the levels of Compiler. c)Consider this grammar. H? &gt, XaYb X? &gt, bXc | b Sumado a? &gt, dYa | d Find the first sets for each non-terminal of the presented grammar. Q. 2(a)Explain the error recognition and credit reporting mechanisms. (b)Write the more advanced representation code of the subsequent position: = initial & rate * 60 Queen. 3(a)Convert the subsequent NFA in equivalent DFA using part construction Protocol. [pic] Be aware: Show every necessary methods that are linked to subset construction algorithm. (b) Convert this regular manifestation into NFA using Thompson’s construction. a ((b|b*c)d)* |d*a Q. 4(a)Given the following sentence structure. G >At the

E >T + E | T T >F * T | F F >a i) Is this grammar ambiguous? Explain! ii) Draw all parse trees for sentence “a+a*a+a”. (b) Consider the following grammar. S>A A>A+A | B++ B >y Draw parse tree for the input “y+++y++” Q. 5(a)Explain the position of the Lexical Analyzer and Parser in greater detail. (b)Differentiate between Top-down parsing and Bottom-up parsing. PROJECT No . a couple of Total Signifies: 100 Notice: All questions hold equal signifies. Q. 1(a)Rewrite the following SDT: A A a M | A B w | zero B -&gt, B c A | B A g | 1 in order that the underlying sentence structure becomes non-left-recursive. Here, a, 6, c, and d are activities, and zero and one particular are terminals. b)This grammar generates binary numbers with a “decimal” level: S-* M. L | L L-+LBB B -&gt, 0 | 1 Design an L-attributed SDD to compute T. val, the decimal-number value of an input string. For instance , the translation of string 101. info should be the quebrado number five. 625. Queen. 2(a)Translate the next expressions making use of the goto-avoiding translation scheme. i)if (a==b kk c==d |I e==f) back button == 1, ii)if (a==b II c==d || e==f) x == 1, iii)if (a==b , , c==d kk e==f) x == 1, (b)Construct the DAG and recognize the value quantities for the sub expression of the pursuing expressions, if, perhaps + affiliates from the left. ) a + b+ (a & b). ii) a & b & a & b. iii) a & a + ((fl & a + a & (a + a & a + a )). Q. 3(a)Explain the following i)Back Patching ii)Procedure Calls (b)Generate code for the following three-address statements, supposing all parameters are kept in memory spots. i) by = one particular ii) by = a iii) times = a + 1 iv) x = a + w v) Both the statements times = n * c y sama dengan a + x Queen. 4(a)The encoding language C does not have a Boolean type. Display how a C compiler may translate if-statement into three-address code. (b)Construct the DAG for the standard block deb = b * c e sama dengan a & b n = b * c a = e , d Queen. (a)Generate code for the subsequent three-address transactions assuming a and b are arrays whose elements are 4-byte values. i)The four-statement sequence x = a [ i] y = m [ j] a [ my spouse and i ] = y b [ j ] = times ii) The three-statement sequence x sama dengan a [ i] sumado a = m [ i] z sama dengan x 2. y iii) The three-statement sequence by = a [ i] y = b[x] a [ i ] = y (b)Suppose a basic stop is formed in the C job statements back button = a + w + c + d + electronic + farreneheit, y = a + c + e, i) Give the three-address statements (only one addition per statement) for this obstruct. ii) Utilize the associative and commutative laws and regulations to modify the block to work with the fewest possible quantity of 468 Compiler ConstructionCredit Hours: 3(3, 0) Recommended Publication: Compliers, Guidelines, Techniques, and Tools by Alfred Sixth is v. Aho, Ravi Sethi, Jerrey D. Ullman Course Sets out: Unit Number 1 Summary of Compiling Compliers, analysis in the source software, the phases of a complier, cousins with the compiler, the grouping of phases, complier-construction tools Unit No . 2 A Simple One-pass Compiler Summary, syntax explanation, syntax-directed translation, parsing, a translator intended for simple movement, lexical research, incorporating a symbol table, subjective stack equipment, putting the techniques together Unit Number Lexical and Syntax Evaluation Lexical evaluation (the position of the lexical analyzer, input buffering, requirements of tokens, recognition of tokens, a language intended for specifying lexical analyzers, finite automata, from a regular phrase to an NFA, design of a lexical analyzer generator, optimization of DFA-based pattern matchers), syntax evaluation (the function of the parser, context-free grammars, writing a grammar, top-down parsing, bottom-up parsing, operator-precedence parsing, LR parsers, using ambiguous grammars, parser generators) Unit Number 4 Syntax-Directed Translation

Syntax-directed definitions, building of format trees, bottom-up evaluation of s-attributed explanations, l-attributed definitions, top-down translation, bottom-up evaluation of handed down attributes, recursive evaluators, space for credit values in compile period, assigning space at complier-construction time, examination of syntax-directed definitions Product No . your five Type Looking at Type devices, Specification of a simple type checker, Equivalence of type expressions, Type conversions, Overloading of functions and operators, Polymorphic capabilities, an algorithm for unification Product No . More advanced Code Era Intermediate Dialects, Declarations, Task statements, Boolean expressions, Circumstance statements, Back Patching, Method calls Unit No . 7 Code Years Issues in the design of a code electrical generator, The target equipment, Run-time storage space management, Fundamental blocks and flow charts, Next-use information, A simple code generator, Enroll allocation and assignment, The dag rendering of standard blocks, Peephole optimization, Creating code coming from dags, Powerful programming code-generation algorithm, Code-generator generators Unit No . Code Optimization Launch, The principal causes of optimization, Marketing of standard blocks, Spiral in stream graphs, Introduction to global data-flow analysis, Iterative solution of data-flow equations, Code-improving conversions, Dealing with aliases, Data-flow research of organized flow charts, Efficient data-flow algorithms, An instrument for data-flow analysis, Appraisal of types, Symbolic debugging of enhanced code Product No . Composing a Complier Planning a compiler, Approaches to compiler development, The compiler-development environment, Testing and maintenance, A review of Some Compilers, EQN, a preprocessor to get typesetting math, Compilers intended for Pascal, The C compilers, The Fortran H compilers, The Bliss/11 compiler, Modula-2 optimizing compiler

< Prev post Next post >