单片机ROM和PAM地址可相同,但不发生冲突,为什么

如题所述

1. 从软件层面解释

因为读取 ROM 和 RAM 内部资料的指令不同, 读 ROM 内部资料的指令是 MOVC, 读 外部RAM 资料的指令是 MOVX, 读 内部RAM 资料的指令是 MOV
自然不会冲突了

2. 从硬件层面解释

RAM 和 ROM 各有各的致能讯号, 单片机读取其中一个, 自然不会冲突了
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-06-25
这个因为51系列内存储器采用哈佛结构,即RAM和ROM是分开的,有不同的寻址方式和操作指令;
而8086体系(PC机)采用的冯诺依曼结构,统一编址采用相同的寻址指令,地址是不同和唯一的;
第2个回答  2010-06-25
PAM是什么呢??? 你说的应该是ROM与RAM吧??

汇编编绎器会自动根据命令.来判断.
比如 MOV A,00FFH
因为这条指令本身的功能就是将RAM中数据送ACC的,而不是将ROM数送ACC.
编译时自然知道是RAM的地址.
而ROM操作有它专用的指令.
比如读ROM操作常用的命令有两个 MOVC A, @A + DPTR或MOVC A, @A + PC
看到没这里是MOVC而上面RAM用的是MOV

碰到MOV指令它自然会操作RAM.碰到MOVC指令它自然会操作ROM. 实际上说地址一样只能说是地址的名字一样,真正的物理位置是不一样的
第3个回答  2010-06-25
一个是在地址总线上,一个是在数据总线吧

单片机ROM和PAM地址可相同,但不发生冲突,为什么
因为读取 ROM 和 RAM 内部资料的指令不同, 读 ROM 内部资料的指令是 MOVC, 读 外部RAM 资料的指令是 MOVX, 读 内部RAM 资料的指令是 MOV 自然不会冲突了 2. 从硬件层面解释 RAM 和 ROM 各有各的致能讯号, 单片机读取其中一个, 自然不会冲突了 ...

单片机的程序存储器和数据存储器共处同一地址空间为什么不会发生...
表面上看:他们的地址可能是相同的,含义不同。体现在两个空间数据的访问,和程序运行读指令两方面。【1】两者数据的寻址方式是不同的,这也体现在了对应的指令形式的不同。一个是MOVC,一个是MOVX。这是在把存储区都当数据对待时的情况。当外扩rom时,PSEN给出读有效。【2】程序运行时,程序通过P...

单片机片外Rom和片内Ram共用数据线为什么不冲突
程序存储器和数据存储器虽然共用16位地址线和8位数据线,但由于数据存储器的读和写由(\/RD)和(\/WR)信号控制,而程序存储器由读选通信号(\/PSEN)控制,这些信号在逻辑上时序上不会产生冲突,因此,两者虽然共处于同一地址空间,但由于控制信号不同,所以不会发生总线冲突。

单片机的程序存储器和数据存储器共处同一地址空间为什么不会发生总线...
2、地址相同,但是,使用的指令不同,MOVC,MOVX。P3口的第二功能很丰富:串行口RX,TX、外部中断INT0,INT1、定时记数器T0,T1、读写WR,RD。一个是位地址,一个是字节地址,采用访问的指令不同,7C在位地址寻址区的2F中,PSW记录累加器A的状态,CY,AC,OV等,具体是第7位进位或者借位时,CY...

...器共处同一个地址空间,为什么不会发生总线冲突?
控制信号不一样:片外程序存储器工作,要PSEN信号有效。片外数据存储器工作,要RD或WR信号有效;软件上,寻址不一样,片外程序存储器工作,要用MOVC,片外数据存储器工作,要用MOVX;虽然地址都是0000H~FFFFH,不会发生冲突的。

...器共处同一个地址空间,为什么不会发生总线冲突?
访问片外ROM使用MOVC指令,对芯片的控制信号为#PSEN,而访问片外RAM使用的是MOVX指令,控制信号为#RD和#WR。二者的控制信号不同,就不会存在地址重叠的现象了。

...存储器的地址空间允许重叠而不会发生冲突,为什么?
程序相当于给微处理器处理问题的一系列命令。其实程序和数据一样,都是由机器码组成的代码串。只是程序代码则存放于程序存储器中。MCS-51具有64kB程序存储器寻址空间,它是用于存放用户程序、数据和表格等信息。对于内部无ROM的8031单片机,它的程序存储器必须外接,空间地址为64kB,此时单片机的端必须接地...

...存储器共处同一地址空间为什么不会发生总线冲突
访问外部程序存储器时用的是MOVC 访问外部数据存储器时用的是MOVX 而在执行命令的时候RD\/WR\/PSEN三个引脚的电平是不同的..因而是不会产生冲突的...

为什么MCS-51单片机的程序存储器和数据存储器共处同一地址空间而不会...
编写代码后,不管是汇编还是C代码都会被编译器,编译为机器代码,机器代码中包括操作码和操作数。而在读取程序存储器和读写数据存储器的内容 可以简单的说成是操作数.如果在操作 程序存储器 和 读写数据存储器 的操作数相同.而操作码不相同。这样就不会发生总线冲突了!

单片机中的程序存储器和数据存储器可以有相同的地址,而单片机在对这两...
所以每次读的数据是针对那个地址对应的寄存器操作的,不会发生混乱。写数据时一样,先寻址,再写数据,数据就写入刚才寻址时的地址对应的那个寄存器里去了。第二、程序存储器、数据存储器有不同的选通信号,在一个指令周期里,是不同的时间选通的,所以不会混乱。第三。选通的引脚不同。拿片外数据...

相似回答