C51中,用sbit定义位变量,是不是就存放在单片机的可位寻址区(0x20--0x2F)呢?

[复制链接]
查看11 | 回复4 | 2009-4-2 22:58:49 | 显示全部楼层 |阅读模式
如果是的话,那sbit跟bdata不是没有区别了吗?
不好意思,打错了,应该是BIT,就是问BIT定义的位变量

回复

使用道具 举报

千问 | 2009-4-2 22:58:49 | 显示全部楼层
sbit与bdata是有区别的 sbit 是定义一个位变量 bdata 它只是说明你定义的变量的存储类型 比如 char bdata y 那么y这个变量是储存在可位寻址区域,可以进行字节或位访问sbit 与bit bit定义是在bdata中sbit 也可定义在bdata中,但此时必须是类似这样的形式 bdata char a sbit a0=a^0 还有一功能是如楼上说的用于特殊寄存器的位应用...
回复

使用道具 举报

千问 | 2009-4-2 22:58:49 | 显示全部楼层
BIT与bdata的区别 是 BIT 定义一个位变量 bdata定义一个字节变量 BIT与bdata变量是放在可位寻址区(0x20--0x2F)不是吧,,,,,没有悬赏分,,,,,,...
回复

使用道具 举报

千问 | 2009-4-2 22:58:49 | 显示全部楼层
sbit是特殊寄存器区,比如P1.1bit是可位寻址区(0x20--0x2F)...
回复

使用道具 举报

千问 | 2009-4-2 22:58:49 | 显示全部楼层
bit 利用它可以定义一个位标量,但不能定义位指针,也不能定义位数组。sbit 利用它可以访问单片机内部的RAM中可寻址位或特殊功能寄存器中的可寻址位。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行