0% found this document useful (0 votes)
9 views2 pages

EE4990-01: Advanced Microprocessors Assignment-3 By: Karan Sodhi

The document discusses real mode addressing in microprocessors. It provides examples of accessing memory locations using different offset registers in combination with segment registers. The base address is found by multiplying the segment register by 10h and adding the offset. Three examples are given using offsets of [100h], [SI + 100h], and [BX + 100h]. A second part discusses using offsets of [EAX + EBX], [EAX + 2*EBX], and [EBX + 4*EAX + 1000h]. The third part explains how a 32-bit linear address can be split into directory, page table, and offset fields according to the paging mechanism.

Uploaded by

Karan Sodhi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views2 pages

EE4990-01: Advanced Microprocessors Assignment-3 By: Karan Sodhi

The document discusses real mode addressing in microprocessors. It provides examples of accessing memory locations using different offset registers in combination with segment registers. The base address is found by multiplying the segment register by 10h and adding the offset. Three examples are given using offsets of [100h], [SI + 100h], and [BX + 100h]. A second part discusses using offsets of [EAX + EBX], [EAX + 2*EBX], and [EBX + 4*EAX + 1000h]. The third part explains how a 32-bit linear address can be split into directory, page table, and offset fields according to the paging mechanism.

Uploaded by

Karan Sodhi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

EE4990-01: Advanced Microprocessors

Assignment-3
By: Karan Sodhi
Solution 1.
Note: In real mode addressing, addressing is performed using the combination of segment
registers and an appropriate offset register. The base of each Data Segment is found by
multiplying the Data Segment with 10h. To which we add the offset address.
a. Here [100h] is accessed. Address Accessed: DS*10h+100h = 12000h+100h=12100h.
{Offset : 100h}
b. Here [SI + 100h] is accessed. Address Accessed:
DS*10h+SI+100h=12000h+0250h+100h = 12350h. {Offset : SI+100h}
c. Here [BX+100h] is accessed. Address Accessed: DS*10h+BX+100h =
12000h+0100h+100h = 12200h. {Offset : BX+100h}
Solution 2.
Note: In real mode addressing, addressing is performed using the combination of segment
registers and an appropriate offset register. The base of each Data Segment is found by
multiplying the Data Segment with 10h. To which we add the offset address.
a. Here [EAX+EBX] is accessed. Address Accessed: DS*10h+EAX+EBX =
001000h+00000_1000h+0000_2000h=0000_4000h. {Offset : EAX+EBX}
b. Here [EAX+2*EBX] is accessed. Address Accessed: DS*10h+EAX+2*EBX=
001000h+0000_1000h+0000_4000h=0000_6000h. {Offset : EAX+2*EBX}
c. Here [EBX+4*EAX+1000h] is accessed. Address Accessed:
DS*10h+EBX+4*EAX+1000h=00_1000h+0000_2000h+4*0000_1000h+1000h=0000_8
000. {Offset : EBX+4*EAX+1000h}
Solution 3.
Linear Address: 00200000H or 0000_0000_0010_0000_0000_0000_0000_0000B
According to the paging mechanism, Linear Address can be split as :
31
22 21
12 11
Directory
Page Table
Offset
So our linear address becomes:
31
22 21
0000_0000_00

12 11
10_0000_0000

0
0000_0000_0000

Following is the figure that explains the paging directory page table entries accessed:

You might also like