Also found in: Dictionary, Thesaurus, Medical, Legal, Financial, Acronyms, Wikipedia.
machine language[mə′shēn ‚laŋ·gwij]
a programming language whose contents and rules are realized by the hardware of a digital computer. Machine language consists of a set of digital computer instructions and a method of coding information (initial data, results of computations) acceptable to the computer.
The symbols of machine language are binary digits (bits). As a rule, the symbols are grouped into constructs (morphemes), that is, addresses within instructions; operation codes; and instruction attributes. These instructions are compiled into programs which embody the algorithms for solving the problems at hand. The efficiency of computer solutions of various problems depends to a large extent on how well the machine language is suited for given algorithms. A program written in machine language (sometimes called machine code) must contain very specific instructions for performing each operation. Moreover, it is necessary to indicate exactly where each number is to be stored (the memory cell), how to convey and process the numbers, and where to store the results of the computations.
Programming in machine language is carried out in the digital computer’s instruction list; machine language is therefore useful in the creation of programs that extend the logical capabilities of the computer (such as operating systems, translators of algorithmic languages, routine libraries), and for the creation of programs that are limited in operation time and computer memory capacity. Some disadvantages of programming in machine language are that programs written for a digital computer of one kind are not suitable for a digital computer of another kind; it takes a long time to train programmers; and a programmer who has learned to program on one machine must be virtually retrained for programming on another machine. One of the trends of machine language development is toward a higher-level language, which would simplify translators of algorithmic languages.
A. V. GUSEV
machine languageThe native language of the computer. In order for a program to run, it must be presented to the computer as binary-coded machine instructions that are specific to that CPU family. Although programmers are sometimes able to modify machine language in order to fix a running program (see patch), they do not create it. Machine language is created by software called "assemblers," "compilers" and "interpreters." These conversion programs turn the programmer's source code, which is what the programmer writes, into machine language (machine code). See assembly language, compiler and interpreter.
Machine languages differ substantially. What may take one instruction in one machine can take 10 instructions in another. See RISC.
What and Where
Machine language tells the computer what to do and where to do it. When a programmer writes TOTAL = TOTAL + SUBTOTAL, that statement is converted into a machine instruction that tells the computer to add the contents of the two areas of RAM where TOTAL and SUBTOTAL are stored and put the result in TOTAL.
Logical vs. Physical
A programmer deals with data logically, "add this, subtract that," but the computer must be told precisely which RAM locations this and that are located.
From Source to Machine Language
For decades, the goal of a business organization has been to be able to describe a problem and have it turned into executable code (machine language). Today's programs are written in ever-higher layers of abstraction, and there are considerably more instructions executed to solve tasks than there were years ago. However, today's fast computers are able to absorb the huge amount of additional machine language and overhead required in modern computing environments (see abstraction layer). See hardware platform.