搜索
bottom↓
回复: 9

uchar bdata flag=0; sbit FF=flag^0; 和bit FF=0;两种定义哪种好?

[复制链接]

出0入0汤圆

发表于 2012-7-31 12:02:51 | 显示全部楼层 |阅读模式
uchar bdata flag=0;
sbit FF=flag^0;  和
bit FF=0;两种定义有何具体区别

用哪种好

阿莫论坛20周年了!感谢大家的支持与爱护!!

曾经有一段真挚的爱情摆在我的面前,我没有珍惜,现在想起来,还好我没有珍惜……

出0入0汤圆

发表于 2012-7-31 12:36:00 | 显示全部楼层
都一样吧

出0入0汤圆

 楼主| 发表于 2012-7-31 12:37:43 | 显示全部楼层
raxb 发表于 2012-7-31 12:36
都一样吧

他们的地址分配呢? 现在程序写的标志位都不够用了,多定义一个标志位  程序就出乱

出0入0汤圆

发表于 2012-7-31 12:50:58 | 显示全部楼层
3050311118 发表于 2012-7-31 12:37
他们的地址分配呢? 现在程序写的标志位都不够用了,多定义一个标志位  程序就出乱 ...

第一个是人为指定的,第二个是自动分配的吧

出0入0汤圆

发表于 2012-7-31 12:59:06 | 显示全部楼层
相同点:把它当成一个位变量使用时,全相同。
不同点:
1.第一种占用一个字节;第二种占用一位.
2.第一种是先由编译器在可位寻址的空间里分配一个字节,然后变量FF占用该字节的第0位;第二种是由编译器直接在可位寻址的空间里分配一个位。
3.第一种还可以定义flag中的其他位,使用类似于C语言的位域;第二种仅仅是一个位变量。

出0入0汤圆

 楼主| 发表于 2012-7-31 12:59:12 | 显示全部楼层
raxb 发表于 2012-7-31 12:50
第一个是人为指定的,第二个是自动分配的吧

他们的地址都是  在
20---2F吗

出0入0汤圆

发表于 2012-7-31 13:06:43 | 显示全部楼层
dadatou 发表于 2012-7-31 12:59
相同点:把它当成一个位变量使用时,全相同。
不同点:
1.第一种占用一个字节;第二种占用一位.

第一种还可以是可位寻址的特殊功能寄存器啊,不一定在位段

出0入0汤圆

发表于 2012-7-31 13:07:29 | 显示全部楼层
3050311118 发表于 2012-7-31 12:59
他们的地址都是  在
20---2F吗

你想想

sbit LED = P1^0;

出0入0汤圆

发表于 2012-7-31 13:12:47 | 显示全部楼层
y574924080 发表于 2012-7-31 13:06
第一种还可以是可位寻址的特殊功能寄存器啊,不一定在位段

uchar bdata flag=0
这个不可能会到特殊功能寄存器里面去的,不然程序还不乱套啊?

出0入0汤圆

发表于 2012-7-31 13:19:34 | 显示全部楼层
dadatou 发表于 2012-7-31 13:12
uchar bdata flag=0
这个不可能会到特殊功能寄存器里面去的,不然程序还不乱套啊? ...

额,我理解错了



我理解为比较bit 和 sbit 的区别了
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片。注意:要连续压缩2次才能满足要求!!】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-8-26 17:28

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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