搜索
bottom↓
回复: 8

关于NIOS II中位域使用的几点疑问

[复制链接]

出0入0汤圆

发表于 2010-7-21 19:41:07 | 显示全部楼层 |阅读模式
struct  TT
{
alt_u8 a0:1;
alt u8 a1:1;
...
alt_u8 a7:1;
alt_u8 b0:1;
alt_u8 b1:1;
...
alt_u8 b7:1;
alt_u8 c0:1;
alt_u8 c1:1;
...
alt_u8 c7:1;
alt_u8 d0:1;
alt_u8 d1:1;
...
alt_u8 d7:1;

};
union  TG
{
alt_u64 all;
struct TT data;
}sec;
像我这样使用的话,有没有问题?

或者换句话:
这样说,我想将40位的数据存储起来,然后可以对每一位进行单独的操作,当对整体进行移位操作时,保证定义的40位是连续在一起的,即移位的时候不发生任何错误(例如我的40位数据是:11111111000000001111111100000000,对整体进行左移1位后,必须为11111110000000011111111000000000,不能出错)。想实现这个目的该怎么实现?
我对位域的使用不是很熟,所以
清高手指教!

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

知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)

出0入0汤圆

 楼主| 发表于 2010-7-21 19:42:13 | 显示全部楼层
自己给自己顶一下!

出0入0汤圆

 楼主| 发表于 2010-7-21 19:42:32 | 显示全部楼层
自己给自己顶一下!

出0入0汤圆

 楼主| 发表于 2010-7-21 19:54:28 | 显示全部楼层
自己给自己顶一下!
急啊!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

出0入0汤圆

发表于 2010-7-21 21:15:58 | 显示全部楼层
不推荐使用位域,是C语言被扫进旮旯里的东西,可以用位运算符替代

出0入0汤圆

发表于 2010-7-22 09:12:26 | 显示全部楼层
楼上具体讲一下,怎么用位运算代替呢?我觉得位域很好啊,而且非常灵活

出0入0汤圆

发表于 2010-7-22 09:21:11 | 显示全部楼层
回复【4楼】cfqxdgr  
-----------------------------------------------------------------------

够装13。

出0入0汤圆

发表于 2010-7-22 13:10:10 | 显示全部楼层
装你娘的蛋,你有没有看过用了位域编译出来的玩意是什么垃圾不,有多臃肿你知道不??有没有了解过不同编译器之间对位域处理的区别?写这种高度不可移植的代码, 会给后续的维护带来多大问题你想过没?

出0入0汤圆

发表于 2010-7-22 14:53:14 | 显示全部楼层
回复【7楼】cfqxdgr  
-----------------------------------------------------------------------

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

本版积分规则

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

GMT+8, 2024-7-24 17:32

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

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