登录/注册

8086微处理器存储结构

更多

8086 微处理器的存储结构具有以下关键特点,采用分段模型来管理其 1 MB 的物理内存空间:

  1. 物理地址空间:

    • 8086 拥有 20 根地址线 (A0 - A19)
    • 这使得其能够直接寻址的最大物理内存空间为 2^20 = 1,048,576 字节 = 1 MB。地址范围从 00000HFFFFFH
  2. 关键问题与解决方案 - 分段:

    • CPU 内部的寄存器(如 AX, BX, CX, DX, SP, BP, SI, DI 等)宽度是 16 位
    • 16 位寄存器最多只能寻址 64 KB (0000HFFFFH)。
    • 矛盾: 16位寄存器无法直接寻址20位地址线的1MB空间。
    • 解决方案:分段内存模型 (Segmented Memory Model)。内存被划分为逻辑段。
  3. 分段机制:

    • 段寄存器 (Segment Registers): 有 4 个 16 位的专用段寄存器:
      • CS (Code Segment): 指向当前执行的指令代码所在的段。
      • DS (Data Segment): 指向程序默认访问数据所在的段。
      • SS (Stack Segment): 指向程序当前栈所在的段。
      • ES (Extra Segment): 指向一个“附加”的数据段,常用于字符串操作的目标段或辅助数据区。
    • 段基地址 (Segment Base Address): 段寄存器中存储的 16 位值代表一个段选择器或更准确地理解为一个段基地址的高 16 位
      • 在地址计算时,CPU 会将段寄存器中的值 向左移 4 位(相当于乘以 16 / 0x10)。这样就形成了一个 20 位的段起始地址(段基地址)
      • 例如:如果 CS = 0x1234,那么代码段的物理起始地址就是 0x1234 * 0x10 = 0x12340
    • 偏移地址 (Offset Address): 这是内存单元在特定段内的位置,相对于该段的起始地址(段基址)。
      • IP (Instruction Pointer) 寄存器(在代码段中)、指针寄存器 (如 SI, DI, BP)其他提供偏移的指令操作数 提供。
      • 偏移地址也是 16 位 (0000H - FFFFH),因此每个段的最大大小是 64 KB
    • 物理地址 (Physical Address) 计算:
      • *物理地址 = (段寄存器值 16) + 偏移地址**
      • 从数学上看:物理地址 = 段基地址 + 偏移地址
      • 例如:DS = 0x2000, BX = 0x0100。要访问数据的物理地址是 (0x2000 * 0x10) + 0x0100 = 0x20000 + 0x0100 = 0x20100
      • 物理地址生成由 CPU 内部的 地址加法器 (Address Adder) 硬件完成。
  4. 段重叠与覆盖:

    • 由于段基地址是通过寄存器值左移4位确定的,并且段大小为64KB(最大偏移 0xFFFF),使得:
      • 连续的段寄存器值(例如 CS=0x1000 和 DS=0x1001)所指向的物理段在内存中严重重叠。第一个段从 0x100000x1FFFF,第二个段从 0x100100x2000F,重叠范围很大 (0x100100x1FFFF)。
      • 相邻的段寄存器值(例如 CS=0x1000 和 DS=0x2000)所指向的段是物理上相邻但不重叠的。第一个段结束于 0x1FFFF,第二个段起始于 0x20000
  5. 关键内存区域:

    • 00000H - 003FFH (1KB):中断向量表 (Interrupt Vector Table - IVT)。存放 256 个中断服务程序入口地址(每个地址由 CS:IP 构成,占 4 字节)。
    • FFFF0H - FFFFFH (16字节):启动区 (Boot Sector)。复位后,CPU 从 FFFF0H 开始执行第一条指令。通常是一条 JMP 指令,跳转到实际的 BIOS 启动代码入口。
    • ROM 区域: BIOS、固件通常映射在高地址区域(如 F0000H 以上)。
    • RAM 区域: 操作系统、应用程序、数据主要存放在低地址区域(如 00400H9FFFFH 或更高)。
  6. 字节顺序(小端序):

    • Intel 处理器(包括8086)使用 小端字节序 (Little-Endian) 存储多字节数据(字、双字)。
    • 低地址存放数据的最低有效字节 (LSB),高地址存放最高有效字节 (MSB)
    • 例如,字 0x1234(占2个字节)存放在地址 0x10000x1001 时:
      • 0x1000: 34H (低位字节)
      • 0x1001: 12H (高位字节)
  7. 对齐(非严格要求):

    • 8086 可以访问奇地址或偶地址开始的数据(字节、字)。
    • 但访问奇地址上的字 (2字节) 需要两个总线周期(先读低字节,再读高字节),而访问偶地址的字只需要一个总线周期,效率更高。
    • 因此,为了提高性能,建议将字数据存放在偶地址(字对齐)
  8. 内存组织 - 存储体:

    • 为了在 16 位数据总线 (8086) 上高效访问字节和字,1MB 的物理内存通常被划分为两个并行的 512 KB 存储体
      • 偶地址存储体 (Low Bank / Even Bank): 连接数据总线的低 8 位 (D0-D7)。存放所有偶地址的字节 (0, 2, 4,...) 以及字的低字节。
      • 奇地址存储体 (High Bank / Odd Bank): 连接数据总线的高 8 位 (D8-D15)。存放所有奇地址的字节 (1, 3, 5,...) 以及字的高字节。
    • CPU 通过地址线 A0 和 BHE# (Bus High Enable) 信号来选择访问哪个存储体(一个或两个同时)。这优化了单字节和双字节(字)的访问速度。

