找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1856|回复: 19

[求助] 理解boole

[复制链接]

已领礼包: 604个

财富等级: 财运亨通

发表于 2013-8-20 13:58:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 /db_自贡黄明儒_ 于 2013-8-20 14:39 编辑

boole一直是我的一个心结,对于怎么用,一搜高手都按二进制给出标准答案,对于计算机知识很空白的我来说,理解起来相当麻烦
下面是我自己的总结,大家看对否?
;;boole 后面标准的是跟1 6 7 8,对应AND XOR OR NOR
(Boole 1 12 6);返回4, 因为12=4+8 6=2+4,都有4,同(logand 12 6)
(Boole 6 6 5);返回3, 6=2+4 5=1+4,除去相同的4, 1+2=3
(Boole 7 6 5);返回3, 6=2+4 5=1+4   1+2+4=7
(Boole 8 6 5);返回-8,6=2+4 5=1+4   -1-(1+2+4)=-8

(Boole 3 6 5);返回倒数第二位6
(Boole 5 1 2);返回最后一位2
(Boole 2 6 5);返回2,6=2+4 5=1+4  倒数第二位6(2+4)中除去相同的4
(Boole 4 6 5);返回1,6=2+4 5=1+4  最后一位5(1+4)中除去相同的4

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2013-8-20 14:40:04 | 显示全部楼层
虽然boole这个函数不大好理解,但只要仔细看看帮助文件,帮助里的解释还是非常清楚的!
用作一个通用的按位逻辑运算函数
(Boole operator int1 [int2 ...])
参数
operator
0 和 15 之间的整数,代表 16 种可能的双变量布尔函数。
int1, int2...
整数。
请注意 Boole 可以接受单一整数参数,但结果不可预料。
后续的整数参数将根据函数和如下真值表逐位(逻辑上)组合在一起:
布尔真值表

Int1
Int2
操作位

0
0
8

0
1
4

1
0
2

1
1
1
参数 int1 的每一位与参数 int2 的对应位相匹配,指定真值表中的某一行。运算结果的该位可能是 0 或 1,这取决于真值表中这一行所对应的操作位的设置情况。
如果相应操作位和真值表一致,则结果位为 1;否则结果位为 0。operator 参数的某些取值等效于标准布尔运算 AND(与)、OR(或)、XOR(异或)和 NOT(非)。
Boole 函数的位值

运算符
运算
结果位为 1 的条件

1
AND
两个输入位均为 1  

6
XOR
两个输入位仅有一个为 1  

7
OR
有一个或两个输入位为 1  

8
NOR
两个输入位均为 0(1 的补)
返回值
整数。
示例
下列代码进行数 12 和 5 的逻辑与 (AND) 运算:
命令: (Boole 1 12 5)
4
下列代码进行数 6 和 5 的逻辑异或 (XOR) 运算:
命令: (Boole 6 6 5)
3
也可以使用 operator 的其他值来执行没有标准名的其他布尔运算。例如,如果 operator 是 4,那么只有在 int2 的位为 1,而 int1
的对应位为 0 时,其结果位才为 1,因此:
命令: (Boole 4 3 14)
12

点评

那是因为你熟习二进制  发表于 2013-8-20 14:42
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-20 14:53:06 | 显示全部楼层
本帖最后由 newer 于 2013-8-20 15:00 编辑

按位操作是数字逻辑电路里面很重要的操作,用来实现各种“门”操作,与门,或门,非门,与或门 ,与非门....

记住是按位操作,二进制位


QQ截图20130820145839.jpg

QQ截图20130820145854.jpg

上面是标准的操作,基本涵盖了各种逻辑运算。

你不清楚的那个3,按布尔真值表表述,只有在两位都为1,或者INT1=1,并且INT2=0的时候才为1,
6----> 0110    (INT1)
5----> 0101    (INT2)
---------------------------
           0110   (结果)
              6     (十进制)   

验证:
  1. 命令: (BOOLE 3 6 5)
  2. 6     
复制代码
明白了吗?

你算下:(boole 5 6 5) 等于多少?

点评

我试了,(BOOLE 5 6 5)总是最后一位5  发表于 2013-8-20 15:12
学过,与门,或门,非门,与或门 我差不多都还给老师了。现在是想不再去理解二进制而又得结果  详情 回复 发表于 2013-8-20 15:06
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-8-20 15:03:42 来自手机 | 显示全部楼层
一直还没用过这个高深函数:)来自: Android客户端

点评

我也是从不用它  发表于 2013-8-20 15:07
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

 楼主| 发表于 2013-8-20 15:06:40 | 显示全部楼层
newer 发表于 2013-8-20 14:53
按位操作是数字逻辑电路里面很重要的操作,用来实现各种“门”操作,与门,或门,非门,与或门 ,与非门... ...

学过,与门,或门,非门,与或门
我差不多都还给老师了。现在是想不再去理解二进制而又得结果{:soso_e117:}

点评

你不用理解二进制,只要会把二进制写出来就行了,按位就是指的二进制位,你避不开的。 二进制用系统的计算器直接给你算出来,也不用你算了。 其实,主要记住按位与和按位或就够了,个别情况可能用到异或XOR,逻  详情 回复 发表于 2013-8-20 15:33
[attachimg]4991[/attachimg] 那你明白(boole 5 6 5)为什么等于5了吗? 看上面真值表,逻辑运算符5是 第二行和最后一行的组合, 只有两位都为1,或者 INT1=0并且INT2=1的时候结果才为1 6----》0110 5----》0  详情 回复 发表于 2013-8-20 15:27
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-20 15:27:24 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2013-8-20 15:06
学过,与门,或门,非门,与或门
我差不多都还给老师了。现在是想不再去理解二进制而又得结果{:soso_e11 ...

QQ截图20130820145839.jpg

那你明白(boole 5 6 5)为什么等于5了吗?

看上面真值表,逻辑运算符5是 第二行和最后一行的组合, 只有两位都为1,或者 INT1=0并且INT2=1的时候结果才为1
6----》0110
5----》0101
------------------------
          0101=5

既然是按位操作,当然离不开二进制了。其实二进制很好理解,0 2 4 8 16 32 64 128 512 1024 2048.。。。。对于位有1,就是2^n

评分

参与人数 1D豆 +5 收起 理由
WhoCanSay + 5 热心帮忙奖!

查看全部评分

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-20 15:33:28 | 显示全部楼层
/db_自贡黄明儒_ 发表于 2013-8-20 15:06
学过,与门,或门,非门,与或门
我差不多都还给老师了。现在是想不再去理解二进制而又得结果{:soso_e11 ...

你不用理解二进制,只要会把二进制写出来就行了,按位就是指的二进制位,你避不开的。
二进制用系统的计算器直接给你算出来,也不用你算了。

其实,主要记住按位与和按位或就够了,个别情况可能用到异或XOR,逻辑IF分支必须要理解的。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

 楼主| 发表于 2013-8-20 16:06:27 | 显示全部楼层
逻辑运算符5是 第二行和最后一行的组合, 只有两位都为1,或者 INT1=0并且INT2=1的时候结果才为1//见上表,可以理解
6----》0110//二进制可以理解
5----》0101//二进制可以理解
------------------------
          0101=5//进行什么计算得出呢,与?

点评

是对应位的操作 6----》0110//二进制可以理解 5----》0101//二进制可以理解 ------------------------ 0101=5//进行什么计算得出呢? 0101 这样来的, INT1 是6 INT2是5 0----- INT1(0) INT  详情 回复 发表于 2013-8-20 16:31
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-20 16:31:46 | 显示全部楼层
本帖最后由 newer 于 2013-8-20 16:33 编辑
/db_自贡黄明儒_ 发表于 2013-8-20 16:06
逻辑运算符5是 第二行和最后一行的组合, 只有两位都为1,或者 INT1=0并且INT2=1的时候结果才为1//见上表, ...

是对应位的操作,6的0位对5的0位运算,6的1位对5的1位运算。。。。

6----》0110//二进制可以理解
5----》0101//二进制可以理解
------------------------
          0101=5//进行什么计算得出呢?


0101 这样来的, INT1 是6  INT2是5

0----- INT1(0) INT2(0)  按规则等于0
1------INT1(1) INT2(1)  按规则等于1
0------INT1(1) INT2(0)  按规则等于0
1------INT1(0) INT2(1)  按规则等于1

规则是什么?  (只有两位都为1,或者 INT1=0并且INT2=1的时候结果才为1)

点评

懂了,谢谢N版热情讲解!!  发表于 2013-8-20 16:38
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1268个

财富等级: 财源广进

发表于 2013-8-20 16:36:00 来自手机 | 显示全部楼层
排成两行上下比较,这样好理解来自: Android客户端
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2013-8-20 18:13:22 | 显示全部楼层
newer 发表于 2013-8-20 15:27
那你明白(boole 5 6 5)为什么等于5了吗?

看上面真值表,逻辑运算符5是 第二行和最后一行的组合, ...

不需要搞这么复杂吧?就and、or、xor、nor也就够了,这个1、4组合又是什么实际意思呢?
我晓得了,单位招聘,应聘的有小张和小李,领导说:“不管小张是否被录取,小李一定是要录取的”。
难道这位领导是李刚?

点评

那不是在给他讲怎么算出来的原理嘛。讲这个按位操作,还真就是不常用的来的实在,按位与,或没什么理解不了的,其实这个BOOLE函数用的也不多,ADESK提供它,是为了弥补没有按位或等函数,就加了一个通用的,麻烦不麻  详情 回复 发表于 2013-8-20 19:47
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 40个

财富等级: 招财进宝

发表于 2013-8-20 19:47:48 | 显示全部楼层
ll_j 发表于 2013-8-20 18:13
不需要搞这么复杂吧?就and、or、xor、nor也就够了,这个1、4组合又是什么实际意思呢?
我晓得了,单位 ...

那不是在给他讲怎么算出来的原理嘛。讲这个按位操作,还真就是不常用的来的实在,按位与,或没什么理解不了的,其实这个BOOLE函数用的也不多,ADESK提供它,是为了弥补没有按位或等函数,就加了一个通用的,麻烦不麻烦另说,也一定有需要那样的逻辑存在的。其实,就一个LOGAND 就对付很多按位判断开关的应用了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1336个

财富等级: 财源广进

发表于 2017-8-9 12:28:12 | 显示全部楼层
大师这个我们老百姓只怕用不上,不知道有什么用!

点评

判断偶数、代替logand等....  发表于 2017-8-9 18:09
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1336个

财富等级: 财源广进

发表于 2017-8-9 19:10:40 | 显示全部楼层
哦,谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复

使用道具 举报

已领礼包: 6468个

财富等级: 富甲天下

发表于 2017-8-16 00:07:03 | 显示全部楼层
黄工想干嘛?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-4-25 01:10 , Processed in 0.508163 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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