资料介绍
本文档的主要内容详细介绍的是位域结构体变量在主流控制器ARM/DSP等编程时应该要注意那些事项
很多人搞电子软件编程的人都是从sram很紧缺的51单片机或其他低端单片机入门的。大家都知道,51单片机的有个可 bit寻址的空间,而对应的开发环境KEIL C51当然也支持bit变量。随着电子芯片产品的发展,现在的主控器林林种种,无论是 SRAM空间或者是COED空间,都有了相当大的提升,现在的sram动不动就几k,几十k。而51单片机的可位寻址功能没有得到继承,已经永久的成为古董。而在实际编程应用中,有些信息在存储时,并不需要占用一个完整的字节, 而只需占几个或一个二进制位。比如很多的变量,特别是标志位,都不需要占用一个byte的空间。常见的如:只占用一bit的的bool变量(0或 1)。那么,假如不是51单片机编译环境,而又为了省SRAM存储空间,需要这种不足一个byte空间的变量,又怎么办呢?位域结构体派上用场了。位域结构体,称为“位域”或“位段”。所谓“位域”是把一个字节中的二进位划分为几个不同的区域,并说明每个区域的位数。每个域有一个域名,允许在程序中按域名进行操作。 这样就可以把几个不同的对象用一个字节的二进制位域来表示。
当然了,还有其他位域名和位域长度缺省的情况,具体代表什么意思,大家可参考其他资料,很多有说明的。
位域结构体变量的定义和调用同一般的结构体变量一样,估计大家都很熟悉,在这里不再多说了,而我想说的是,位域结构体无疑是可以为我们节省一些变量存储空间。但是,正因为现在很多主控器,比如DSP,ARM,和其他的高端单片机,都没有了可位寻址的区域,它们要实现这种类似位操作的数据结构,就需要将当前bit所在的byte进行位&,或者移位等操作。而这,撇开代码是否美观不管,就生成代码量多了,需要占用的CPU周期多了。换句话说,为了节省这个SRAM,代价是代码臃肿了,机器跑起来慢了。本人曾经在DSP和ARM的开发环境,测试过,的确如此。如何进行取舍呢?那就看具体的情况了,假如SRAM 紧张,CODE不紧张,慢几个机器周期也无所谓,那行,就用上它。假如都紧张,而且CPU很忙,不能再忙了,那么就只能来个折中取舍了,正所谓,鱼与熊掌不可兼得啊。
- EMI走线注意事项合集 67次下载
- 三菱可编程控制器使用 10次下载
- PCB板布局要注意哪些事项 0次下载
- 使用万用表需要注意那些事项 19次下载
- STM32F103RCT6移植到STM32F103C8T6需要注意那些事项 38次下载
- 不同内存空间中定义变量在51单片机编程中需要注意那些事项 0次下载
- 进行超融合使用需要注意那些事项 0次下载
- 使用51单片机需要注意那五点注意事项 0次下载
- PTC样品选型时应该要注意那些事项 8次下载
- XG系列可编程控制器用户手册(定位控制篇) 12次下载
- VHDL 编程要注意问题 2次下载
- 移动电源布线中应该注意的事项 0次下载
- 电梯控制系统在方向控制环节要注意什么? 13次下载
- 汽车线束布置注意事项 103次下载
- 胆机使用的注意事项 46次下载
- 可编程控制器与变频器的连接和连接时应注意的问题 557次阅读
- SMT贴片产品加工中有哪些事项需要注意 3829次阅读
- 使用可编程控制器需要注意什么事项 4256次阅读
- 使用及安装变频器时应该注意些什么 804次阅读
- 控制阀应该如何安装需要注意那些事项 4149次阅读
- 伺服驱动器接地要注意哪些事项八大接地注意事项介绍 9917次阅读
- PLC编程需要注意哪些问题? 2131次阅读
- 仪表管路应该如何安装?有哪些需要注意问题? 9953次阅读
- PCB设计成败应该要注意的问题 1763次阅读
- 射频电路的设计中需要注意的一些小技巧 7103次阅读
- pfc电路中用mos管需要注意哪些事项? 1.9w次阅读
- 物联网应用技术应该要学习哪些课程 5.4w次阅读
- 如何用C语言对DMA控制器编程 5093次阅读
- PLC控制系统设计: PLC编程时应注意的问题 1302次阅读
- 白光LED焊接操作的注意事项 1339次阅读
下载排行
本周
- 1TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 2开关电源基础知识
- 5.73 MB | 6次下载 | 免费
- 3100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 4嵌入式linux-聊天程序设计
- 0.60 MB | 3次下载 | 免费
- 5基于FPGA的光纤通信系统的设计与实现
- 0.61 MB | 2次下载 | 免费
- 651单片机窗帘控制器仿真程序
- 1.93 MB | 2次下载 | 免费
- 751单片机大棚环境控制器仿真程序
- 1.10 MB | 2次下载 | 免费
- 8基于51单片机的RGB调色灯程序仿真
- 0.86 MB | 2次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33564次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6653次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537796次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191185次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多