单片机简答问题!!! 51单片机程序存储器和数据存储器存储空间为什么是重叠的?

发布网友 发布时间:2022-04-23 02:25

我来回答

2个回答

热心网友 时间:2023-10-11 15:45

51的存储器采用哈佛结构,就是KB程序存储器和KB数据存储器是各自单独编址,各自的地址空间。其地址编号是允许重叠的。
不会发生重叠的原因是:从硬件连线上,访问外部程序存储器(读取)是控制线EA、PSEN有效,访问外部数据存储器是RD(读)、WR(写有效;从指令系统来说,如果是程序主动访问,采用不同的指令来访问,一般MOVC访问程序存储器,MOVX访问外部数据存储器。
在MCS-51中外部I/O接口地址是和外部数据存储器的地址在一起统一编址的,换句话说,就是I/O地址是外部数据存储器地址空间的一部分,因此其和外部数据存储器一样可以和外部程序存储器重叠。

热心网友 时间:2023-10-11 15:46

重叠的? 谁说的?

不可能的事!

MCS-51 有 KB 程序存储器和 KB 数据存储器。

这些存储器,是采用了哈佛结构。

虽然,它们具有相同的地址号码,

但是,它们是各自单独编址,有各自的地址空间。

那么,这些存储器,并不是重叠的。

-----------------------

80x86 系列 CPU 的存储器,是“冯诺依曼”结构。

它们只有一个存储器,程序、数据,都放在一起。

8086 有 1M 的空间,分成四个段:代码段、数据段、堆栈段、附加段。

每个段,都有 KB 的寻址范围。

这些段,可以分离,也可以重叠一部分,甚至完全重合。

80x86 的存储器,以及这种使用方法,才有可能重叠。

而 51 单片机,绝对是不可能重叠的。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com