Language Processing Activities

advertisement
1.2 Language Processing Activities
• The fundamental language processing activities divided into
two parts.
1. Program generation activities
2. Program execution activities
[Prog. Generation]
Specification Gap
Application
Domain
[Prog. Execution]
Execution Gap
PL
Execution
Domain
Domain
1
Language Processing Activities
• A program generation activity aims to generation of a
program. Source is the application domain and target is
the PL domain. It bridges specification gap.
• A program execution activity aims to execute a program
written in PL. source is PL domain and target is
execution domain. It bridges execution gap.
2
1. Program Generation
Errors
Program
Specification
Program
Generator
Program
in target PL
• The program generator is a software system which
accepts the specification of a program to be generated and
generates program in a the target PL.
• This activity is done by program generator domain.
3
1. Program Generation
• The generator domain is close to the application domain, it is
easy for the designer or programmer to write the specification
of the program to be generated.
• A program generator is software that enables an individual to
create a program with less efforts and prog. Knowledge.
• A user may only be required to specify the step or rules
required for the program and not need to write and code or
less code.
4
2. Program Execution
• Two popular models for program execution are:
1. Program Translation
2. Program Interpretation
5
2.1 Program Translation
Errors
Source
Program
Translator
m/c language
program
Target
Program
• The program translation model bridges the execution
gap by translating a program written in a PL called
source program(SP), into an equivalent program in the
machine language called target program(TP)
6
2.1 Program Translation
• Characteristics of the program translation model are:
 A program must be translated before it can be
executed.
 The translated program may be saved in file. The saved
program may be executed repeatedly.
 A program must be retranslated following modifications.
7
2.2 Program Interpretation
• It reads the source program and stores it in its memory.
• During interpretation it takes a source statement,
determines its meaning, and performs actions like
computation and I/O which implement it.
8
2.2 Program Interpretation
• In the program interpretation, the CPU use a program
counter(PC) to note the address of the next instruction to
be executed. This instruction is subjected to the
instruction execution cycle consisting following step:
1. Fetch the instruction
2. Decode the instruction to determine the operation to be
performed.
3. Execute the instruction.
9
2.2 Program Interpretation
• At the end of the cycle. The PC is updated and the cycle
is repeated for the next instruction.
• Thus, the PC can indicate which statement of the source
program is to be interpreted next.
Interpreter
Memory
CPU
Memory
PC
Source
PC
M.L.
Errors
Program
Program
+
+
Data
Data
10
MCQ
• The _________ is a software system which generates a
program in the target PL.
A. Program Generator
B. Program Specification
C. Program Execution
D. program Interpretation
MCQ
• The _________ is a software system which generates a
program in the target PL.
A. Program Generator
B. Program Specification
C. Program Execution
D. program Interpretation
MCQ
• the CPU use ___________ to note the address of the
next instruction to be executed.
A. program counter(PC)
B. Pretty printer
C. static checker
D. None
MCQ
• the CPU use ___________ to note the address of the
next instruction to be executed.
A. program counter(PC)
B. Pretty printer
C. static checker
D. None
MCQ
• The Program generator _______ to convert _________
• The _________ fetch, decode and execute instruction
Download