Skip to main content

Addressing Concepts


Q.1. Explain in detail about the concept of Addressing in the Memory.

Ans.: Each instruction needs data on which it has to perform the specified operation. The data may be in the accumulator, GPR (general purpose registers) or in some specified memory location. The techniques of specifying the address of the data are known as addressing modes. The important addressing modes are as follows :
(i) Direct Addressing
(ii) Register Addressing
(iii) Register Indirect Addressing
(iv) Immediate Addressing
(v) Relation Addressing

(i) Direct Addressing : In this, the address of the data is specified within the instruction itself. Example of direct addressing is :
(a) STA 2500H : store the contents of accumulator in the memory location 2500H.

(ii) Register Addressing : In register addressing, the operands are located in the general purpose registers. In other words the contents of the register are the operands. Therefore only this name of the register is to be specified in the instruction. E.g. of register addressing are :
(a) MOV A, B : Transfer the contents of register B to register A.



(iii) Register Indirect Addressing : In this, the address of the operand is given directly. The contents of a register or a registers pairs are the address of the operand.
Example : LX1 H, 2400H--> load H-L pair with 2400 H.


(a) MOV A, M : Move the contents of the memory location whose address is in H-L pair to the accumulator.

(iv) Immediate addressing : In this the operand in given in the instruction itself. E.g.

(a) MVI A, 06 : Move 06 to accumulator.

(v) Relation Addressing : In this a signed displacement is added to the current value of the program counter to form the effective address. This is also known as PC relative addressing.

Q.2. Explain the concept of Paging in contest of Memory.

Ans.: In page oriented memory, the memory is divided into pages. A page has a fixed length, 4KB or 4MB length. The logical address is represented by the page address and the page offset. The page address points to a descriptor table. The function of a descriptor is same as that in the case of a memory Segment Scheme. When the demanded page is not present in the physical memory, a page fault is triggered. This informs the OS to swap the desired page. This type of memory management schemes is known as demand-paged virtual memory scheme.

Q.3. What is an Instruction Cycle?

Ans.: The main function of a CPU is to execute programs. A program converts of a sequence of instruction s to perform a particular task. Program as stored in a memory. The CPU fetcher one instruction at a time from the memory & executes it. Then it fetcher the vent instruction to execute it. The CPU repeats this process till it executes all the instruction of the program. Thereafter, it may take another program if any, to execute.
The necessary steps that the processor has to carry out for fetching an instruction from the memory and executing an instruction from the memory and executing it, constitute an instruction cycle. An instruction cycle consists of 2 parts. Fetch cycle & a execute cycle. In fetch cycle the CPU fetcher the m/c code of this instruction from the memory. The necessary steps that are carried out to the fetch an opcode from the memory constitute a fetch cycle. In execute cycle an instruction isexecuted. The necessary which are carried to execute an instruction constitute are execute cycle.

Popular posts from this blog

C++ Program to find the sum, difference, product and quotient of two integers

#include <iostream.h> #include <conio.h> void main() {   clrscr();   int x = 10;   int y = 2;   int sum, difference, product, quotient;   sum = x + y;   difference = x - y;   product = x * y;   quotient = x / y;   cout << "The sum of " << x << " & " << y << " is " << sum << "." << endl;   cout << "The difference of " << x << " & " << "y <<  is " << difference << "." << endl;   cout << "The product of " << x << " & " << y << " is " << product << "." << endl;   cout << "The quotient of " << x << " & " << y << " is " << quotient << "." << endl;   getch(); }

Putimage function in c

putimage function outputs a bit image onto the screen. Declaration:- void putimage(int left, int top, void *ptr, int op); putimage puts the bit image previously saved with getimage back onto the screen, with the upper left corner of the image placed at (left, top). ptr points to the area in memory where the source image is stored. The op argument specifies a operator that controls how the color for each destination pixel on screen is computed, based on pixel already on screen and the corresponding source pixel in memory. c smiling face animation This animation using c draws a smiling face which appears at random position on screen. See output below the code, it will help you in understanding the code easily. C programming code #include<graphics.h> #include<conio.h> #include<stdlib.h>   main() { int gd = DETECT, gm, area, temp1, temp2, left = 25, top = 75; void *p;   initgraph(&gd,&gm,"C:\\TC\\BGI");   setcolor(YELLOW)...

What is Dynamic Memory Allocation in C++ Program

In the computer world, anything that is processed be it an instruction or any data first needs to be loaded and located in internal memory.  In C++ programs also any data that is processed while executing the program is held in the internal memory.  What is Dynamic Memory Allocation? Dynamic Memory allocation means that the memory that will be used during the program is not known beforehand and is allocated dynamically and on the go. It is allocated during the runtime as and when required by the program. In C++ there are two operators used in dynamic memory allocation  1. New  2. Delete New operator in dynamic memory allocation The new operator in C++ is used to create objects of all types. The new operator will allocate memory of the size of the data type specified in the program.  For Example iptr = new int ;  Storing initial values will allocate needed amount of memory from the free store to hold the value of the specified data-type and store the startin...