compiler

Part of the TechTarget Network of Enterprise IT Web Sites
Home Look It Up ITKnowledge Exchange Fast References Products White Papers Blogs

Search our IT-specific encyclopedia for:
 
OR Jump to a topic:
 
Advanced Search
Browse alphabetically:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z #
All Categories Programming

compiler

A compiler is a special program that processes statements written in a particular programming language and turns them into machine language or "code" that a computer's processor uses. Typically, a programmer writes language statements in a language such as Pascal or C one line at a time using an editor . The file that is created contains what are called the source statements . The programmer then runs the appropriate language compiler, specifying the name of the file that contains the source statements.

When executing (running), the compiler first parses (or analyzes) all of the language statements syntactically one after the other and then, in one or more successive stages or "passes", builds the output code, making sure that statements that refer to other statements are referred to correctly in the final code. Traditionally, the output of the compilation has been called object code or sometimes an object module . (Note that the term "object" here is not related to object-oriented programming .) The object code is machine code that the processor can process or "execute" one instruction at a time.

More recently, the Java programming language, a language used in object-oriented programming , has introduced the possibility of compiling output (called bytecode ) that can run on any computer system platform for which a Java virtual machine or bytecode interpreter is provided to convert the bytecode into instructions that can be executed by the actual hardware processor. Using this virtual machine, the bytecode can optionally be recompiled at the execution platform by a just-in-time compiler .

Traditionally in some operating systems, an additional step was required after compilation - that of resolving the relative location of instructions and data when more than one object module was to be run at the same time and they cross-refered to each other's instruction sequences or data. This process was sometimes called linkage editing and the output known as a load module .

A compiler works with what are sometimes called 3GL and higher-level languages . An assembler works on programs written using a processor's assembler language.









Last updated on: Oct 16, 2006

>  Enterprise Software related Research & News
>  White Papers for the Retail Industry

Are you a Know-IT-All?
Is an electron’s charge positive or negative?
Answer

WORD OF THE DAY...
Net neutrality
LEARN MORE ABOUT...
Buzz Alert: Craigslist criminal
Our Latest Discovery
Learning Guides and Tutorials
Our 60 tech-specific sites
WhatIs.com RSS Feeds
Home Look It Up ITKnowledge Exchange Fast References Products White Papers Blogs
About Us   |   Contact Us   |   For Advertisers   |   For Business Partners   |   Reprints   |   RSS   |   Awards
TechTarget provides enterprise IT professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective IT purchase decisions and managing their organizations' IT projects - with its network of technology-specific Web sites, events and magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Reprints  |  Site Map




All Rights Reserved, Copyright 2008, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts