| Both sides previous revisionPrevious revision | |
| en:multiasm:cs:chapter_3_6 [2026/06/21 14:50] – pczekalski | en:multiasm:cs:chapter_3_6 [2026/06/22 17:19] (current) – pczekalski |
|---|
| |
| The computer cannot work without memory. The processor fetches instructions from memory, and data is stored there as well. In this chapter, we will discuss memory types, technologies and their properties. | The computer cannot work without memory. The processor fetches instructions from memory, and data is stored there as well. In this chapter, we will discuss memory types, technologies and their properties. |
| The overall view of computer memory can be represented by the memory hierarchy triangle shown in Fig. {{ref>memtriangle}}, where available size decreases as one moves up, but access time decreases significantly. It is visible that the fastest memory in the computer is the set of internal registers, next is the cache memory, operational memory (RAM), disk drive, and the slowest, but the largest is the memory available via the computer network - usually the Internet. | The overall view of computer memory can be represented by the memory hierarchy triangle shown in figure {{ref>memtriangle}}, where available size decreases as one moves up, but access time decreases significantly. It is visible that the fastest memory in the computer is the set of internal registers, next is the cache memory, operational memory (RAM), disk drive, and the slowest, but the largest is the memory available via the computer network - usually the Internet. |
| |
| <figure memtriangle> | <figure memtriangle> |
| The size of the program address space is determined by the number of bits of the Instruction Pointer register. In many 8-bit microprocessors, the IP size is 16 bits. It means that the size of the address space, expressed in the number of distinct addresses the processor can reach, is 2^16 = 65536 (64k). It is too small for larger machines, such as personal computers, so the IP address is 64 bits (although only 48 are used). | The size of the program address space is determined by the number of bits of the Instruction Pointer register. In many 8-bit microprocessors, the IP size is 16 bits. It means that the size of the address space, expressed in the number of distinct addresses the processor can reach, is 2^16 = 65536 (64k). It is too small for larger machines, such as personal computers, so the IP address is 64 bits (although only 48 are used). |
| |
| The size of the possible data address space is determined by the addressing modes and the sizes of the index registers used for indirect addressing. In 8-bit microprocessors, it is sometimes possible to join two 8-bit registers to achieve an address space of 64k, the same as the program's. In personal computers, the program and data address spaces overlap, so the data address space is the same as the program address space. | The size of the possible data address space is determined by the addressing modes and the sizes of the index registers used for indirect addressing. In 8-bit microprocessors, it is sometimes possible to join two 8-bit registers to achieve a 64k address space, the same as the program's. In personal computers, the program and data address spaces overlap, so the data address space is the same as the program address space. |
| |
| ===== Program memory ===== | ===== Program memory ===== |