bit和sbit都是C51扩展的变量类型。

bit和int char之类的差不多,只不过char=8位, bit=1位而已。都是变量,编译器在编译过程中分配地址。除非你指定,否则这个地址是随机的。这个地址是整个可寻址空间,RAM+FLASH+扩展空间。bit只有0和1两种值,意义有点像Windows下VC中的BOOL。

sbit是对应可位寻址空间的一个位,可位寻址区:20H~2FH。一旦用了sbi xxx = REGE^6这样的定义,这个sbit量就确定地址了。sbit大部分是用在寄存器中的,方便对寄存器的某位进行操作的。

sbit 要在最外面定义,就是说必须定义成外部变量.

sbit定义的是SFR(特殊功能寄存器)的bit

sbit更像是类型定义,不像是变量定义。

bit 可以在外部或内部定义。

bit 动态分配的,有编译器来指定内存地址。

sbit: 指示说明性说明 
bit : 编译时分配空间

SFR 是特殊功能寄存器的总称,是单片计算机中的一组特殊的临时存储区域,用于动态存放计算机运行过程的一些状态信息、并依此做相应的控制。如楼上介绍的一样,MCS-51单片机就设有18个专用寄存器,P0-P3端口,定时/计数器T0、T1,TMOD、TCON、PCON、SCON 、PSW、IE、A、B、IP等等。SFR越多,编和控制功能越强、越灵活,但需要硬资源,所以系统设计时会根据需要来确定。

最新文章

  1. Atitti.dw cc 2015 绿色版本安装总结
  2. 手动安装Oracle的Maven依赖
  3. CentOS下搭建LAMP环境详解
  4. ecshop 网站标题不更新或内容不更新
  5. abort终止正在进行中的的ajax请求
  6. PHP Simulation HTTP Request(undone)
  7. Centos下使用Heartbeat实现集群[转]
  8. ZOJ 3822(求期望)
  9. XMPP——Smack[2]会话、消息监听、字体表情和聊天窗口控制
  10. hdu4597 Play Game
  11. UITextField 设置 placeholder 的字体颜色方法
  12. MAVEN学习(初级)
  13. 分享小知识:善用Group By排序
  14. NYOJ127 星际之门(一)(最小生成数的个数+高速幂)
  15. 【转录组入门】3:了解fastq测序数据
  16. 集合抽象数据类型的C语言实现
  17. CentOS7.4 ISCSI
  18. mysql winx64安装配置方法
  19. 雷林鹏分享:C# 数组(Array)
  20. SQL Server 导入超大脚本

热门文章

  1. typeof的探讨
  2. css3+javascript旋转的3d盒子
  3. sqoop简单介绍
  4. UMTSkeeper: keep your UMTS/GPRS/GSM connection alive automatically
  5. 【JAVA语法】01Java-变量与数据类型
  6. python SQLAchemy常用语法
  7. 关于NativeEvent的处理
  8. dbms_stats应用相关
  9. Docker的安装及加速
  10. electricity meter就是电表