Difference between revisions of "Machine code"
Karl Jones (Talk | contribs) (etc) |
Karl Jones (Talk | contribs) (→See also) |
||
Line 15: | Line 15: | ||
* [[Compiler]] | * [[Compiler]] | ||
* [[Computer science]] | * [[Computer science]] | ||
− | * [[Interpreter]] | + | * [[Interpreter (computing)]] |
== External links == | == External links == | ||
* [https://en.wikipedia.org/wiki/Machine_code Machine code] @ Wikipedia | * [https://en.wikipedia.org/wiki/Machine_code Machine code] @ Wikipedia |
Revision as of 06:14, 27 August 2015
Machine code or machine language is a set of instructions executed directly by a computer's central processing unit (CPU).
Each instruction performs a very specific task, such as a load, a jump, or an ALU operation on a unit of data in a CPU register or memory.
Every program directly executed by a CPU is made up of a series of such instructions.
Numerical machine code (i.e., not assembly code) may be regarded as the lowest-level representation of a compiled or assembled computer program or as a primitive and hardware-dependent programming language. While it is possible to write programs directly in numerical machine code, it is tedious and error prone to manage individual bits and calculate numerical addresses and constants manually. It is thus rarely done today, except for situations that require extreme optimization or debugging.
Almost all practical programs today are written in higher-level languages or assembly language and translated to executable machine code by utilities such as compilers, assemblers and linkers.
Programs in interpreted languages are not translated into machine code although their interpreter (which may be seen as an executor or processor) typically consists of directly executable machine code (generated from assembly or high level language source code).
See also
External links
- Machine code @ Wikipedia