Google
 
   
Login
Username:

Password:


Lost Password?

Register now!
Search
Main Menu
top books
Polls
What do you think about php-deluxe.net?
Excellent!
Cool
Hmm..not bad
What the hell is this?
encyclopedia
recommendation
compare webbrowser
Freenet DSL
Who's Online
6 user(s) are online (6 user(s) are browsing encyclopedia)

Members: 0
Guests: 6

more...
browser tip
Unix Befehle
manual of unix befehle
recommendation!
Sponsored
partner

Intermediate language

In computer science, an intermediate language is the language of an abstract machine designed to aid in the analysis of computer programs. The term comes from their use in Compilers, where a compiler first translates the source code of a program into a form more suitable for code-improving transformations, as an intermediate step before generating object file or Machine language code for a target machine. The design of an intermediate language typically differs from that of a practical machine language in three fundamental ways:

  • Each instruction represents exactly one fundamental operation; e.g. shift-add addressing modes common in microprocessors are not present.
  • Control_flow information may not be included in the instruction set.
  • The number of registers available may be large, even limitless.
  • A popular format for intermediate languages is three address code.

    A variation in the meaning of this term, is those languages used as an intermediate language by some high-level programming languages which do not output object or machine code, but output the intermediate language only, to submit to a compiler for such language, which then outputs finished object or machine code. This is usually done to gain Optimization (computer science) much as treated above, or portability by using an intermediate language that has compilers for many Central processing unit and operating systems, such as C programming language. Languages used for this fall in complexity between high-level languages and Low-level programming language, such as assembly languages.

    =Languages=

    Some intermediate programming languages:

    .

    In effect, Sun Microsystem s Java_virtual_machine is the intermediate language used by all compilers targetting the Java Virtual Machine, before just-in-time compilation to machine code. Similarly, Microsoft s Common Intermediate Language is an intermediate language designed to be shared by all compilers for the .NET_Framework, before static or dynamic compilation to machine code.

    The GNU_Compiler_Collection (gcc) uses several intermediate languages to simplify portability and cross-compilation. Among these languages are

  • the historical Register_Transfer_Language (RTL)
  • the tree language GENERIC
  • the Static_single_assignment_form-based GIMPLE.
  • Other intermediate programming languages inspired from the C programming language are