(redirected from Compilers)
Also found in: Dictionary, Thesaurus, Medical, Legal.


a computer program by which a high-level programming language, such as COBOL or FORTRAN, is converted into machine language that can be acted upon by a computer


(computer science)
A program to translate a higher programming language into machine language. Also known as compiling routine.


(programming, tool)
A program that converts another program from some source language (or programming language) to machine language (object code). Some compilers output assembly language which is then converted to machine language by a separate assembler.

A compiler is distinguished from an assembler by the fact that each input statement does not, in general, correspond to a single machine instruction or fixed sequence of instructions. A compiler may support such features as automatic allocation of variables, arbitrary arithmetic expressions, control structures such as FOR and WHILE loops, variable scope, input/ouput operations, higher-order functions and portability of source code.

AUTOCODER, written in 1952, was possibly the first primitive compiler. Laning and Zierler's compiler, written in 1953-1954, was possibly the first true working algebraic compiler.

See also byte-code compiler, native compiler, optimising compiler.


(1) Software that converts a set of high-level language statements into a lower-level representation. For example, a help compiler converts a text document embedded with appropriate commands into an online help system. A dictionary compiler converts terms and definitions into a dictionary lookup system.

(2) Software that translates a program written in a high-level programming language (C/C++, COBOL, etc.) into machine language. A compiler usually generates assembly language first and then translates the assembly language into machine language. A utility known as a "linker" then combines all required machine language modules into an executable program that can run in the computer. See optimizing compiler.

The following is a conceptual example of source code being converted to assembly language and machine code by the compiler:

Source Code

  Assembly Language  Machine Language
  Compare A to B     Compare 3477 2883
  If equal go to C   If = go to 23732
  Go to D            Go to 23119

  Machine Code

From C to Assembly Language
A C/C++ compiler converts C and C++ code into assembly language as shown in this example. The red arrows point to various function calls, and the assembly code to perform those calls follows each statement.

Compilers and Interpreters
Compiled programs (right) are translated into the machine language of the target computer. Interpreted programs (left and center) are either kept in their original source code or are precompiled into an intermediate form. In both cases, an interpreter is required to translate the program into machine language at runtime, whereas the compiled program is "ready to go."
References in periodicals archive ?
0 of the EKOPath Compiler Suite continues to extend its performance lead over alternative compiler products.
In addition to producing smaller object code size, which is valuable in memory-constrained embedded applications like ABS systems, disk drive controllers, and handheld devices, the new compiler is fully compatible with ARM's assembly language, making it easy to use existing library routines and ROM Monitors.
The Intel compilers are specifically designed to help developers fully utilize the architectural innovations in the Intel Itanium and IA-32 processors, allowing for easy access to all of the performance features of Intel's latest processors.
The special beta versions of the Intel(R) Fortran Compiler, Intel(R) C++ Compiler, Intel(R) Math Kernel Library and Intel(R) Integrated Performance Primitives are available now.
Customers consistently share how Absoft's common tool set and source-compatible compilers for Linux, OS X, and Windows provide substantial productivity gains in the heterogeneous development environments common in today's workplace.
When custom processors are used for a wider range of applications or by a wide range of different customers, processor design teams have to deliver the best tailored optimizing compiler available.
The SDKs have top-performing compilers, debuggers, libraries, and other tools and a common look and feel which runs across all of today's leading HPC environments.
MoSys' new 1T-SRAM compiler is an effective tool to help SoC designers ensure that they are generating the most optimized designs and making the best embedded memory technology selections for their product mix.
Our royalty-free INTEGRITY(R) RTOS, velOSity(TM) microkernel, compilers, MULTI(R) and AdaMULTI(TM) integrated development environments and TimeMachine(TM) debugger offer a complete development solution that addresses both deeply embedded and high-reliability applications.
The combination of Renesas' M16C MCU, and Altium's TASKING M16C software development toolset enhanced with next generation VIPER compiler technology, enables engineers to develop high-performance and superior applications.
New Compiler, Instruction-Set Simulator Make It Easier, Faster to Design with Configurable Processors Than Custom Logic