The function of the interpreter is to interpret and execute high-level language programs. An interpreter is a type of high-level language translation program. It takes a source program written in the source language as input. After interpreting a sentence, it is submitted to the computer for execution. It does not form a target program. The general structure of the interpreter program can be divided into two main modules: the interpretation module and the running module: the function of the former is to input statements one by one in the dynamic execution order of the source program and analyze and interpret individual statements; the function of the latter is to translate the running statements code and output intermediate or final results.
The operating environment of this tutorial: Windows 7 system, Dell G3 computer.
The function of the interpreter is to interpret and execute high-level language programs.
Introduction to the interpreter
The interpreter is a type of high-level language translation program that uses the source program written in the source language as Input, interpret a sentence and submit it to the computer for execution, which does not form a target program.
Working Principle
The interpreter program consists of a master control program and several execution subroutines. The working process of the interpreter program is as follows: First, the master control program performs initial preparation work and sets the initial state of the work; then, a statement S is taken from the source program and a syntax check is performed. If there is an error in the syntax, an error message will be output; otherwise, the corresponding execution subroutine will be executed according to the determined statement type. After returning, check whether the interpretation work is completed. If it is not completed, continue to interpret the next statement; otherwise, perform necessary aftermath work.
Component modules
The general structure of the interpreter program can be divided into two main modules: the interpretation module and the operation module.
The function of the former is to input statements one by one in the dynamic execution order of the source program, and analyze and interpret individual statements, including checking the correctness of syntax and semantics, and generating equivalent intermediate codes. or machine language code, as well as error information provision and other processing.
The function of the latter is to run the translation code of the statement and output the intermediate result or final result.
Due to different design ideas of interpreters, the execution methods of running modules are also different.
One method is to interpret the module to directly generate machine language code equivalent to the source program statement; usually one statement generates code segments for multiple machine instructions. The run module is responsible for controlling the execution of this code and processing intermediate results (saving or output).
Another approach is for the interpretation module to generate intermediate code (but not machine language code) equivalent to the statement, such as a program call and its parameter form. The running module is responsible for selecting the corresponding functional parts and controlling the execution of the intermediate code, and processing related running results.
Working process
The working process of the explanation program is as follows:
①The initialization work is completed by the master control program.
② Take out a statement from the source program in sequence and perform a syntax check. If there is an error, an error message will be output; if the syntax check passes, the statement will be converted into a corresponding instruction and executed.
③ Check whether the source program has been fully interpreted and executed. If not, continue to interpret and execute the next statement until all statements have been processed.
For more related knowledge, please visit theFAQcolumn!
The above is the detailed content of Explain what the program does. For more information, please follow other related articles on the PHP Chinese website!