总结:

8086 微处理器采用分段内存模型管理其 1 MB 的物理地址空间。它使用 16 位的段寄存器 (CS, DS, SS, ES) 存储段基地址的高 16 位(隐含左移 4 位形成 20 位段基址),结合 16 位的偏移地址 (IP, SP, BP, SI, DI 或指令操作数提供) 来确定最终 20 位的物理地址。每个逻辑段最大可达 64 KB。内存访问采用小端字节序,虽然对数据对齐没有严格硬件限制,但字对齐(存放在偶地址)能显著提高性能。实际物理内存通常划分为偶地址和奇地址两个 512 KB 存储体以提高字节和字访问效率。重要的固定区域包括中断向量表 (00000H-003FFH) 和复位启动地址 (FFFF0H)。这种分段机制有效克服了 16 位寄存器访问 1 MB 物理地址空间的限制。

嵌入式微处理器体系结构 嵌入式微处理器原理与应用

部组成和相互连接的方式。常见的嵌入式微处理器体系结构主要包括冯·诺依曼体系结构、哈佛体系

2024-05-04 16:53:00

主流嵌入式微处理器结构与原理是什么 常见的嵌入式微处理器类型包括

主流嵌入式微处理器的结构与原理 嵌入式微处理器是一种专门设计用于嵌入式系统的微处理器

2024-04-21 09:32:16

嵌入式微处理器的体系结构

嵌入式微处理器的体系结构通常包括核心架构、指令集架构、存储体系架构和系统总线架构等关键组成部分。

2024-03-29 11:48:42

微机原理02--8086结构

结构1微处理器的外部结构总线的功能微处理器的内部

资料下载 佚名 2021-12-09 13:36:13

微处理器体系结构

《微处理器体系结构》适合作为高等院校集成电路设计相关专业工程硕士的教材,并可以作为微处理器硬件与软件设计相关专业高年级本科生和研究生的教材。

资料下载 ah此生不换 2021-04-14 10:29:03

微处理器体系结构

微处理器体系结构说明。

资料下载 姚小熊27 2021-04-12 11:42:14

ARM嵌入式微处理器体系结构

嵌入式微处理器是嵌入式系统的核心。目前32位嵌入式微处理器是市场的主流。

资料下载 姚小熊27 2021-04-09 09:28:00

使用PROTUES仿真8086微处理器芯片的资料合集

本文档的主要内容详细介绍的是使用PROTUES仿真8086微处理器芯片的资料合集。

资料下载 原罪心中人 2020-04-29 08:00:00

微处理器的外部结构是怎样构成的

结构1微处理器的外部结构总线的功能微处理器的内部

2022-02-14 07:40:41

16位和32位微处理器的相关资料推荐

第2章 16位和32位微处理器微处理器的性能指标最主要的是以下两项:1.字长2.主频一、16位微处理器80868086是Intel系列的16位

2022-01-25 06:19:32

了解微处理器的基本操作

1.主要学习嵌入式系统概述了解微处理器的基本操作。理解微处理器体系结构的基本概念。机器语言程序的基础知识。用汇编语言设计和编写程序2.嵌入式系统

2021-12-17 07:50:05

探讨一下嵌入式微处理器体系结构

嵌入式微处理器体系结构17As discussed earlier, the 8086 microprocessor consists of t

2021-12-17 06:26:45

介绍嵌入式微处理器体系结构冯诺依曼结构

嵌入式微处理器体系结构冯诺依曼结构:程序和数据共用一个存储空间,程序指令

2021-12-17 06:04:03

嵌入式微处理器体系结构

处理器DSP4、嵌入式片上系统SOC(System-on-a-Chip)三、多核处理器四、嵌入式操作系统EOS五、嵌入式实时操作系统RTOS六、嵌入式系统设计七、嵌入式系统的软件一、嵌入式

2021-11-08 06:57:02

什么是总线微处理器

总线(元件级总线)微型计算机:由CPU、内存储器、输入输出接口电路组成!以及内总线(系统总线)微型计算机系统:以微型计算机为主体,配上系统软件,应用软件,外存储器,输入输出设备,电源,面板和机架!以及外总线(通信总线

2021-07-22 06:48:44
7天热门专题 换一换
相关标签