Fg1 = BD And H80
For i = 1 To n - 1
BD = BD \ 2 '右移
Next i
CF = BD And 1 '判断D0位是否进位
BD = BD \ 2 '右移
SAR = BD Or Fg1
End Function
'4.循环左移
Public Function ROL(OPR As Byte, n As Integer) As Byte
Dim BD As Byte
Dim I As Integer
Dim Fg1 As Byte
BD = OPR
For i = 1 To n
Fg1 = (BD And H80) \ 128 '判断D7位是否进位
BD = ((BD And H7F) * 2) Or Fg1 '带进位左移
Next i
CF = Fg1
ROL = BD
End Function
'5.循环右移
Public Function ROR(OPR As Byte, n As Integer) As Byte
Dim BD As Byte
Dim I As Integer
Dim Fg1 As Byte
Dim Fg2 As Byte
BD = OPR
For i = 1 To n
Fg1 = (BD And 1) * 128 '判断D0位是否进位
BD = (BD \ 2) Or Fg1 '带进位右移
Next i
CF = Fg1
ROR = BD
End Function
'6.进位循环左移
Public Function RCL(OPR As Byte, n As Integer) As Byte
Dim BD As Byte
Dim I As Integer
Dim Fg1 As Byte
Dim Fg2 As Byte
BD = OPR
Fg2 = CF And 1
For i = 1 To n
Fg1 = (BD And H80) \ 128 '判断D7位是否进位
BD = ((BD And H7F) * 2) Or Fg2 '带进位左移
Fg2 = Fg1
Next i
CF = Fg1
RCL = BD
End Function
'7.进位循环右移
Public Function RCR(OPR As Byte, n As Integer) As Byte
Dim BD As Byte
Dim I As Integer
Dim Fg1 As Byte
Dim Fg2 As Byte
BD = OPR
Fg2 = CF And 128
For i = 1 To n
Fg1 = (BD And 1) * 128 '判断D0位是否进位
BD = (BD \ 2) Or Fg2 '带进位右移
Fg2 = Fg1
Next i
CF = Fg1
RCR = BD
End Function
结束语
以上七个字节移位操作函数的功能和用法同宏汇编语言的移位操作指令基本相同,不过只对单字节进行操作,但上述程序稍加改动后,就可对双字节Integer类型和四字节Long类型进行移位操作 。
VB.NET如何ADO.NET如何MOVENEXT,MOVEFIRST,MOVELAST在ADO.NET中,可以通过数据表的记录行属性,定位到记录,列属性定位到字段 。
For i = 0 To MyDs1.Tables(0).Rows.Count - 1'行循环
For j = 0 To MyDs1.Tables(0).Columns.Count - 1'列循环
Lstr = LstrMyDs1.Tables(0).Rows(i)(j)""
Next j
Lstr = LstrvbCrLf
Next i
Textbox1.text = Lstr
vb.net2005中符号“对位模式执行数学左移位 。
result = patternamount
各部分说明
result
必选 。整型数值 。对该位模式进行移位的结果 。数据类型与 pattern 的数据类型相同 。
pattern
必选 。整型数值表达式 。要进行移位的位模式 。数据类型必须为整型(SByte、Byte、Short、UShort、Integer、UInteger、Long 或 ULong) 。
amount
必选 。数值表达式 。要将该位模式移位的位数 。数据类型必须为 Integer 或扩展到 Integer 。
备注
数学移位不是循环的 , 即不会将在结果的一端移出的数位从另一端重新移入 。在数学左移位运算中,丢弃移出结果数据类型范围的数位,而将右端空出的数位位置设置为零 。
为防止移位的结果超出它所支持的位数,Visual Basic 使用与 pattern 的数据类型相对应的大小掩码来屏蔽 amount 的值 。可使用这些值的二进制与运算结果作为移位量 。大小掩码如下所示:
pattern数据类型掩码(十进制)掩码(十六进制)
SByte, Byte7H00000007
Short, UShort15H0000000F
Integer, UInteger 31H0000001F
Long, ULong63H0000003F
如果 amount 为零 , 则 result 的值与 pattern 的值相同 。如果 amount 为负值,则将把它作为无符号的值 , 并使用相应的大小掩码进行屏蔽 。
数学移位绝不会产生溢出异常 。
关于VB.NET移位指令和vba位移函数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
- mongo查询命令 mongodb指令查询
- mysql数据库常用命令大全 mysql数据指令
- redis通用指令
- mysql服务启动命令 mysql服务器指令
- mongodb命令大全 mongodb指令及参数
- redis解锁指令 redis解锁原理
- mongodb指令 mongodb怎么设置触发器
- redisclient命令 redisincr指令
- 连接mysql服务器的指令是单选题 连接mysql服务器
- mongodb语句大全 mongodb 基本指令
