十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
注意只能对整型执行按位运算。浮点值必须转换为整型后,才能执行按位运算。按位运算采用二进制(以 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
我们提供的服务有:网站设计、网站制作、微信公众号开发、网站优化、网站认证、椒江ssl等。为上千余家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的椒江网站制作公司
Namespace
包含类似或相关功能的类的集合
Class
用来定义一个对象,包含对象的属性(包括变量)、方法(包括过程sub和函数)
Sub
子过程,可以把要使用的数据以参数形式传入,但不返回值
Function
函数,同样可以传参数,但要求有返回值
Property
属性过程,设置或返回对象的属性值
Return
结束当前sub或function,若是函数则返回一个函数值
Dim
声明或定义一个变量
New
创建一个新的实例对象
Nothing
表示一个变量没有值,与其他语言或数据库中的null等价
Me
当前类的实例对象的引用
Console
.NET
用于访问和操作命令窗口的类,主要用于命令行应用程序
Module
模块,定义一个不是类的代码块,但它同样可以包含变量和方法
运算符
算术运算符:/(除),\(整除),Mod(取模)
串联运算符:,+亦可
逻辑/按位运算符:Not、And、Or、Xor、AndAlso、OrElse
赋值运算符:= ,^= ,*= ,/= ,\= ,+= ,-= ,=,=,=
比较运算符: ,= , ,= ,= , ,Is ,IsNot ,Like
移位运算符: ,
其他运算符:AddressOf 运算符 ,GetType 运算符 ,函数表达式,If 运算符 ,TypeOf 运算符,Await 运算符
DirectCast 运算符
TryCast 运算符
New 运算符
*运算优先级:算术连接比较逻辑运算(用括号可改变优先级)
详细:
如果表达式中出现几种运算,将按照预先确定的称为“运算符优先级”的顺序计算和解析各个部分。
算术运算符和串联运算符
求幂 (^)
一元标识和非(+、–)
乘法和浮点除法(*、/)
整数除法 (\)
取模 (Mod)
加法和减法(+、–),字符串连接 (+)
字符串连接 ()
算术移位(、)
比较运算符
所有比较运算符(=、、、=、、=、Is、IsNot、Like、TypeOf...Is)
逻辑运算符和位运算符
非 (Not)
与 (And、AndAlso)
或 (Or、OrElse)
异或 (Xor)
先乘除后加减,从右到左运算。
VB中运算符的计算优先级顺序如下:算术运算符和串联运算符求幂(^)一元标识和非(+、–)乘法和浮点除法(*、/)整数除法(\)取模(Mod)加法和减法(+、–),字符串连接(+)字符串连接()算术移位()比较运算符。
扩展资料
vb点虐 特性:
1、vb点虐 完全集成到 Visual Studio 集成开发环境中,在这种集成开发环境与 VB 在若干方面有差异。主要体现在窗体的布局以及菜单等方面都有所不同。
2、vb点虐 项目与 VB 不同。它使用基于文件夹的模型,所有项目均放置在项目文件夹层次结构中。
3、vb点虐 中使用ado点虐 来访问数据库,ado点虐 是点虐 Framework的一部分。在 vb点虐 中实现数据访问的方法主要有两种。
其一是在程序设计阶段,通过创建、配置数据适配器 DataAdapter 和生成数据集 DataSet;其二是在运行中,通过编程方式动态创建配置数据适配器和创建、生成数据集。
4、在 vb点虐 中是使用asp点虐 技术来编写 Web 页面的。在asp点虐 中使用的也不是脚本语言,而是真正意义的编程语言。
凭借asp点虐 的 Web 应用程序、XML Web Services 等基于 Web 的功能,使得 vb点虐 开发 Web 页面与开发 Windows 应用程序很相似,Web 页面代码也显得有条有理了。
5、vb点虐 已经成为完全的面向对象的编程语言,并且新增更多语言特性。
911 X + 1 916 还有 704 Y + 1 709,没有这么连续判断的。
是比较运算符,是运算符!+、-、*、/ 是算术运算符,也是运算符!
既然是运算符,就得按照运算优先级(所谓优先级,就是 * 运算比 + 运算要优先)从左到右依次计算,显然 911 X + 1 916 里两个 的运算优先级是相同的。
那么从左至右依次计算,先算 911 X + 1,得到结果 True(-1) 或者 False(0)(不要问我为什么True=-1,False=0,.NET里就是这么规定的),再计算 True / False 916,结果始终为 True。704 Y + 1 709 也是同理,两个 True 之间 And 了还是 True,结果当然是条件一直成立。
正确写法:
If (911 X + 1 And X + 1 916) And (704 Y + 1 And Y + 1 709) Then