Home >Common Problem >What does a high-level language compiler belong to?

What does a high-level language compiler belong to?

王林
王林Original
2020-12-03 13:50:0120715browse

Compilers of high-level languages ​​belong to system software. System software includes the operating system and a series of basic tools, such as compiler, database management, memory formatting, file system management, user authentication, driver management, network connection, etc. It is a tool that supports the normal operation of the computer system and enables users to That part of the software that operates.

What does a high-level language compiler belong to?

The operating environment of this article: Windows 7 system, Dell G3 computer.

Compilers of high-level programming languages ​​are general-purpose software.

High-level language

Computer language is divided into high-level language and low-level language. High-level language is mainly relative to assembly language. It is programming that is closer to natural language and mathematical formulas. It is basically separated from the hardware system of the machine and writes programs in a way that is easier for people to understand. The program written is called the source program.

High-level language does not refer to a specific language, but includes many programming languages, such as popular java, c, c, C#, pascal, python, lisp, php, prolog, FoxPro, Easy Language, Chinese version of C language, etc. The syntax and command format of these languages ​​are different.

High-level language has nothing to do with the computer's hardware structure and instruction system. It has stronger expression ability, can easily express data operations and program control structures, can better describe various algorithms, and is easy to Learn to master. However, the program code generated by high-level language compilation is generally longer than the program code designed in assembly language, and the execution speed is also slower. Therefore, assembly language is suitable for writing programs that require high speed and code length and programs that directly control hardware. High-level languages, assembly language, and machine language are all languages ​​used for writing computer programs.

High-level language programs "cannot see" the hardware structure of the machine and cannot be used to write system software or device control software that directly accesses the machine's hardware resources. To this end, some high-level languages ​​provide calling interfaces with assembly language. A program written in assembly language can be used as an external procedure or function in a high-level language, using the stack to pass parameters or the address of parameters.

Compiler

Compiler, compiling program, also known as compiler, refers to a program written in a high-level programming language A translation program that translates a source program into an equivalent target program in machine language format. Compilers are translation programs implemented using a generative implementation approach. It takes a source program written in a high-level programming language as input, and a target program expressed in assembly language or machine language as output. The compiled target program usually also goes through a running stage in order to run with the support of the running program, process the initial data, and calculate the required calculation results.

The basic function of the compiler is to translate the source program (high-level language) into the target program.

System software

System software refers to a system that controls and coordinates computers and external devices and supports the development and operation of application software. It is a system that does not require users A collection of various intervening programs whose main function is to schedule, monitor and maintain the computer system; responsible for managing various independent hardware in the computer system so that they can work in harmony. System software allows computer users and other software to treat the computer as a whole without having to consider how the underlying hardware works.

Generally speaking, system software includes the operating system and a series of basic tools (such as compilers, database management, memory formatting, file system management, user authentication, driver management, network connection, etc. ).

The representative system software is:

1. Operating system

The operating system manages the computer's hardware devices so that application software can be convenient and Use these devices efficiently. Common ones on microcomputers include: DOS, WINDOWS, UNIX, OS/2, etc.

The most important and basic among computer software is the operating system (OS). It is the lowest level software. It controls all programs running on the computer and manages the resources of the entire computer. It is the bridge between the bare metal of the computer, applications and users. Without it, users cannot use a certain software or program.

The operating system is the control and management center of the computer system. From a resource perspective, it has four functions: processor, memory management, device management, and file management.

Commonly used systems include DOS operating system, WINDOWS operating system, UNIX operating system, Linux, Netware and other operating systems.

2. Language processing program

Compiled software The CPU only completes a very simple operation for each instruction executed. A system software or application software requires thousands or even hundreds of millions of A combination of instructions. Writing software directly using basic instructions is an extremely arduous and difficult task.

Computers can only directly recognize and execute machine language. Therefore, if you want to run high-level language programs on your computer, you must be equipped with a program language translation program. The translation program itself is a set of programs, and different high-level languages ​​have corresponding translation programs. .

Language processing programs such as assembly language assembler, C language compiler, connector, etc.

In order to improve efficiency, people specified a new set of instructions, called a high-level language, in which each instruction completes an operation. This operation is simple and basic relative to the overall function of the software, and It is complex compared to a single operation of the CPU. Writing programs (called source programs) in this high-level language is like using prefabricated panels instead of bricks to build a house. It is much more efficient. However, the CPU cannot directly execute these new instructions. You need to write a software specifically to translate each instruction in the source program into a series of basic instructions (also called machine language) that the CPU can accept, so that the source program can be converted into something that can be used on the computer. program running on it. Software that completes this translation is called high-level language compilation software, and they are usually classified as system software. Currently commonly used high-level languages ​​include VB, C, JAVA, etc. Each of them has its own characteristics and is suitable for writing a certain type of program. They all have their own compilation software.

3. Database management

The database management system stores large amounts of data in an organized and dynamic manner, allowing people to use these data conveniently and efficiently.

Database management system is a large-scale software that manipulates and manages databases and is used to establish, use and maintain databases.

Foxpro, Access, Oracle, Sybase, DB2 and Informix are database systems.

4. Auxiliary programs

System auxiliary processing programs are also called "software development tools", "support software" and "software tools". They mainly include editing programs, debugging programs, equipment and Linker, debugger.

Free programming language video tutorials: Programming videos

The above is the detailed content of What does a high-level language compiler belong to?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn