ASCII、十进制、十六进制、八进制和二进制转换表
- 格式:xls
- 大小:28.00 KB
- 文档页数:4
二进制八进制十进制十六进制之间的进制转换详情可参考百度百科:进制转换这个词条【主要搞懂1和2两条,其他的进制之间的转化就迎刃而解,很好懂了】1. 十进制-> 二进制:将这个十进制数连续除以2的过程,第一步除以2,得到商和余数,将商再继续除以2,得到又一个商和余数,直到商为0。
最后将所有余数倒序排列,得到的数就是转换成二进制的结果。
2. 二进制-> 十进制:二进制数第1位的权值是2的0次方,第2位的权值是2的1次方,第3位的权值是2的2次方。
(例如1258这个十进制数,实际上代表的是:1x1000+2x100+5x10+8x1=1258)那么1011这个二进制数,实际上代表的是:1x8+0x4+1x2+1x1=11(十进制数11)。
(这里的8就是2的3次方,4就是2的2次方,2就是2的1次方,1就是2的0次方)3. 十进制-> 八进制:十进制数转换成八进制的方法,和转换为二进制的方法类似,唯一变化:除数由2变成8。
4. 八进制-> 十进制和转换为二进制的方法类似,唯一变化是,底数变成8,第1位表示8的0次方,第二位表示8的一次方,第三位表示8的2次方,第四位表示8的3次方。
例如1314这个八进制数,十进制数就是1x512+3x64+1x8+4x1=716(十进制)5. 十进制-> 十六进制10进制数转换成16进制的方法,和转换为2进制的方法类似,唯一变化:除数由2变成16。
十六进制是0123456789ABCDEF这十六个字符表示。
那么单独一个A就是10,单独一个B就是11,CDEF,就分表表示12,13,14,15。
而10这个十六进制数,实际就是十进制中的16。
6. 十六进制-> 十进制和转换为二进制的方法类似,唯一变化是,底数变成16,第1位表示16的0次方,第二位表示16的一次方,第三位表示16的2次方,第四位表示16的3次方。
7. 二进制<--->八进制,之间的相互转换,更简单一些,因为8本身是2的三次方。
一、二进制转化成其他进制1. 二进制(BINARY)——>八进制(OCTAL)例子1:将二进制数(10010)2转化成八进制数。
(10010)2=()2=(2 2)8=(22)8例子2:将二进制数(0.1010)2转化为八进制数。
(0.10101)2=(0. 101 )2=(0. 5 2)8=(0.52)8诀窍:因为每三位二进制数对应一位八进制数,所以,以小数点为界,整数位则将二进制数从右向左每3位一隔开,不足3位的在左边用0填补即可;小数位则将二进制数从左向右每3位一隔开,不足3位的在右边用0填补即可。
2. 二进制(BINARY)——>十进制(DECIMAL)例子1:将二进制数(10010)2转化成十进制数。
(10010)2=(1x24+0x23+0x22+1x21+0x20)10=(16+0+0+2+0)10=(18) 10例子2:将二进制数(0.10101)2转化为十进制数。
(0.10101)2=(0+1x2-1+0x2-2+1x2-3+0x2-4+1x2-5)10=(0+0.5+0.25+0.125+0.0625+0.03125)10=(0.96875)10诀窍:以小数点为界,整数位从最后一位(从右向左)开始算,依次列为第0、1、2、3………n,然后将第n位的数(0或1)乘以2的n-1次方,然后相加即可得到整数位的十进制数;小数位则从左向右开始算,依次列为第1、2、3……..n,然后将第n位的数(0或1)乘以2的-n次方,然后相加即可得到小数位的十进制数(按权相加法)。
3. 二进制(BINARY)——>十六进制(HEX)例子1:将二进制数(10010)2转化成十六进制数。
(10010)2=(0001 0010)2=(1 2)16=(12) 16例子2:将二进制数(0.1010)2转化为十六进制数。
(0.10101)2=(0. 1010 1000)2=(0. A 8)16=(0.A8)16诀窍:因为每四位二进制数对应一位十六进制数,所以,以小数点为界,整数位则将二进制数从右向左每4位一隔开,不足4位的在左边用0填补即可;小数位则将二进制数从左向右每4位一隔开,不足4位的在右边用0填补即可。
OCT(八进制)最全ASCII码对应表—与键盘按键对应值(二进)Bin (十进)Dec (十六进)Hex 缩写/字符解释0000 0000 0 00 NUL (null) 空字符0000 0001 1 01 SOH (start of handing) 标题开始0000 0010 2 02 STX (start of text) 正文开始0000 0011 3 03 ETX (end of text) 正文结束0000 0100 4 04 EOT (end of transmission) 传输结束0000 0101 5 05 ENQ (enquiry) 请求0000 0110 6 06 ACK (acknowledge) 收到通知0000 0111 7 07 BEL (bell) 响铃0000 1000 8 08 BS (backspace) 退格0000 1001 9 09 HT (horizontal tab) 水平制表符0000 1010 10 0A LF (NL line feed, new line) 换行键0000 1011 11 0B VT (vertical tab) 垂直制表符0000 1100 12 0C FF (NP form feed, new page) 换页键0000 1101 13 0D CR (carriage return) 回车键0000 1110 14 0E SO (shift out) 不用切换0000 1111 15 0F SI (shift in) 启用切换0001 0000 16 10 DLE (data link escape) 数据链路转义0001 0001 17 11 DC1 (device control 1) 设备控制1 0001 0010 18 12 DC2 (device control 2) 设备控制20001 0011 19 13 DC3 (device control 3) 设备控制3 0001 0100 20 14 DC4 (device control 4) 设备控制4 0001 0101 21 15 NAK (negative acknowledge) 拒绝接收0001 0110 22 16 SYN (synchronous idle) 同步空闲0001 0111 23 17 ETB (end of trans. block) 传输块结束0001 1000 24 18 CAN (cancel) 取消0001 1001 25 19 EM (end of medium) 介质中断0001 1010 26 1A SUB (substitute) 替补0001 1011 27 1B ESC (escape) 溢出0001 1100 28 1C FS (file separator) 文件分割符0001 1101 29 1D GS (group separator) 分组符0001 1110 30 1E RS (record separator) 记录分离符0001 1111 31 1F US (unit separator) 单元分隔符0010 0000 32 20 空格0010 0001 33 21 !0010 0010 34 22 "0010 0011 35 23 #0010 0100 36 24 $0010 0101 37 25 %0010 0110 38 26 &0010 0111 39 27 '0010 1000 40 28 (0010 1010 42 2A * 0010 1011 43 2B + 0010 1100 44 2C , 0010 1101 45 2D - 0010 1110 46 2E . 0010 1111 47 2F / 0011 0000 48 30 0 0011 0001 49 31 1 0011 0010 50 32 2 0011 0011 51 33 3 0011 0100 52 34 4 0011 0101 53 35 5 0011 0110 54 36 6 0011 0111 55 37 7 0011 1000 56 38 8 0011 1001 57 39 9 0011 1010 58 3A : 0011 1011 59 3B ; 0011 1100 60 3C < 0011 1101 61 3D = 0011 1110 62 3E >0100 0000 64 40 @0100 0001 65 41 A 0100 0010 66 42 B 0100 0011 67 43 C 0100 0100 68 44 D 0100 0101 69 45 E 0100 0110 70 46 F 0100 0111 71 47 G 0100 1000 72 48 H 0100 1001 73 49 I 0100 1010 74 4A J 0100 1011 75 4B K 0100 1100 76 4C L 0100 1101 77 4D M 0100 1110 78 4E N 0100 1111 79 4F O 0101 0000 80 50 P 0101 0001 81 51 Q 0101 0010 82 52 R 0101 0011 83 53 S0101 0101 85 55 U 0101 0110 86 56 V 0101 0111 87 57 W 0101 1000 88 58 X 0101 1001 89 59 Y 0101 1010 90 5A Z 0101 1011 91 5B [ 0101 1100 92 5C \ 0101 1101 93 5D ] 0101 1110 94 5E ^ 0101 1111 95 5F _ 0110 0000 96 60 ` 0110 0001 97 61 a 0110 0010 98 62 b 0110 0011 99 63 c 0110 0100 100 64 d 0110 0101 101 65 e 0110 0110 102 66 f 0110 0111 103 67 g 0110 1000 104 68 h 0110 1001 105 69 i0110 1011 107 6B k 0110 1100 108 6C l 0110 1101 109 6D m 0110 1110 110 6E n 0110 1111 111 6F o 0111 0000 112 70 p 0111 0001 113 71 q 0111 0010 114 72 r 0111 0011 115 73 s 0111 0100 116 74 t 0111 0101 117 75 u 0111 0110 118 76 v 0111 0111 119 77 w 0111 1000 120 78 x 0111 1001 121 79 y 0111 1010 122 7A z 0111 1011 123 7B { 0111 1100 124 7C | 0111 1101 125 7D } 0111 1110 126 7E ~0111 1111 127 7F DEL (delete) 删除键盘常用ASCII码(十进制表示值)ESC键VK_ESCAPE (27)回车键:VK_RETURN (13)TAB键:VK_TAB (9)Caps Lock键:VK_CAPITAL (20)Shift键:VK_SHIFT (16)Ctrl键:VK_CONTROL (17)Alt键:VK_MENU (18)空格键:VK_SPACE (/32)退格键:VK_BACK (8)左徽标键:VK_LWIN (91)右徽标键:VK_LWIN (92)鼠标右键快捷键:VK_APPS (93)Insert键:VK_INSERT (45)Home键:VK_HOME (36)Page Up:VK_PRIOR (33)PageDown:VK_NEXT (34)End键:VK_END (35)Delete键:VK_DELETE (46)方向键(←):VK_LEFT (37)方向键(↑):VK_UP (38)方向键(→):VK_RIGHT (39)方向键(↓):VK_DOWN (40)F1键:VK_F1 (112)F2键:VK_F2 (113)F3键:VK_F3 (114)F4键:VK_F4 (115)F5键:VK_F5 (116)F6键:VK_F6 (117)F7键:VK_F7 (118)F8键:VK_F8 (119)F9键:VK_F9 (120)F10键:VK_F10 (121)F11键:VK_F11 (122)F12键:VK_F12 (123)Num Lock键:VK_NUMLOCK (144) 小键盘0:VK_NUMPAD0 (96) 小键盘1:VK_NUMPAD0 (97) 小键盘2:VK_NUMPAD0 (98) 小键盘3:VK_NUMPAD0 (99) 小键盘4:VK_NUMPAD0 (100) 小键盘5:VK_NUMPAD0 (101) 小键盘6:VK_NUMPAD0 (102) 小键盘7:VK_NUMPAD0 (103) 小键盘8:VK_NUMPAD0 (104) 小键盘9:VK_NUMPAD0 (105) 小键盘.:VK_DECIMAL (110) 小键盘*:VK_MULTIPLY (106) 小键盘+:VK_MULTIPLY (107) 小键盘-:VK_SUBTRACT (109) 小键盘/:VK_DIVIDE (111) Pause Break键:VK_PAUSE (19) Scroll Lock键:VK_SCROLL (145)常见ASCII码的大小规则:0~9<A~Z<a~z1)数字比字母要小。
二进制、十进制、八进制、十六进制的相互转换1、 几个特殊字符的ASCII 码:A ——65、a ——97、0——48,其它依此类推,如B 为66,b 为98等。
2、 十进制的进位法则:逢十进一,用0~9之间的数字表示。
表示方法:(179)10或(179)D 。
二进制的进位法则:逢二进一,用0、1两个数字表示。
表示方法:(101)2或(101)B 八进制的进位法则:逢八进一,用0~7之间的数字表示。
表示方法:(107)8或(107)O十六进制的进位法则:逢十六进一,用0~9、A 、B 、C 、D 、E 、F 表示。
表示:(1A)16或(1A)H 进制的加减法练习: 二进制的加法: (逢二进一原则) 1 1 0 1 1 1 + 1 1 0 11 0 0 0 1 0 0二进制的减法: (借一进二原则) 1 0 0 0 1 0 0 - 1 1 0 11 1 0 1 1 1八进制的加法: (逢八进一原则)7 3 5 5 + 6 2 71 02 0 4八进制的减法: (借一进八原则)1 02 0 4 - 6 2 77 3 5 5十六进制的加法: (逢十六进一原则)C D 0 A + 6 F 7D 40 1十六进制的减法: (借一进十六原则)D 4 0 1 - 6 F 7C D 0 AN 进制的加法原则是逢N 进一;N 进制的减法原则是借一进N 。
各进制之间的数字对照:数据时从下往上读取。
十进制转二进制 十进制转八进制 十进制转十六进制 (125)10=(1111101)2、 (125)10=(175)8、 (125)10=(7D)162 125 …… 1 2 62 …… 0 2 31 …… 1 2 15 …… 1 2 7 …… 1 23 …… 1 2 18 125 …… 5 8 15 …… 7 116 125 (7)4、 小数的十进制转二进制、十进制转八进制、十进制转十六进制的方法:乘以进制取整数部分。
⼆进制,⼋进制,⼗进制,⼗六进制的相互转换常⽤进制数:⼆进制,⼋进制,⼗进制,⼗六进制进制理解计算机中硬件之间的信息传递是由电流确定,假如⼀个半导体允许通过的电流是5A,如果电流通过的为5A,则通过,计为1,如果通过的电流⼩于5A,则不通过,计为0。
由此,出现两种情况的判断,与或⾮。
电流的传递由0或1来完成,由此引申出⼆进制数的概念,以便底层硬件有共同的“语⾔”,即机器语⾔,相互沟通和交流。
我们⽣活中⼀般数值的运算是⼗进制。
就是满10进1,个⼗百千万,依次递进。
由此,可以类⽐。
⼆进制(Binary):0,1。
基数为2,逢⼆进⼀。
表⽰:(111)2或者(111)B⼋进制(Octal number system):0,1,2,3,4,5,6,7。
基数为8,逢⼋进⼀。
表⽰:(111)8或者(111)O⼗进制(Decimal system):0,1,2,3,4,5,6,7,8,9。
基数为10,逢⼗进⼀。
表⽰:(111)10或者(111)D⼗六进制(Hexadecimal):0,1,2,3,4,5,6,7,8,9,A(10),B(11),C(12),D(13),E(14),F(15)。
基数为16,逢⼗六进⼀。
表⽰:(111)16或者(111)Hn进制:(逢n进1)个位数:n0( 0个8)⼗位数:n1( 1个8)百位数:n2( 8个8)进制转换1.⼗进制转其他进制① 除⼆取余法(整数部分):把被转换的⼗进制整数反复除以2,直⾄商为0,所得的余数(从末位读起)就是这个数的⼆进制表⽰。
② 乘⼆取整法(⼩数部分):将⼩数部分乘以2,然后取整数部分,剩下的⼩数部分继续乘以2,然后取整数部分,剩下的⼩数部分⼜乘以2,⼀直取到⼩数部分为零为⽌。
如果永远不能为零,就同⼗进制数的四舍五⼊⼀样,按照要求保留多少位⼩数时,就根据后⾯⼀位是0还是1,取舍,如果是零,舍掉,如果是1,向⼊⼀位。
换句话说就是0舍1⼊。
读数要从前⾯的整数读到后⾯的整数。
二进制(B)、八进制(O)、十进制(D)与十六进制(H)的换算关系各进制关系表1、二进制(B)、八进制(O)、十进制(D)转十六进制(H)(1)二进制转换成十六进制:取四合一法,即从二进制的小数点为分界点,向左(或向右)每四位取成一位。
不足4位的,小数点左边不够4位的在最左边加0,小数点右边不够的在最右边加0。
例如:二进制数110111.011(2)划分为:11 0111. 011添0:0011 0111. 0110先用1化3方法,将八进制化为二进制,再用4并1方法,将二进制化为十六进制。
(整数不足3位左边补0,小数不足3位右边补0)例如:八进制数67.3(8)先用1化3法划分为: 6 7 . 3分别除2取余数,不足三位补0换算为二进制为:110111.011(2)再用4并1法划分为:0011(整数左边补0)0111 . 0110(小数右边补0)按权计算:1*21+1*201*22+1*21+1*20 . 1*22+1*213 7 6得数为:A、对于整数部分,反复除以基数16,除第一次外,每次除以16均取前一次商的整数部分作被除数并依次记下每次的余数。
另外,所得到的商的最后一位余数是所求二进制数的最高位。
B、对于小数部分,连续乘以基数16,并依次取出的整数部分,直至结果的小数部分为0为止。
故该法称“乘基取整法”。
例如:十进制数55.375(10)整数部分如下:小数部分如下:55余数 (7)……3取余数37(逆序排列)0.375x 162.250+ 3.756.000 6(小数为0,停止计算,取小数点左边整数)取整数6(顺序排列)C、含小数的十进制换算十六进制时,会出现小数后很多位都还不为0的情况,一般会要求取精确到小数点后几位,这时只需一直乘以16取整,直到达到要求精度即可。
例如:十进制数31.64(10)(31.64D)(精确到小数点后3位)整数部分如下余数 (15) (1)F取余数1F(逆序排列)小数部分如下0.64x 1610.24 10(换为A)取0.24x 163.84 3取 0.84x 1613.44 13(换为D)精确到位数3要求,结束计算。
ASCII求助编辑ASCII(American Standard Code for Information Interchange,美国信息互换标准代码)是基于拉丁字母的一套电脑编码系统。
它主要用于显示现代英语和其他西欧语言。
它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。
目录展开编辑本段名称美国信息交换标准代码( American Standard Code for Information Interchange, ASCII ) 编辑本段产生编辑本段常见ASCII码的大小规则0~9<A~Z<a~z1)数字比字母要小。
如“7”<“F”;2)数字0比数字9要小,并按0到9顺序递增。
如“3”<“8” ;3)字母A比字母Z要小,并按A到Z顺序递增。
如“A”<“Z” ;4)同个字母的大写字母比小写字母要小32。
如“A”<“a” 。
记住几个常见字母的ASCII码大小:换行LF为0x0A;回车CR为0x0D;空格为0x20;“0”为0x30;“A”为0x41;“a”为0x61。
另外还有128-255的ASCII字符编辑本段查询ASCII技巧方便查询ASCII码对应的字符:新建一个文本文档,按住ALT+要查询的码值(注意,这里是十进制)松开即可显示出对应字符。
例如:按住ALT+97,则会显示出‘a’。
编辑本段字符集简史6000年前象形文字3000年前字母表1838年到1854年 Samuel F. B. Morse发明了电报,字母表中的每个字符对应于一系列短的和长的脉冲1821年到1824年 Louis Braille发明盲文,6位代码,它把字符、常用字母组合、常用单字和标点进行编码。
一个特殊的escape代码表示后续的字符代码应解释为大写。
一个特殊的shift代码允许后续代码被解释为数字。
1931年 CCITT标准化Telex代码,包括Baudot #2的代码,都是包括字符和数字的5位代码。
一、十进制与二进制之间的转换二、 (1)十进制转换为二进制,分为整数部分和小数部分三、①整数部分方法:除2取余法,即每次将整数部分除以2,余数为该位权上的数,而商继续除以2,余数又为上一个位权上的数,这个步骤一直持续下去,直到商为0为止,最后读数时候,从最后一个余数读起,一直到最前面的一个余数。
下面举例: 例:将十进制的168转换为二进制得出结果将十进制的168转换为二进制,(10101000)2 分析:第一步,将168除以2,商84,余数为0。
第二步,将商84除以2,商42余数为0。
第三步,将商42除以2,商21余数为0。
第四步,将商21除以2,商10余数为1。
第五步,将商10除以2,商5余数为0。
第六步,将商5除以2,商2余数为1。
第七步,将商2除以2,商1余数为0。
第八步,将商1除以2,商0余数为1。
第九步,读数,因为最后一位是经过多次除以2才得到的,因此它是最高位,读数字从最后的余数向前读,即10101000(2)小数部分 方法:乘2取整法,即将小数部分乘以2,然后取整数部分,剩下的小数部分继续乘以2,然后取整数部分,剩下的小数部分又乘以2,一直取到小数部分 为零为止。
如果永远不能为零,就同十进制数的四舍五入一样,按照要求保留多少位小数时,就根据后面一位是0还是1,取舍,如果是零,舍掉,如果是1,向入一位。
换句话说就是0舍1入。
读数要从前面的整数读到后面的整数,下面举例: 例1:将0.125换算为二进制 得出结果:将0.125换算为二进制(0.001)2 分析:第一步,将0.125乘以2,得0.25,则整数部分为0,小数部分为0.25; 第二步, 将小数部分0.25乘以2,得0.5,则整数部分为0,小数部分为0.5; 第三步, 将小数部分0.5乘以2,得1.0,则整数部分为1,小数部分为0.0; 第四步,读数,从第一位读起,读到最后一位,即为0.001。
例2,将0.45转换为二进制(保留到小数点第四位)大家从上面步骤可以看出,当第五次做乘法时候,得到的结果是0.4,那么小数部分继续乘以2,得0.8,0.8又乘以2的,到1.6这样一直乘下去,最后不可能得到小数部分为零,因此,这个时候只好学习十进制的方法进行四舍五入了,但是二进制只有0和1两个,于是就出现0舍1入。