进制、编码及其应用一、二、十、十六进制原理及其互相转换(仅要求整数)进制的表 示二进制 十进制 十六进制符号 0 1 01234567890123456789ABCDEF进制标识BDH运算规则逢二进一逢十进一 逢十六进一1.二一十进制按权相加 权 2n十六一十进制 按权相加 权 16n2. 十二进制除二取余十六f 十进制除十六取余3. 二一十六进制互相转换每1位十六进制数转换成 4 位二进制数。
(24=16)从右往左,不足添零9 1001 — 9H10 1010->A1112 1100->C 13 110—D14 1110-*E 15 1111—F16 10000 — 10H(进位)4.进制的一些特点:转换为十进制:按权相加,X 进制,权就是X 的n 次方 十进制转换X 进制:除X 取余 二进制数尾数0,偶数,尾数1,奇数,后面加“0”,X2,加“00”,X22二、ASCII 码及汉字编码1. 7位编码(128种编码27=128), 8位存储(1个字节),最高位添“0”,顺序编码00H->7FH (十六进制)“A” ASCII 编码:100 0001B “a” ASCII 编码:110 0001B数字 “0 ” ASCII 编码:011 0000 48D 30H 2.汉字编码:输入码(输入法)、交换吗(区位码)处理吗(机内码、内码)计算机内码表示,占2个字节 (80H 字形码(点阵、矢量方式)(汉字显示、打印等相当于位图、矢量图的表示类似,可类比)65D 41H97D 61H 以上)如16X16点阵的黑白像素点表示的汉字“天”习题练习讲解例1(2016.10学考题6)下列十六进制数中,与二进制数1010100101B 值相等的是()A. 2A5HB. A25IIC. A91HD. A94H例2 (2016. 4学考题7)将十进制数从左至右每位分别转换成对应的4位二进制编码(不足 4位的左边补0,例如2转换成0010),然后依次连接。
则十进制数109转换后的编码是()A.100100000001B.000001101101C. 101000001001D. 000100001001例3 (2015. 10学考题7)用24位二进制数來表示的RGB 颜色,将其每位二进制数取反(0 改为1, 1改为0),即变为另一种颜色,这种操作称为颜色反相。
若某RGB 颜色值用十六进 制表示为123456H,则其反相后的颜色值用十六进制表示为()A.654321HB. 987654HC. EDCBA9HD. FEDCBAH例4(2016.9嘉兴基础测试题7) —般网络设备均有W\C 地址,也叫硬件地址,长度为6个 字节,可以用12位十六进制数字组成,为了表示方便,每个字节Z 间可用“:”分割。
利 用进制原理分析,以下MAC 地址表示正确的是()A. 00:26:47:28:30:7AB. 24:69:A5:86:7DC. 8C:70:5/\:F6:0B:58:35D. 66:09:80:02:112:73例5 (2015. 9省模拟题10)【加试题】用UltraEdit 软件观察“苹果apple"这儿个字符的 内码,如图所示,则“iPhone”中的小写英文字母“o”的二进制编码是()A. 01000101B. 01101001C. 01101111D. 01000111例6 (2016. 6嘉兴期末考试题10)【加试题】用软件查看字符的十六进制编码如图所示,以 下分析正确的是()例7小李用UltraEdit 软件观察字符内码,结果如图所示:OOOOOOOOh: 49 54 20 20 DO C5 CF A2 BC BC CA F5H L T ~信息技术则下列说法正确的是( )A. “技”字的十六进制内码为BCB.英文字符“IT”是在全角模式下输入的C. “IT”后的空格的二进制内码是00100000D.可以推测“J”字符十六进制内码为50A. TT”二个英文字存储时占1B C. “信”内码为 11010000 11000101BB. “信息技术”四个汉字存储时占4BD. “J”的十六进制编码是“50"例8使用L'ltraEdit 软件观察字符内码,结果如图所示,则存储字符正能量#”需要的字 节数是()________ 0 HR * M [邑 LB 8 ⑨球译◎ d 4JOOOOOOOh: 23 D5 FD C4 DC Cl BF 23例9用UltraEdit 软件观察“学”的内码是D1A7H,其对应的二进制编码为()A. 11010001BB. 10100111BC. 1101000110100111BD. 1010000111010111B例10在二进制数“1011”后面添加两个“0”得到一个新的二进制数,与这个新数值相等的 是( )A. 42DB. 44HC. BOHD. 2CH例11汉字“天”(如右图)的字形码如图,16X16点阵的黑白像素点表示, 表示该汉字的字形需要的存储空间的字节数是()A. 16B. 32 D. 256例12用UltraEdit 软件观察“Windows”这几个字的内码,如下图所示,分析图中信息, 小写字母的内码值与大写字母的内码值存在一定差值,该差值用十进制表示是()三、进制、编码在VB 中的应用1. x 进制到十进制的按权相加,可以得到x 进制转换为十进制的的算法程序:(第一种方法:以字符形式取出各位数字,然后按权相加) ①取出X 进制的每个数,可以使用Len (x)和Mid (S, i, k)函数。
设X 进制数的字符串变量为Shu, a (i)存储X 进制数每个数字的数组变量k = Len(Shu)For i = 1 To ka (i) =Val (Mid(Shu, i, 1)) Next i②a(i)与相应的权:a (i) *X"k ・i)相乘,依次相加即可。
(第二种方法:可以数的形式取出各位数字,然后按权相加)①如n 位数的X 进制数(10进制以下),存变量Shu, a (i)存每个数字的数组变量Dim a(1 To n) As Integer For i = 1 To nQ? 4 $ $ ?? ? < 兴» G Q 牛]t-00000000b: 5769 6E 64 6F 77 73;Windows♦B. 32C. 57D. 77A. 4B. 5C. 7D. 8C. 64A. 20a(i) = Shu Mod 10Shu =Shu \ 10Next i②a(i)与相应的权:a (i) 乘,依次相加即可。
例1二进制数转成十进制数(按权相加法),VB编写程序的界面如下图所示,该窗口中共有①—个对象,在Textl输入一个二进制数,点击Command1u转换”按钮, 在Text2输出相应的十进制数。
(①8)(1)程序代码“Private Sub Command*l_Click()”中Command_Click()是指②_____________ 。
(选填:对象/属性/过程/事件/方法)(②过程)(2)为了实现上述功能,程序代码如下,其中加框处的代码有错,请改正。
Private Sub Command1_Click()Dim Ejz As String, i As Integer, k As Integer, Sjz As IntegerEjz = Textl .Text◎改为 k = Len(Ejz) x = Mid(Ejz, i,1)Sjz = Sjz + | x*2 八(k ・1) Next iText2.Text = Str(Sjz)End Sub2.十进制到X 进制的除X 取余,可以得到十进制转换为X 进制的的算法程序: ① 十进制数除X 取余(设十进制数为变量Shi),得到余数t 。
t =Shi Mod x② 不断整除X 得到新的Shi,循环下去,直到Shi=0oShi=Shi \ X③ 将所有t 转为字符连接起来就是X 进制数。
例2十进制数转换成二进制数(除二取余法)。
VB 编写程序的界面如图a 所 示,Text!中输入一个十进制数,点击Commandl “转换”按钮,在Text2输 出相应的二进制数。
(1)如要将窗口的标题改为“除二取余”,则应修改如图b 所示的① ________(2)为了实现上述功能,请在划线处选择或填入合适代码。
Private Sub Command1_Click()Dim x As Integer, t As IntegerDim y As String y = *•••x = Val(Textl.Text) Do While x <> 0i = Len(Ejz) For i = 1 To k'④改为 Val(x) *2 ^(k ・ i)对象的② _______________ 属性值o(①Forml ②Caption )Foral FormLabell LabelLabel2 Label Textl TextBox T«xt2 TextBox BtckColor LJ weoooooor.Border Style 2 - Si zableCaption 十进制转换成:ClipControls True ControlBox TrutDrawMode 13 ■ Copy Per DrawStyle 0 - SolidDrawWidth 1 Enabled TrueFillColor ■ ■ ■ ■■ AMOOOOOOOO. v屋性-Forml |Foral Form |C<wndl ComhtnjButtont = x Mod 2 ,除二取余y=@ ________ •在下面选项中选择正确的代码,选填字母X =@ ____________________ '填写合适的代码LoopText2.Text = yEnd SubA. Str(t) + yB.③A. Str(t) + y3. ASC(U A M)=65可以用于比较大小、y + Str(t) C・ Str(x)&y D. y& Str(x)④x\2ASC函数得到字符的ASCII码值(十进制)排序等CHR (97) = “a”根据ASCII码值得到相应的字符。
例3显示ASCII码值。
VB编写程序界面如图所示,在文本框Textl中输入一个字符,点击命令按钮Commandl,在文本框Text2中显示字符的ASCII值(十六进制)。
(1)如要使命令按钮Commandl显示为“转换”,应修改命令按钮Commandl 的①________________ 属性值为“转换”。