189 8069 5689

vb.net位与运算 vb 与运算

VB.NET中怎样实现位运算

TextBox1.Text = 7 And 10

在铜官等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站建设、网站建设 网站设计制作按需网站设计,公司网站建设,企业网站建设,高端网站设计,全网整合营销推广,外贸营销网站建设,铜官网站建设费用合理。

TextBox1.Text = 7 Or 10

TextBox1.Text = 7 Xor 10

TextBox1.Text = Not 10

TextBox1.Text = 7  10

TextBox1.Text = 7  10

如这些,我在VB.Net中也找不到shl和shr运算符~

不过可以通过"自定义运算符"来写出我们想要的功能

vb.net 中 逻辑与 ,按位与都可以用 And 表示,能用& 和&&吗?

vb6.0中也有,

数字 就是让这个数字为long型(隐式声明Long 数据类型)

这就显然是令数字0为long型的意思

如果不加就会默认是integer型

有很多作用

c=a b 就是把a和b以字符串形式连接起来并赋给c

如果只是要将其它类型数据转换为字符串只要用cstr(变量)就行了

dim x 在定义的时候就是把变量x定义为long型,就像 dim x as long 一样的效果

H十六进制数 的H表示后面的是十六进制数,还有O是表示后面的是八进制数

VB中不能用。

VB也可以按位与运算的。

x=15 and 8的值就是8。

VB中的And可以表示按位与,也可以表示逻辑与,就看参与运算的量是什么类型的了。

VB.net语言当中,And和AndAlso有什么区别?

AndAlso是短路的逻辑与运算符,And有两个含义:非短路的逻辑与运算符;按位与运算符

Dim c=a AndAlso b表达式中,若表达式a的计算结果是False,无论表达式b是什么样,都不再进行计算,直接返回c的值

Dim c=a And b表达式中,无论a和b是怎样的表达式,都要全部计算完成后再返回c的值

AndAlso相比And的区别,除了性能优势外,更重要的是,从语义上来说

If a Then

If b Then

End If

End If

等价于If a AndAlso b Then而不等价于If a And b Then

考虑这种情况:

Dim m As ClassM=****

Dim c=m IsNot Nothing AndAlso m.Succeeded

这种实际编程中经常遇到的判断,如果把AndAlso替换成And,在m Is Nothing的情况下会引发NullReferenceException空引用异常,而AndAlso能确保不会引发空引用异常

进行逻辑运算的时候,And只在一种情况下有价值:不仅想要得到c的值,而且无论如何都希望执行b过程,并且自己能确保a=False不会影响b的执行。其他情况下务必使用AndAlso

OrElse和Or同理,作为上面那句的逆判断

Dim c=m Is Nothing OrElse m.Failed

也是经常使用的。当然在进行位运算时,只能用And和Or,AndAlso和OrElse没有位运算功能

VB.NET怎么位运算?

注意只能对整型执行按位运算。浮点值必须转换为整型后,才能执行按位运算。按位运算采用二进制(以 2 为基)形式计算两个整数值。它们比较对应位置上的位,然后基于比较的结果赋值。下面的示例演示了 And 运算符。复制Dim x As Integerx = 3 And 5 前面的示例将 x 的值设置为 1。发生这种情况的原因如下:这些值以二进制形式处理:二进制格式的 3 为 011二进制格式的 5 为 101And 运算符比较这些二进制表示方式,一次比较一个二进制位置(位)。如果给定位置的两个位都为 1,则将 1 放在结果中的该位置。如果任何一个位是 0,则将 0 放在结果中的该位置。在前面的示例中,按如下所示计算结果:011(二进制格式的 3)101(二进制格式的 5)001(二进制格式的计算结果)计算结果以十进制形式处理。值 001 是 1 的二进制表示形式,因此 x = 1。除了在任何一个比较位是 1 或两个比较位都是 1 的情况下将 1 赋予结果位以外,按位 Or 运算与此类似。Xor 在比较的位正好只有一个是 1(而不是两者都是 1)时将 1 赋给结果位。Not 采用单个操作数并反转所有位(包括符号位),然后将该值赋予结果。这意味着,对于有符号正数,Not 始终返回负值,而对于负数,Not 始终返回正值或零。AndAlso 和OrElse 运算符不支持按位运算。 追问: 好复杂啊...还是不会,还有整数怎么转换为二进制数? 回答: 为什么一定要用位运算呢,你那个乘法只能通过左移操作符“ ”来进行,而左移一次代表乘以2,要是乘以一个小数,就必须先化成2的n次方,不够再用加减法调整,很麻烦啊,没必要用位运算啊。。。 追问: 因为我要进行大量的运算,但速度要快,所有用位运算...我也不想啊.. 回答: 那就不该用VB 啊,c/c++在执行效率上是没话说的。 追问: 问题就是不会嘛... 回答: 那你上csdn上发帖效果应该不错 追问: CSDN发了,我发在高性能运算,没人... 回答: 耐心一些,或者你应该发到VB.NET论坛那里。。。 追问: 额..只能这样了... 提问者 的感言: 太复杂了..算了 2010-11-08

VB里怎样实现位运算?

逻辑运算符中所含的And 运算符,Eqv 运算符,Imp 运算符,Not 运算符,Or 运算符,Xor 运算符等均可用来实现位运算。

算术运算符的* 运算符,\ 运算符可用于左移和右移位运算。

And 运算符,还对两个数值表达式中位置相同的位进行逐位比较,并根据下表对 result 中相应的位进行设置:

Or 运算符,对两个数值表达式中位置相同的位进行逐位比较,并根据下表对 result 中相应的位进行设置:

Xor 运算符既可作为逻辑运算符,也可作为位运算符。使用互斥或的逻辑进行的两个表达式的逐位比较,其结果通过下表说明:

详细的参考:MSDN6.0关于运算符的介绍。


分享文章:vb.net位与运算 vb 与运算
网站URL:http://cdxtjz.cn/article/dodiggd.html

其他资讯