C51 bit和sbit的区别_liming0931的博客-程序员秘密

技术标签: 扩展  C/C++  c  编译器  存储  windows  ie  单片机  

摘自: http://blog.csdn.net/dllbl/article/details/3839262

 

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越多,编和控制功能越强、越灵活,但需要硬资源,所以系统设计时会根据需要来确定。

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/liming0931/article/details/6960760

智能推荐

wow使用教程_"<i class=\"fa fa-wa fa-user\">"_ITDragon龙的博客-程序员秘密

wow使用教程简单易懂。技术:bootstrap,font-awesome,wow,animate.css;特点:让页面打开更优雅宗旨:从实战中学知识。效果图:学习代码: wow案例 div { width: 300px; height: 200px; border: 1px solid

loadrunner: 错误 27791_胡桓的博客-程序员秘密

Action.c(9): Continuing after Error -27791: Server "idctest.gyyx.cn" has shut down the connection prematurely出现上面的情况分析 有以下的几种的可能1.sqlserver数据库最大连接数设置太小也是一个原因2.请求时间太长而超时的话也会报这个错误。3.Req

论文翻译——AUV使用DPSS进行速度估计_dvl水下测速仪 速度准吗_weixin_49521345的博客-程序员秘密

Differential Pressure Sensor Speedometer forAutonomous Underwater Vehicle Velocity Estimation

H3C交换机S5500策略路由配置_weixin_34090562的博客-程序员秘密

网络情况如下:用户1网络:172.16.1.0/24用户2网络: 192.168.1.0/24至出口1网络:172.16.100.0/24至出口2网络:192.168.100.0/24实现功能:用户1通过互联网出口1,用户2通过互联网出口2。功能实现:在三层交换台机上配置默认路由,将数据包丢向192.168.100.253,再利用策略路由,凡是用户2网络IP192.168.1...

工行银企互联接入详解(3)--启动NC_工商银行nc客户端_程序员大阳的博客-程序员秘密

背景我们的程序通过NC与工行服务进行交互,所以需要配置NC的参数,并启动NC,我们的程序才能访问NC。注意配置和启动NC前,需要确保U盾证书已下载,并且U盾已连接电脑。打开NC同样启动startup.bat,然后浏览器地址栏输入http://127.0.0.1:3108。配置Https客户端点击Https客户端菜单,然后点击服务设置,点击【常规】选项卡,如下图:本地监听–IP:填...

OSError: Unable to open file (truncated file: eof = 5865472, sblock->base_addr = 0, stored_eof = 588_taxuewuhenxiaoer的博客-程序员秘密

from future import division 导入python未来支持的语言特征division(精确除法)from keras.layers import Input input()来实例化一个keras张量上面两行和下面没关系:遇到错误:OSError: Unable to open file (truncated file: eof = 5865472, sblock-...

随便推点

https://blog.csdn.net/u011410529/article/details/66974974/_weixin_44374531的博客-程序员秘密

这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...

如何在vue项目中系统的使用iconfont字体图标_客官不可以啊的博客-程序员秘密

如何在vue项目中系统的使用iconfont字体图标前言iconfont的特色官网注册在项目中使用的方式前言今天聊一下前端iconfont的使用方式,前端的图标经过这些年的发展,变得更系统化了,从最开始,我们使用的img图标,需要一个一个导入,再后来发明雪碧图,所以图标放在一张图上,利用定位进行使用,但是在添加新图标的时候,也会让之前图标的定位改变。维护起来也十分不方便,再到后来兴起fontawesome,用cdn进行引入,直到现在最终投入阿里iconfont的怀抱中。使用它可以方便快捷的管理整个项目的

小程序图书馆自习室座位预约_图书馆座位预约小程序_weixin_39217544的博客-程序员秘密

小程序图书馆座位预约前言一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('ignore')import sslssl.

将ListView中的内容导出到Word和Excel_c#导出listview数据到word_johnny_83的博客-程序员秘密

//---------------------------------------------------------------------------// 将ListView中的内容导出到Word文档//---------------------------------------------------------------------------void __fastcall ListV

聊聊前端监控—错误监控篇_奇舞周刊的博客-程序员秘密

编者按:本文转载自格子熊的掘金文章,快乐来一起学习吧!每当有人问起:你们的公司的这款应用用户体验怎么样呀?访问量怎么样?此时,你该怎么回答呢?你会回答:UV、PV 巴拉巴拉,秒开率、FP...

jQuery 表格插件_IMSIB的博客-程序员秘密

本文搜集了大量 jQuery 表格插件,帮助 Web 设计者更好地驾御 HTML 表格,你可以对表格进行横向和竖向排序,设置固定表头,对表格进行搜索,对大表格进行分页,对表格进行滚动,拖放操作等等。这些插件很多都包含详细的教程。希望能对大家的开发有帮助。jQuery 表格插件Flexigrid – Web 2.0 Javscript Grid for jQuery- 可变列宽,自动适应...

推荐文章

热门文章

相关标签