已知某数据加密方法如下:
A) 将英文字符的ASCII码值加20(十进制) ;
B)以字节为单位进行加密处理;
C)将1个字节的8位二进制数左移一位,最低位用左移出的最高位填充;
D)将处理后的8位二进制数分割成前4位与后4位两个二进制数;
F)分别将上述两个4位二进制数转换为十六进制数;
G)所得两个十六进制数码交换顺序后连接,即为该字节的密文。
按照上述规则,小明设计了一个解密的VB程序,功能如下:单击“解密”按钮Command 1,程序依次将文本框Text 1中字符提取(只有0到9、A到F),进行解密处理,并输出在文本框Text 2中,程序运行效果如图所示。请回答下列问题:
(1)
已知明文是A9(已知大写字母A的ASCII值为65D,数字0的ASCII值为48),则对应的密文是。
(2)
请在划线处填入合适代码。
Private
Sub Command 1 Click()
Dim mw As String,mingw As String,ch As String
Dim i As Integer, k As Integer,j As Integer,t
As Integer,p As Integer
Dim a( 1 To 8) As Integer
mw=Text 1.Text
For i= 1 To 8
a(i)=0
Next i
For i=1 To Len(mw)
ch=Mid(mw,i,1)
If ch>=“0”And ch<=“9”Then
t=Val(ch)
Else
t=
①
End If
j=0
Do While t<>0
j=j+1
a( ② )=t Mod 2
t=t\2
Loop
If i Mod 2= 0 Then
k=a(8)
For j= 1 To 7
③
Next j
If k-20>=0 And k-20<= 127 Then
④
For j= 1 To 8
a(j)=0
Next j
Else
mingw=“输入错误”
End If
End If
Next i
Text 2.Text=mingw
End
Sub
① ② ③ ④
答案: 【1】AAA9
【1】Asc(ch)-55或Asc(ch) -Assc(“A”+10)其他等价答案【2】(i Mod 2)*4+5-j【3】k=k*2+a(j)或其他等价答案【4】mingw=mingw+Chr(k-20)