【加试题】在计算机中用一个字节(8位)来存储一个字符的ASCII码,其中低7位二进制数对应字符的编码,每个字节的最高位一般保持为“0”,在数据传输时该位可用作奇偶校验位。传输时ASCII代码转换成传输码的方法是:若7位ASCII码中有偶数个1,则最高位置为1;有奇数个1,则最高位置为0。例如字母“A”的ASCII码十进制表示为65,二进制表示为1000001。“A”的传输码则为“11000001”,本程序的功能就是把ASCII码转换成这种传输码,运行效果如第17题图所示。
(1)
根据上述ASCII代码转换成传输码的方法,字符“D”的传输码为。
(2)
实现上述功能的VB程序如下,请在划线处填入合适代码。Private Sub Command1_Click() Dim i As Integer, S As String Dim str As String, ch As String str = Text1.Text List1.Clear For i = 1 To Len(str) ch = ① S = convert(ch) List1.AddItem ch & "==>" & S Next iEnd SubPrivate Function convert(ch As String) As String Dim m As Integer, k As Integer, n As Integer, i As Integer convert = "" n = Asc(ch) Do While n > 0 ② convert = m & convert If m = 1 Then k = k + 1 End If n = n \ 2 Loop For i = 1 To 7 - Len(convert) '将字符的二进制代码补足7位 convert = "0" & convert Next i If k Mod 2 = 0 Then convert = ③ Else convert = "0" & convert End IfEnd Function程序中划线处①的代码应为。程序中划线处②的代码应为。程序中划线处③的代码应为。
答案: 【1】11000100
【1】mid(str,i,1)【2】m=n mod 2【3】"1" &convert