在文本框 Text1 中输入十进制数,单击转换按钮 Command1,在文本框Text2中显示对应的二进制数。
程序采用“除二取余”法进行转换,即对十进制数除以2,余数作为二进制数的一位数字,商则重复上述步骤继续除2,直到商为0结束转换。
Private Sub Command1_Click()
Dim s2 As String 's2存放二进制数
Dim s10 As Integer 's10存放十进制数
Dim x As Integer 'x存储余数
s10 = Val(Text1.Text)
s2 = " "
Do While
x =
s2 = Str(x) + s2 s10 = s10 \ 2
Loop
'输出运行结果
End Sub
数字字符 |
0 |
1 |
... |
7 |
8 |
9 |
|||||||||||||||
二进制值 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
... |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
1 |
十进制值 |
0 |
0 |
0 |
1 |
... |
1 |
3 |
2 |
0 |
2 |
1 |
||||||||||
对应编码 |
A |
A |
A |
B |
... |
B |
D |
C |
A |
C |
B |
||||||||||
例如, 数字字符串“709”的编码为“BDAACB”。用VB程序实现上述编码,功能如下:在文本框Text1中输入编码的一串数字字符,单击“编码”命令按钮Command1,在文本框Text2中显示编码结果。程序运行界面如图所示。
Private Sub Command1_Click( )
Dim code As String, s As String, ch As String, result As String
Dim i As Integer, numL As Integer, numR As Integer
Dim flag As Boolean
code = "ABCD"
s = Text1.Text
flag = True
result = ""
For i = 1 To
If ch < "0" Or ch > "9" Then
flag = False
Exit For ' 退出循环
Else
numL = Val(ch) \ 4
numR =
result = result + Mid(code, numL + 1, 1) +
End If
Next i
If flag Then
Text2.Text = result
Else
Text2.Text = "输入错误"
End If
End Sub