189 8069 5689

vb.net怎么移位 vb右移代码

100分 急求在vb.net中怎样进行位操作

用bitarray类和BitVector32类实现

创新互联建站主要从事成都做网站、网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务立山,十余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792

VB实现大致如下:

Imports System.Collections.Specialized

...

Dim bvData as BitVector32

Dim sec1 As BitVector32.Section = BitVector32.CreateSection(255)

Dim sec2 As BitVector32.Section = BitVector32.CreateSection(255,sec1)

Dim sec3 As BitVector32.Section = BitVector32.CreateSection(255,sec2)

Dim sec4 As BitVector32.Section = BitVector32.CreateSection(255,sec3)

Dim Buf(4096) as Byte 'receive byte size matched with DSP send data: 1024*4Byte

Dim recCount as Integer

Dim Data(1024) as long

....

For recCount = 0 To 1023

bvData(sec4) = buf(recByte*4)

bvData(sec3) = buf(recByte*4+1)

bvData(sec2) = buf(recByte*4+2)

bvData(sec1) = buf(recByte*4+3)

Data(recCount) = bvData.Data '这样数据肯定是-398

Next

....

vb.net2005中符号“

对位模式执行数学左移位。

result = pattern amount

各部分说明

result

必选。整型数值。对该位模式进行移位的结果。数据类型与 pattern 的数据类型相同。

pattern

必选。整型数值表达式。要进行移位的位模式。数据类型必须为整型(SByte、Byte、Short、UShort、Integer、UInteger、Long 或 ULong)。

amount

必选。数值表达式。要将该位模式移位的位数。数据类型必须为 Integer 或扩展到 Integer。

备注

数学移位不是循环的,即不会将在结果的一端移出的数位从另一端重新移入。在数学左移位运算中,丢弃移出结果数据类型范围的数位,而将右端空出的数位位置设置为零。

为防止移位的结果超出它所支持的位数,Visual Basic 使用与 pattern 的数据类型相对应的大小掩码来屏蔽 amount 的值。可使用这些值的二进制与运算结果作为移位量。大小掩码如下所示:

pattern数据类型 掩码(十进制)掩码(十六进制)

SByte, Byte 7 H00000007

Short, UShort 15 H0000000F

Integer, UInteger 31 H0000001F

Long, ULong 63 H0000003F

如果 amount 为零,则 result 的值与 pattern 的值相同。如果 amount 为负值,则将把它作为无符号的值,并使用相应的大小掩码进行屏蔽。

数学移位绝不会产生溢出异常。

vb.net实现控件自由移动

Dim i As Integer

For i = 0 To Me.Width - Button1.Width 'me为容器,典型的是form1

Button1.Left += 1

Windows.Forms.Application.DoEvents()

Next

原理:不断地变化button1的X轴,使其向右移,同样,只要控制好其x,y轴,就可以变化button的变化

如果是做小游戏,建议弄成类吧,把其中的左(右)移或对角其它移动弄成其接口,以便操作。

由于涉及内容太多,不再详述。原理都一样


分享标题:vb.net怎么移位 vb右移代码
文章来源:http://cdxtjz.cn/article/dogpcsi.html

其他资讯