ASP AND 的逻辑运算

这是and运算的一个很有趣的特点,and运算是按位与的,50=110010,191=10111111,(110010)AND(10111111)=(110010),这个不等于零,所以返回true,而192=(11000000),(110010)AND(11000000)=0,这当然返回False了。再举个例子50 AND 194=True,因为194=(11000010),(110010)AND(11000010)=(10),所以也是True。其实这就是判断50的二进制代码和191的二进制代码中有没有位置相同且同为1的位。这很有用处。

比方说,某系统有10项功能,用户可以具备其中的一项或某几项,我们约定,用户的功能表示为一个二进制数,从高位到低位依次表示用户是否具备某项功能。那么用户A的功能为1000000000,这表示A只具备第一项功能,其他功能无权访问。用户B的功能为0100000000。假设页面X允许具备2或3或4项功能权限的用户进入,那么页面的进入判定条件可写为
0111000000 AND UserFunction  'UserFunction 为某用户的功能权限

那么用户A进入该页面时0111000000 AND 1000000000=False,表明他没有权利进入本页
用户B进入该页面时0111000000 AND 0100000000=True,表明用户B可以进入本页

但是一般写的时候我们会把0111000000 写成448,1000000000写成512,那么页面判断的时候就是448 And 512了

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值