Machine Language in Computer Architecture YASH PAL, February 27, 2026February 27, 2026 Machine Language in Computer Architecture – Machine language is a collection of binary digits or bits that the computer reads and interprets. It is also referred to as machine code or object code and is the only language a computer is capable of understanding. Since computers are digital devices, they only recognize binary data. Every program video, image, and character of text is represented in binary. This binary data, or machine code, is processed as input by the CPU. The resulting output is sent to the operating system or an application, which displays the data visually. For example, the ASCII value for the letter “A” is 01000001 in machine code, but this data is displayed as “A” on the screen. An image may have thousands or even millions of binary values that determine the color of each pixel. A machine language instruction has two parts. The first part is the operation code, which tells the computer what function to perform, and the second part is the operand, which tells the computer where to find or store the data that is to be manipulated. A programmer needs to write numeric codes for the instruction and storage location of data. The table below shows the computer instructions that are frequently used in a program. Hexadecimal SymbolHexadecimal CodeDescriptionAND0 or 8AND M to ACADD1 or 9Add M to AC, carry to ELDA2 or ALoad AC from MSTA3 or BStore AC in MBUN4 or CBranch unconditionally to mBSA5 or DSave return address in m and branch to m + 1ISZ6 or EIncrement M and skip if zeroCLA7800Clear ACCLE7400Clear ECMA7200Complement ACCME7100Complement ECIR7080Circulate right E and ACCIL7040Circulate left E and ACINC7020Increment ACSPA7010Skip if AC is positiveSNA7008Skip if AC is negativeSZA7004Skip if AC is zeroSZE7002Skip if E is zeroHLT7001Half computerINPF800Input information and clear flagOUTF400Output information and clear flagSKIF200Skip if input flag is onSKOF100Skip if output flag is onIONF080Turn interrupt onIOFF040Turn the interrupt onComputer Instructions Table A program written for a computer may be in one of the following categories: Binary code: This is a sequence of instructions and operands in binary that list the exact representation of instructions as they appear in computer memory. Octal or hexadecimal code: This is an equivalent translation of the binary code to octal or hexadecimal representation. Symbolic code: The user employs symbols (letters, numerals, or special characters for the operation part, the address part, and other parts of the instruction code. Each symbolic instruction can be translated into one binary-coded instruction. This translation is done by a special program called an assembler. Because an assembler translates the symbols, this type of symbolic program is referred to as an assembly language program. High-level programming languages: These are special languages developed to reflect the procedures used in the solution of a problem rather than be concerned with the computer hardware behavior. An example of a high-level programming language is Fortran. It employs problem-oriented symbols and formats. The program is written in a sequence of statements in a form that people prefer to think in when solving a problem. However, each statement must be translated into a sequence of binary instructions before the program can be executed in a computer. The program that translates a high-level language program to binary is called a compiler. Now, using a basic computer to illustrate the relation between binary and assembly languages, consider a binary program to add two numbers. LocationInstructioncodeInstructioncodeInstructioncodeInstructioncode000100000000001001000100000000010110001100000000011011011100000000001100000000000101001110111111111111010011100000000000000000Binary program to add two numbers The first column gives the memory location (in binary) of each instruction or operand. The second column lists the binary content of these memory locations. (The location is the address of the memory word where the instruction is stored. It is important to differentiate it from the address part of the instruction itself. The program can be stored in the indicated portion of memory, and then executed by the computer starting from address 0. The hardware of the computer will execute these instructions and perform the intended task. Advantages of machine language: Machine language makes fast and efficient use of the computer. It requires no translator to translate the code. It is directly understood by the computer. Disadvantages of machine language: It is machine-dependent, i.e., it differs from computer to computer. It is difficult to program and write. It is prone to errors. It is difficult to modify. Computer System Architecture engineering subjects Computer System Architecture