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

Memory Reference Instructions in Computer Architecture

YASH PAL, February 23, 2026February 23, 2026

Memory reference instructions in computer architecture – The microoperations needed for the execution of each instruction, it is necessary that the function that they are intended to perform be defined precisely. Some instructions have an ambiguous description.

This is because the explanation of an instruction in words is usually lengthy, and not enough space is available in the table for such a lengthy explanation. We will now see that the function of the memory reference instructions can be defined precisely by means of register transfer notation.

SymbolOperation decoderSymbolic description
1.ANDD0AC ← AC ^ M [AR]
2.ADDD1AC ← AC + M [AR], E ← Cout
3.LDAD2AC ← M[AR]
4.STAD3M[AR] ← AC
5.BUND4PC ← AR
6.BSAD5M[AR] ← PC, PC ← AR + 1
7.LSAD6If M[AR] + 1 = 0 then PC ← PC + 1
Memory Reference Instructions table

The decoded D: for i = 0,1,2,3,4,5 and 6 from the operation decoder that belongs to each instruction is included in the table. The effective address of the instruction is in the address register AR and was placed there during timing signal T2 when I=0, or during timing signal T3 when I = 1. The execution of the memory-reference instructions starts with the timing signal T4.

The symbolic description of each instruction is specified in the table in terms of register transfer notation. The actual execution of the instruction in the bus system will require a sequence of microoperations. This is because data stored in memory cannot be processed directly. The data must be read from memory to a register where it can be operated on with logic circuits. We now explain the operationof each instruction and list the control functions and microoperations needed for their execution.

AND to AC: This is an instruction that performs the AND logic operation on pairs of bits in AC and the memory word specified by the effective address. The result of the operation is transferred to the AC. The microoperations that execute this instruction are:

D0T4 : DR ← M[AR]
D0T5 : AC ← AC^DR, SC ← 0

ADD to AC: This instruction adds the content of the memory word specified by the effective address to the value of AC. The sum is transferred into AC, and the output carry Cout is transferred to the E (extended accumulator) flip-flop. The microoperations needed to execute this instruction are

D1T4 : DR ← M[AR]
D1T5 : AC ← AC + DR, E ← Cout, SC ← 0

LDA: Load to AC: This instruction transfers the memory word specified by the effective address to AC. The microoperations that execute this instruction are:

D2T4 : DR ← M[AR]
D2T5 : AC ← DR, SC ← 0

STA: Store AC: This instruction stores the content of AC into the memory word specified by the effective address.

D3T4 : M[AR] ← AC, SC ← 0

BUN: Branch Unconditionally: This instruction transfers the program to the instruction specified by the effective address. The BUN instruction allows the programmer to specify an instruction out of sequence, and the program branches (or jumps) unconditionally.

D4T4 : PC ← AR, SC ← 0

BSA: Branch and Save Return Address: This instruction is useful for branching to a portion of the program called a subroutine or procedure. When executed, the BSA instruction stores the address of the next instruction in sequence (which is available in PC) into a memory location specified by the effective address.

M[AR] ← PC, PC ← AR + 1
M[135] ← 21, PC ← 135 + 1 = 136
BSA instruction execution
BS Instruction Execution

It is not possible to perform the operation of the BSA instruction in one clock cycle when we use the bus system of the basic computer. To use the memory and the bus properly, the BSA instruction must be executed with a sequence of two microoperations:

D5T4 : M[AR] ← PC, AR ← AR + 1
D5T5 : PC ← AR, SC ← 0

ISZ: Increment and Skip if Zero: These instruction increments the word specified by the effective address, and if the incremented value is equal to 0, PC is incremented by 1. Since it is not possible to increment a word inside the memory, it is necessary to read the word into DR, increment DR, and store the word back into memory.

D6T4 : DR ← M[AR]
D6T5 : DR ← DR + 1
D6T4 : M[AR] ← DR If (DR=0) then (PC ← PC+1), SC ← 0

Below given flowchart showing all micro-operations for the execution of the seven memory-reference instructions is shown in below figure. The control functions are indicated on top of each box.

Flowchart of memory reference instructions
Flowchart of memory reference instructions

The micro-operations that are performed during time T4, T5, or T6 depend on the operation code value. This is indicated in the flowchart by six different paths, one of which the control takes after the instruction is decoded. The sequence counter SC is cleared to 0 with the last timing signal in each case. This causes a transfer of control to timing signal T0 to start the next instruction cycle.

Computer System Architecture engineering subjects Computer System Architecture

Post navigation

Previous post
Next post

Basic structure of a computer
Functional Units of a Computer
Development of Computers
Von Neumann and Harvard Machine Architecture
Flynn Classification
Computer Structure Architecture
Basic Computer Data Types
Arithmetic Complement
Real Numbers Representation
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
Bus and Memory Transfer
Central Processing Unit
CPU Bus Architecture

Difference between Computer Architecture and Organization
Computer Register and Types
Common Bus System
Instruction Format
Instruction Types
Instruction Cycle
Fetch Decode Execute Instruction Cycle
Timing and Control of Instruction Cycle
Input-Output and Interrupt
Memory Reference Instructions
Addressing Modes
Design of a basic computer
Design of Accumulator Unit
Design of Control Unit
Difference between Hardwired Control and Microprogrammed Control

Basic Function of a Computer
Register organization
General Register Organization
Stack organization
Infix to Reverse Polish Notation Conversion
Instruction Types and their classifications
Data transfer and manipulation
Program control
RISC and CISC
Difference between RISC and CISC

Parallel Processing
Pipeline
Types of Pipeline
Arithmetic Pipeline
Instruction Pipeline
Hazards
RISC Pipeline
Vector Processing
Array Processors

Machine Language
Assembly Language
Arithmetic and Logical Operations
Subroutine
Data Representation
Addition and Subtraction
Adder Circuits
Shift and Add Multiplication Method
Booth's Algorithm
Restoring Division Algorithm
Non-Restoring Division Algorithm
Array Multiplier
Hardwired control and Microprogrammed control Difference

Memory Classification
Memory Characteristics
Memory Organization
Memory Types
Auxiliary Memory
Associative Memory
Cache Memory
Virtual Memory
Paging and Segmentation Difference
Multiprocessor
Interconnection Structures
Interprocessor Arbitration
Interprocessor Communication and Synchronization
Cache Coherence
Shared Memory Multiprocessors

Input Output Interface
Asynchronous Data Transfer
Modes of Data Transfer
Input-Output Programming
Priority Interrupt
Microprogramming
Control Memory
Address Sequencing
Micro Program Examples
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

Our Tools

Hosting - get 20% off

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