Active In SP
Joined: Sep 2010
10-01-2011, 03:58 PM
copiler report.docx (Size: 1.42 MB / Downloads: 71)
A compiler is a computer program (or set of programs) that transforms source code written in a programming language(the source language) into another computer language (the target language, often having a binary form known as object code). The most common reason for wanting to transform source code is to create an executable program.The name "compiler" is primarily used for programs that translate source code from a high-level programming language to a lower level language (e.g., assembly language or machine code). If the compiled program can only run on a computer whose CPU or operating system is different from the one on which the compiler runs the compiler is known as a cross-compiler. A program that translates from a low level language to a higher level one is a decompiler. A program that translates between high-level languages is usually called a language translator, source to source translator, or language converter. A language rewriter is usually a program that translates the form of expressions without a change of language.
A compiler is likely to perform many or all of the following operations: lexical analysis, preprocessing, parsing, semantic analysis(Syntax-directed translation), code generation, and code optimization. Program faults caused by incorrect compiler behavior can be very difficult to track down and work around and compiler implementors invest a lot of time ensuring the correctness of their software. The term compiler-compiler is sometimes used to refer to a parser generator, a tool often used to help create the lexer and parser.
The purpose of the compiler is to translate the programs written in human readable language to machine language which is understandable to computer machine. A compiler reads instruction in the programs and translates it, if there is any error it also identify it and warns about it to user. The error could be typing mistake (syntax error) or a logical error. when all the erros are removed the instructions are sent to the computer for processing.
• The portion of a program in which a particular identifier is visible. Different programming languages have different scoping patterns.
• Scoping refers o identifiers; this includes variable names, constant names, function names, procedure names, programs names, etc.
• A declaration is a binding occurence.
• When a programming language does not require a declaration, the first applied occurence of an identifier is also a binding occurence, with attributes being inferred from the usage.
• The scope of an identifier may not be the same as its lifetime; the two attributes are distinct.