vb.net 补码计算

   Private Function funcBM(ByVal strInput As Integer) As Integer

        If strInput > 127 Then

            Dim s() As Byte = {&H30,&H30,&H30}
            Dim s1 As String
            Dim i As Integer = 0
            Dim val As Integer = 0
            Dim sT(6) As Byte
            s1 = Convert.ToString(strInput,2)
            s = System.Text.Encoding.ASCII.GetBytes(s1)

            For i = 0 To 6
                If s(i + 1) = &H31 Then
                    sT(i) = &H0
                ElseIf s(i + 1) = &H30 Then
                    sT(i) = &H1
                End If
            Next

            For i = 0 To 6
                val = val + (sT(i) << (6 - i))
            Next

            funcBM = 0 - (val + 1)

        Else

            funcBM = strInput

        End If

    End Function

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...