0% found this document useful (0 votes)
172 views7 pages

Memory Organization 8051

The 8051 microcontroller has 128 bytes of internal RAM divided into four banks of 32 bytes each that can be selected using the bank select bits in the Program Status Word. It also has 4KB of internal ROM used to store program code. Both internal RAM and ROM use the same addresses but are selected using the nature of the operation (data vs code). External memory can be added for additional program storage and data as the 8051 supports interfacing with external RAM and ROM.

Uploaded by

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

Memory Organization 8051

The 8051 microcontroller has 128 bytes of internal RAM divided into four banks of 32 bytes each that can be selected using the bank select bits in the Program Status Word. It also has 4KB of internal ROM used to store program code. Both internal RAM and ROM use the same addresses but are selected using the nature of the operation (data vs code). External memory can be added for additional program storage and data as the 8051 supports interfacing with external RAM and ROM.

Uploaded by

Hitesh Ar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

MEMORY ORGANIZATION

OF
8051
INTERNAL MEMORY
A functioning computer must have memory for
program code bytes, commonly in ROM, and
RAM memory for variable data that can be
altered as the program runs
8051 has internal RAM (128 bytes) and ROM
(4Kbytes)
8051 uses the same address but in different
memories for code and data
Internal circuitry access the correct memory
based on the nature of the operation in progress
Can add memory externally if needed
8051 Internal RAM Organisation
1F R7
1E R6 7F
1D R5
Bank 3 1C R4
1B R3
1A R2
19 R1
18 R0
17 R7
16 R6
15 R5
Bank 2

14 R4
13 R3
12 R2
11 R1
10 R0
0F R7 2F 7F 78
0E R6 2E 77 70
Bank 1

0D R5 2D 6F 68
0C R4 2C 67 60
0B R3 2B 5F 58
0A R2 2A 57 50
09 R1 29 4F 48
08 R0 28 47 40
07 R7 27 3F 38
06 R6 26 37 30
05 R5 25 2F 28
Bank 0

04 R4 24 27 20
03 R3 23 1F 18
02 R2 22 17 10
01 R1 21 0F 08
00 R0 20 07 00 30
Working Registers Bit Addressable General Purpose
Program Status Word (PSW)
Bank Select Bits, RS1, & RS0 to select 1 of 4 register bank
Internal ROM
Internal ROM occupies the code address space
from 0000H to 0FFFH (Size = 4K byte)
Program addresses higher than 0FFFH will
automatically fetch code bytes from external
program memory
Code bytes can also be fetched exclusively from
an external memory by connecting the external
access pin (EA) to ground
Interfacing with External Program Memory
Interfacing with External Data Memory

You might also like