0

我想使用 Visual Basic 2012 为以下字符串计算十六进制的 BCC XOR:H 使用以下规则输入 * in hex (48 0D 2A):
Step 1. BCCXOR = 00hBCCXOR = 00
Step 2. BCCXOR = BCCXOR xor 48BCCXOR xor 第一个字符 - 结果 BCCXOR = 48h
Step 3. BCCXOR = BCCXOR xor 0DBCCXOR xor 第二个字符 -结果 BCCXOR = 44h
Step 4. BCCXOR = BCCXOR xor 2ABCCXOR xor 第三个字符 - 结果 BCCXOR = 6Fh

我的代码是:

    Dim BCCXOR As Integer = &H0
    For i As Integer = 0 To TextBox1.TextLength - 1
        BCCXOR = (BCCXOR) Xor Conversion.Hex(Strings.Asc(TextBox1.Text.Substring(i, i + 1).ToString()))
    Next
    BCCXOR = BCCXOR Xor Hex(&HD)
    BCCXOR = BCCXOR Xor Hex(&H2A)
    TextBox2.Text = BCCXOR

我的问题是,当我尝试计算 BCCXOR xor 0D 时收到一条错误消息,我收到如下错误:
从字符串“D”到类型“Long”的转换无效。

4

1 回答 1

0

Hex 函数将数字转换为字符串。我不认为这是你想要的。只需删除函数调用,它应该可以工作。

BCCXOR = BCCXOR Xor &HD
BCCXOR = BCCXOR Xor &H2A
于 2013-05-02T14:33:45.197 回答