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