51单片机 pc程序计数器
各位大侠请问pcirid这些寄存器在ram内吗?那ram内除了sfr外的那些字节做什么?岂不是浪费了?我是说在高128字节ram内除了21个sfr外,其他的字节呢?pc,...
各位大侠 请问pc ir id 这些寄存器在ram内吗?那ram内除了sfr外的那些字节做什么?岂不是浪费了?
我是说在高128字节ram内除了21个sfr外,其他的字节呢?pc,ir,id在里面吗? 这些在高128字节里除了sfr外的字节呢? 展开
我是说在高128字节ram内除了21个sfr外,其他的字节呢?pc,ir,id在里面吗? 这些在高128字节里除了sfr外的字节呢? 展开
展开全部
特殊寄存器不在RAM内,只是和RAM统一编址,PC指针在CPU内。
补充一下:
从结构角度讲,特殊寄存器和RAM 不可能在一起,因为他们根本就不是一样的东西。只是为了使用方便,统一编址。
CPU对RAM 对特殊寄存器甚至你自己接的外设都是采用同样的寻址方式,所以为了用户使用方便把特殊寄存器和RAM统一编址。
而作为一个使用者,所关心的应该是关心的是RAM到底有多大。
51单片机的RAM 128字节,只是80-ff这么大,所以说它的存储器就这么大,其他空余的地方根本就没有RAM。所以不会浪费。
补充一下:
从结构角度讲,特殊寄存器和RAM 不可能在一起,因为他们根本就不是一样的东西。只是为了使用方便,统一编址。
CPU对RAM 对特殊寄存器甚至你自己接的外设都是采用同样的寻址方式,所以为了用户使用方便把特殊寄存器和RAM统一编址。
而作为一个使用者,所关心的应该是关心的是RAM到底有多大。
51单片机的RAM 128字节,只是80-ff这么大,所以说它的存储器就这么大,其他空余的地方根本就没有RAM。所以不会浪费。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
特殊寄存器SFR是在RAM里面的,位于高128位中,而真正能给用户自由使用的RAM则是位于RAM的低128位(52的话,高128位也是可以给用户自由使用的,只不过52对于高128位的RAM的访问,用寻址方式区分,这里不做讨论)。
用户自由使用的RAM是给用户存放中间结果或暂时数据储存的。
内部RAM的大小,对于同样结构的MCU来说,也决定了在设计软件在功能的复杂程度,RAM比较小的,就决定了功能就不能太复杂
当然RAM也能外部扩展,但是其访问速度远远低于内部RAM的访问。
用户自由使用的RAM是给用户存放中间结果或暂时数据储存的。
内部RAM的大小,对于同样结构的MCU来说,也决定了在设计软件在功能的复杂程度,RAM比较小的,就决定了功能就不能太复杂
当然RAM也能外部扩展,但是其访问速度远远低于内部RAM的访问。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
特殊寄存器怎么可能位于RAM中呢,只不过高128byteRAM地址与特殊寄存器地址重叠而已,通过访问方式区别罢了。特殊寄存器是单片机片内外设用来控制用的,通过内部总线与CPU相连。
RAM作用:
一、存放一些程序变量(部分变量编译器把它存放在了R0,R1等寄存器中了)
二、函数调用时的堆栈存放
RAM作用:
一、存放一些程序变量(部分变量编译器把它存放在了R0,R1等寄存器中了)
二、函数调用时的堆栈存放
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询