Skip to content
The Computer Science
TheCScience
  • Engineering Subjects
    • Human Values
    • Computer System Architecture
    • Digital Communication
    • Internet of Things
  • NCERT Solutions
    • Class 12
    • Class 11
  • HackerRank solutions
    • HackerRank Algorithms Problems Solutions
    • HackerRank C solutions
    • HackerRank C++ problems solutions
    • HackerRank Java problems solutions
    • HackerRank Python problems solutions
The Computer Science
TheCScience

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 CodeDescription
AND0 or 8AND M to AC
ADD1 or 9Add M to AC, carry to E
LDA2 or ALoad AC from M
STA3 or BStore AC in M
BUN4 or CBranch unconditionally to m
BSA5 or DSave return address in m and branch to m + 1
ISZ6 or EIncrement M and skip if zero
CLA7800Clear AC
CLE7400Clear E
CMA7200Complement AC
CME7100Complement E
CIR7080Circulate right E and AC
CIL7040Circulate left E and AC
INC7020Increment AC
SPA7010Skip if AC is positive
SNA7008Skip if AC is negative
SZA7004Skip if AC is zero
SZE7002Skip if E is zero
HLT7001Half computer
INPF800Input information and clear flag
OUTF400Output information and clear flag
SKIF200Skip if input flag is on
SKOF100Skip if output flag is on
IONF080Turn interrupt on
IOFF040Turn the interrupt on
Computer Instructions Table

A program written for a computer may be in one of the following categories:

  1. 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.
  2. Octal or hexadecimal code: This is an equivalent translation of the binary code to octal or hexadecimal representation.
  3. 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.
  4. 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.

LocationInstruction
code
Instruction
code
Instruction
code
Instruction
code
00010000000000100
10001000000000101
100011000000000110
11011100000000001
1000000000001010011
1011111111111101001
1100000000000000000
Binary 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

Post navigation

Previous post
Next post

Computer Architecture fundamentals
Basic structure of a computer
Functional Units of Computer
Development of Computers
Von Neuman and Harvard machine Architecture
Flynn Classification
Computer Structure Architecture
Interfacing Logic Devices
Levels of Design abstraction
Performance Metrics

Register Transfer Language
Memory Transfer
Arithmetic Micro-operations
Arithmetic Complements
Logic Micro-operations
Shift Micro-operations
Bus Architecture
Data Transfer
Central Processing Unit
CPU Bus Architecture

Computer Register and Types
Common Bus System
Instruction Format
Instruction Types
Instruction Cycle
Addressing Modes
Design of a basic computer

Basic function of a Computer
General register organization
Stack organization
Infix to Reverse Polish Notation Conversion
Instruction Types and their classifications
Data transfer and manipulation
Program control
RISC characteristics
CISC characteristics

Pipeline
Types of Pipeline
Arithmetic Pipeline
Instruction Pipeline
Hazards
Vector Processing

Data Representation
Addition and Subtraction
Adder Circuits
Shift and Add Multiplication Method
Booth's Algorithm
Restoring Division Algorithm
Non-Restoring Division Algorithm
Array Multiplier

Memory Classification
Memory Characteristics
Memory Organization
Memory Types
Associative Memory
Cache Memory
Virtual Memory

Input Output Interface
Modes of Data Transfer
Priority Interrupt
Direct Memory Access
Input-Output Processor
Serial Communication

TheCScience

We at TheCScience.com are working towards the goal to give free education to every person by publishing in dept article about Secondary, Senior-Secondary, and Graduation level subjects.

Pages

About US

Contact US

Privacy Policy

DMCA

Engineering Subjects

Internet of Things

Human Values

Digital Communication

Computer System Architecture

Programming Tutorials

Data Structure and Algorithm

C

Java

NCERT

Class 12th

©2026 TheCScience | WordPress Theme by SuperbThemes