Skip to content
The Computer Science
TheCScience
  • Engineering Subjects
    • Human Values
    • Computer System Architecture
    • Microprocessor
    • Digital Communication
    • Internet of Things
  • NCERT Solutions
    • Class 12
    • Class 11
  • Solutions
    • HackerRank
      • C Solutions
      • C++ Solutions
      • Java Solutions
      • Python Solutions
      • Algorithms Solutions
      • Data Structures Solutions
    • HackerEarth Solutions
    • Leetcode Solutions
  • JEE 2027
The Computer Science
TheCScience

Addressing Modes of 8051 Microcontroller

YASH PAL, April 15, 2026May 1, 2026

Addressing Modes of 8051 Microcontroller – Before learning the Addressing modes of 8051, we need to study the instruction set of the 8051 microcontroller. Like the microprocessors, the 8051 microcontroller has its own instruction set.

All the Assembly language programs are written as a sequence of text lines. Each line is an instruction to the microprocessor or the microcontroller, a directive to the assembler, or a combination of the two. The syntax of a line of 8051 microcontroller program code is shown in Figure 1.

Syntax of a program code line
Figure 1: Syntax of a program code line Diagram

As shown in Figure 1, the syntax of an 8051 line contains a label, an instruction, and comments. A label is a name given to a memory location. A label is a name given to the memory location. Comments are included by the programmer to explain the instruction’s operation. Instruction is the coded set containing the opcode and the operand.

Instruction Syntax – An 8051 microcontroller has its own instruction set. The instruction is the coded information. This contains the opcode and operand. It is defined by the manufacturers of the 8051 microcontroller. When a program is executed by an 8051 microcontroller, every instruction is converted into a unique machine language binary code. This code operates the 8051 internal circuitry. There are two distinct parts of the 8051 microcontroller instructions: Opcode and Operand. Operand field is again classified into two parts: source and destination. An 8051 Microcontroller instruction syntax is shown in the figure below.

8051 microcontroller instruction syntax
8051 instruction syntax

Table of Contents

  • Addressing Modes of the 8051 Microcontroller
    • Immediate Addressing Mode
    • Register Addressing Mode
    • Direct Addressing Mode
    • Indirect Addressing Mode

Addressing Modes of the 8051 Microcontroller

The way the data source of destination addresses is given in an instruction determines the addressing mode. There are four addressing modes of the 8051 microcontroller.

  1. Immediate Addressing Mode
  2. Register Addressing Mode
  3. Direct Addressing Mode
  4. Indirect Addressing Mode

Immediate Addressing Mode

In this addressing mode, the 8-bit or 16-bit data is specified in the instruction itself as its one operand (source). Examples of this addressing mode are as follows:

MOVA, #02H; Copy the immediate data 02H to register A.
MOVDPTR, 03050H; copy the immediate data 3050H to the DPTR register.

Register Addressing Mode

Certain register names may be used as part of the opcode as the source or destination of data. Examples of this addressing mode are as follows:

MOVA, R5; copy data from register R5 to register A.
MOVR0, A; copy data from register A to register R0.

Direct Addressing Mode

Direct addressing mode is so named because the value to be stored in memory is obtained by directly retrieving it from another memory location. The SFRs and all 128 bytes of internal RAM may be addressed directly using a single byte address. Examples are as follows:

MOVA, 30H; copy data from RAM address 30H to register A.
MOVR0, 12H; copy data from RAM address 12H to register R0.
MOV8CH, R7; copy data from register R7 to Timer 0 high byte

Indirect Addressing Mode

Indirect addressing mode is a very powerful addressing mode. It provides an exceptional level of flexibility. It uses a register to hold the final address, known as the pointing register. The instruction for indirect addressing mode is the ‘at’ sign @. Examples are as follows.

MOVA, @ R0; copy the data of the address in R0 to register A.
MOV@ R1, 35H; copy the data 35H to the address in register R1.

Microprocessor Subject Tutorials & Notes | Beginners Guide
engineering subjects Microprocessor microprocessor

Post navigation

Previous post
Next post

Introduction to Microprocessor
Generations of Computer
Microprocessor Types
Types of Computer Systems
Types of Programming Languages
Basic Computer Structure
Interfacing Logic Devices
Number System in Computer
Number System Arithmetic – Addition & Subtraction

Microprocessor as CPU
8085 Microprocessor Architecture
Pin Configuration of 8085 Microprocessor
Demultiplexing of Address and Data Bus in 8085 Microprocessor
Basic Operations of the 8085 Microprocessor
Memory Organization in 8085 Microprocessor

Microprocessor memory structure
Memory Interfacing with 8085 Microprocessor
Memory address decoding in a microprocessor
Input/Output Interfacing in Microprocessor

8085 Microprocessor Programming Model
8085 Assembly Language Programming
8085 Microprocessor Instructions
Microprocessor Programming Steps
Flowchart Design of a Program
8085 Microprocessor Data Transfer Instructions
8085 Microprocessor Arithmetic Instructions
8085 Microprocessor Logical Instructions
8085 Microprocessor Branch Instructions
8085 Microprocessor Machine-Processor Control Instructions
Basic Structure of an Assembly Language Program
Programming Techniques for Repeated Tasks
Debugging of a Microprocessor Program

8085 Microprocessor Timing Operations
Timing Diagram of 8085 Microprocessor
Time Delay in Microprocessor
Stack in 8085 Microprocessor
Subroutine in 8085 Microprocessor
MACRO in Microprocessor

Interrupts in 8085 Microprocessor
Digital to Analog Converter (DAC) in Microprocessor
Analog to Digital Converter (ADC) in Microprocessor

Programmable Peripheral Interface
8255 (PPI) Programmable Peripheral Interface
Programmable Interval Timer (PIT) 8253/8254
Programmable Interrupt Controller (PIC) 8259
Direct Memory Access (DMA) Controller 8257

8086 Microprocessor Architecture, Instructions, and Pin Diagram
Addressing Modes of the 8086 Microprocessor
Instruction Set of 8086 Microprocessor
8088 Microprocessor Architecture with Pin Diagram
Difference between 8085, 8086, and 8088 Microprocessors
80186 Microprocessor Architecture
80286 Microprocessor Architecture & Features
80386 Microprocessor Architecture & Features
80486 Microprocessor Architecture & Features
80586 (Pentium) Microprocessor Architecture & Features

8051 Microcontroller Architecture
8051 Microcontroller Memory Organization
8051 Microcontroller Pin Configuration & Programming Model
8051 Microcontroller Timers and Counters
Serial Communication in 8051 Microcontroller
Interrupts of the 8051 Microcontroller
Addressing Modes of the 8051 Microcontroller
Intel MMX Architecture
Dual Core Processor

LED & Multiplexed Display Interfacing with Microprocessor
Liquid Crystal Display (LCD) Pin Configuration & Interfacing
Matrix Keyboard Interfacing with Microprocessor
8279 Keyboard/Display Controller
Programmable Communication Interface (USART) 8251
Serial Communication Standards in Microprocessor
Computer System Standard Buses

TheCScience

At TheCScience.com, our mission is to make quality education accessible to everyone. We provide in-depth, easy-to-understand articles covering Secondary, Senior Secondary, and Graduation-level subjects.

Pages

About US

Contact US

Privacy Policy

DMCA

Our Tools

Hosting - get 20% off

Engineering Subjects

Internet of Things

Human Values

Digital Communication

Computer System Architecture

Microprocessor

Programming Tutorials

Data Structure and Algorithm

C

Java

NCERT

Class 12th

©2026 TheCScience | WordPress Theme by SuperbThemes