SFR

[复制链接]
 楼主| 发表于 2011-8-24 19:52 | 显示全部楼层 |阅读模式
8051单片机共有128B的内部RAM,地址为00H-7FH。80-FFH为特殊功能寄存器,也是128字节。特殊功能寄存器中有11个是可以位寻址的,而位寻址的位地址最低位与此功能寄存器的字节地址一样,只是一个表示字节,一个表示位。
问题:会发现可位寻址的特殊功能器向下7个字节基本都是空白,128字节的地址,51的特殊功能寄存器有21个,也就是占用了21字节,52的也只是26个。这样是不是有点浪费呢?有这么多字节的空余,为什么不做成内部RAM呢(因为SFR是不能被用户使用的)?
 楼主| 发表于 2011-8-25 07:21 | 显示全部楼层
这个问题很让人无语吗?。。。。。。。。。。。
发表于 2011-8-25 07:29 | 显示全部楼层
历史造成的原因
 楼主| 发表于 2011-8-25 07:44 | 显示全部楼层
历史原因??很纠结啊
发表于 2011-8-25 08:17 | 显示全部楼层
多余的是给后人用的
发表于 2011-8-25 08:19 | 显示全部楼层
设计时保留的地址,一般是为了将来扩展考虑。
发表于 2011-8-25 08:29 | 显示全部楼层
同6楼
参照现在增强型的51,就已经把以前预留的地址用上了。
其实你细心也可以发现,很多非intel的51都比intel8051的SFR要多。
 楼主| 发表于 2011-8-25 09:13 | 显示全部楼层
哦,是。看STC单片机的特殊功能,会发现它有一些特殊的SFR.但是就是觉得为以后留着也留得有点太多了,有点浪费资源,毕竟它的RAM和ROM就那么大。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

0

主题

199

帖子

1

粉丝
快速回复 返回顶部 返回列表