标题:c语言中数据运算和符号的问题((i0>>0&0x1)*2-1)
取消只看楼主
zzmx
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2020-2-4
结帖率:75%
已结贴  问题点数:10 回复次数:1 
c语言中数据运算和符号的问题((i0>>0&0x1)*2-1)
最近在学习前辈们写的数据分析程序,有几个地方看不懂。
这是其中的一行程序
xx[0]=2.0*(wire[0+off][i1]-4.25)+((i0>>0&0x1)*2-1)*drft[0];

我主要是((i0>>0&0x1)*2-1)看不懂是什么意思,或许这是某种运算的法则?
还请知道的人指点一下,谢谢!
搜索更多相关主题的帖子: 一行 数据 c语言 符号 运算 
2020-09-28 10:02
zzmx
Rank: 1
等 级:新手上路
帖 子:48
专家分:0
注 册:2020-2-4
得分:0 
回复 2楼 纯蓝之刃
你好,这一段的代码是这样的,i0是一个十进制数。它右移0位变成什么呢?
程序代码:
 for(Int_t i0=0;i0<16;i0++){
        xx[0]=2.0*(wire[0+off][i1]-4.25)+((i0>>0&0x1)*2-1)*drft[0];
        xx[1]=2.0*(wire[1+off][i2]-4.75)-((i0>>1&0x1)*2-1)*drft[1];
        xx[2]=2.0*(wire[2+off][i3]-4.25)+((i0>>2&0x1)*2-1)*drft[2];
        xx[3]=2.0*(wire[3+off][i4]-4.75)-((i0>>3&0x1)*2-1)*drft[3];}

这只是其中一小段代码,后面还有其他运算。
2020-09-28 10:14



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-503297-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013503 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved