找回密码
 加入
搜索
查看: 6878|回复: 10

[效率算法] 请教一个位运算问题

  [复制链接]
发表于 2011-7-1 12:43:36 | 显示全部楼层 |阅读模式
悬赏100金钱已解决
本帖最后由 tryhi 于 2011-7-1 13:53 编辑

想实现这样的一个位运算,就是有条件的取反,BitNOT是32位全部取反,像这样
计算前:00000000111111000000000111111111
计算后:11111111000000111111111000000000

我想要实现的是根据一个数来取反,像这样
计算前:00000000111111000000000111111111
           11111111111110000000001111111111
计算后:11111111000001000000001000000000

不知道大家看明白没有,AU3提供的六个位运算,怎么组合好像都没有办法实现这样计算,不知道怎么实现
1、BitAnd
2、BitOR
3、BitXOR
4、BitNot
5、BitShift
6、BitRotate




续:---------------------------------------------------------
我发现我蛋疼了,我所说的有条件取反不就是BitXOR按位"异或"运算嘛,晕死~~~~~~~~~~~
看了P版第7之后恍然大悟

最佳答案

查看完整内容

我是来拿钱的 两个数先做一次bitor 再做一次bitand 再将前面得出的两个做一次bitxor
发表于 2011-7-1 12:43:37 | 显示全部楼层
我是来拿钱的
两个数先做一次bitor
再做一次bitand
再将前面得出的两个做一次bitxor

评分

参与人数 1金钱 +100 贡献 +15 收起 理由
tryhi + 100 + 15 第一个回复,钱加你

查看全部评分

 楼主| 发表于 2011-7-1 12:58:20 | 显示全部楼层
本帖最后由 tryhi 于 2011-7-1 13:09 编辑

发现P版发的位运算题目,先认真学习下
http://www.autoitx.com/forum.php?mod=viewthread&tid=18663



----------------------------------------------------------------
可惜不能回复,N多看不到。。。。


----------------------------------------------------------------
有P版的回复,足够了
发表于 2011-7-1 14:04:30 | 显示全部楼层
位运算是个好东西,这里有很多位运算技巧:Bit Twiddling Hacks  看到这些位运算的算法,真是让人拍案叫绝。

评分

参与人数 1贡献 +5 收起 理由
tryhi + 5

查看全部评分

 楼主| 发表于 2011-7-1 14:08:12 | 显示全部楼层
位运算是个好东西,这里有很多位运算技巧:  看到这些位运算的算法,真是让人拍案叫绝。
pusofalse 发表于 2011-7-1 14:04



    多谢P版指点。

全英文。。。。。阅读起来有压力。。。。
发表于 2011-7-1 14:19:45 | 显示全部楼层
Local $return
$number=BitXOR(0xFC01FF,0XFFF803FF)
for $i=31 to 0 step -1
        $return&=StringFormat("%d",BitAND(BitShift($number,$i),1))
Next
msgbox(0,0,$return)

评分

参与人数 1金钱 +30 贡献 +5 收起 理由
tryhi + 30 + 5 多谢

查看全部评分

 楼主| 发表于 2011-7-1 15:09:37 | 显示全部楼层
回复 6# 3mile


    这个……for32次。。。。。
发表于 2011-7-1 15:14:53 | 显示全部楼层
回复 7# tryhi
你不是要取32位的二进制值吗?
 楼主| 发表于 2011-7-1 15:44:48 | 显示全部楼层
回复  tryhi
你不是要取32位的二进制值吗?
3mile 发表于 2011-7-1 15:14


哦,明白了
发表于 2011-7-1 20:31:30 | 显示全部楼层
代码收下了...
发表于 2011-7-2 08:20:55 | 显示全部楼层
留个脚印  方便查看  英文不好  看网站累
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-5-10 13:48 , Processed in 0.099999 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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