首页 ASCII码表与数制转换

ASCII码表与数制转换

举报
开通vip

ASCII码表与数制转换 以上内容 David整理,如有错误请告知: David_daik@126.com 1 ASCII 码表 ASCII 值 控制符 ASCII 值 字符 ASCII 值 字符 ASCII 值 字符 0 NUL 32 (space) 64 @ 96 、 1 SOH 33 ! 65 A 97 a 2 STX 34 ” 66 B 98 b 3 ETX 35 # 67 C 99 c 4 EOT 36 $ 68 D 100 ...

ASCII码表与数制转换
以上内容 David整理,如有错误请告知: David_daik@126.com 1 ASCII 码表 ASCII 值 控制符 ASCII 值 字符 ASCII 值 字符 ASCII 值 字符 0 NUL 32 (space) 64 @ 96 、 1 SOH 33 ! 65 A 97 a 2 STX 34 ” 66 B 98 b 3 ETX 35 # 67 C 99 c 4 EOT 36 $ 68 D 100 d 5 ENQ 37 % 69 E 101 e 6 ACK 38 & 70 F 102 f 7 BEL 39 , 71 G 103 g 8 BS 40 ( 72 H 104 h 9 HT 41 ) 73 I 105 i 10 LF 42 * 74 J 106 j 11 VT 43 + 75 K 107 k 12 FF 44 , 76 L 108 l 13 CR 45 - 77 M 109 m 14 SO 46 . 78 N 110 n 15 SI 47 / 79 O 111 o 16 DLE 48 0 80 P 112 p 17 DCI 49 1 81 Q 113 q 18 DC2 50 2 82 R 114 r 19 DC3 51 3 83 X 115 s 20 DC4 52 4 84 T 116 t 21 NAK 53 5 85 U 117 u 22 SYN 54 6 86 V 118 v 23 TB 55 7 87 W 119 w 24 CAN 56 8 88 X 120 x 25 EM 57 9 89 Y 121 y 26 SUB 58 : 90 Z 122 z 27 ESC 59 ; 91 [ 123 { 28 FS 60 < 92 \ 124 | 29 GS 61 = 93 ] 125 } 30 RS 62 > 94 ^ 126 ~ 31 US 63 ? 95 — 127 DEL 以上内容 David整理,如有错误请告知: David_daik@126.com 2 控制符含义: NUL VT 垂直制表 SYN 空转同步 SOH 标题开始 FF 走纸控制 ETB 信息组传送结束 STX 正文开始 CR 回车 CAN 作废 ETX 正文结束 SO 移位输出 EM 纸尽 EOY 传输结束 SI 移位输入 SUB 换置 ENQ 询问字符 DLE 空格 ESC 换码 ACK 承认 DC1 设备控制1 FS 文字分隔符 BEL 报警 DC2 设备控制2 GS 组分隔符 BS 退一格 DC3 设备控制3 RS 记录 混凝土 养护记录下载土方回填监理旁站记录免费下载集备记录下载集备记录下载集备记录下载 分隔符 HT 横向列表 DC4 设备控制4 US 单元分隔符 LF 换行 NAK 否定 DEL 删除 ASCII 非打印控制字符表 ASCII 表上的数字0–31 分配给了控制字符,用于控制像打印机等一些外围设备。例如,12 代表换页/新页功能。 此命令指示打印机跳到下一页的开头 十进制 十六进制 字符 十进制 十六进制 字符 0 00 空 16 10 数据链路转意 1 01 头标开始 17 11 设备控制1 2 02 正文开始 18 12 设备控制2 3 03 正文结束 19 13 设备控制3 4 04 传输结束 20 14 设备控制4 5 05 查询 21 15 反确认 6 06 确认 22 16 同步空闲 7 07 震铃 23 17 传输块结束 8 08 backspace 24 18 取消 9 09 水平制表符 25 19 媒体结束 10 0A 换行/新行 26 1A 替换 11 0B 竖直制表符 27 1B 转意 12 0C 换页/新页 28 1C 文件分隔符 13 0D 回车 29 1D 组分隔符 14 0E 移出 30 1E 记录分隔符 15 0F 移入 31 1F 单元分隔符 以上内容 David整理,如有错误请告知: David_daik@126.com 3 ASCII打印字符表 数字32–126 分配给了能在键盘上找到的字符,当您查看或打印文档时就会出现。数字127 代表DELETE 命令。 十进制 十六进制 字符 十进制 十六进制 字符 32 20 space 80 50 P 33 21 ! 81 51 Q 34 22 " 82 52 R 35 23 # 83 53 S 36 24 $ 84 54 T 37 25 % 85 55 U 38 26 & 86 56 V 39 27 ' 87 57 w 40 28 ( 88 58 X 41 29 ) 89 59 Y 42 2A * 90 5A Z 43 2B + 91 5B [ 44 2C , 92 5C \ 45 2D 93 5D ] 46 2E . 94 5E ^ 47 2F / 95 5F _ 48 30 0 96 60 ` 49 31 1 97 61 a 50 32 2 98 62 b 51 33 3 99 63 c 52 34 4 100 64 d 53 35 5 101 65 e 54 36 6 102 66 f 55 37 7 103 67 g 56 38 8 104 68 h 57 39 9 105 69 i 58 3A : 106 6A j 59 3B ; 107 6B k 60 3C < 108 6C l 61 3D = 109 6D m 以上内容 David整理,如有错误请告知: David_daik@126.com 4 62 3E > 110 6E n 63 3F ? 111 6F o 64 40 @ 112 70 p 65 41 A 113 71 q 66 42 B 114 72 r 67 43 C 115 73 s 68 44 D 116 74 t 69 45 E 117 75 u 70 46 F 118 76 v 71 47 G 119 77 w 72 48 H 120 78 x 73 49 I 121 79 y 74 4A J 122 7A z 75 4B K 123 7B { 76 4C L 124 7C | 77 4D M 125 7D } 78 4E N 126 7E ~ 79 4F O 127 7F DEL 以上内容 David整理,如有错误请告知: David_daik@126.com 5 扩展ASCII 打印字符 扩展的ASCII 字符满足了对更多字符的需求。扩展的ASCII 包含ASCII 中已有的128 个字符(数字0–32 显 示在下图中),又增加了128 个字符,总共是256 个。即使有了这些更多的字符,许多语言还是包含无法压缩 到256 个字符中的符号。因此,出现了一些ASCII 的变体来囊括地区性字符和符号。例如,许多软件程序把 ASCII 表(又 称作ISO 88591 )用于北美、西欧、澳大利亚和非洲的语言。 扩展的ASCII 打印字符表 十进制 十六进制 字符 十进制 十六进制 字符 128 80 Ç 192 C0 └ 129 81 ü 193 C1 ┴ 130 82 é 194 C2 ┬ 131 83 â 195 C3 ├ 132 84 ä 196 C4 ─ 133 85 à 197 C5 ┼ 134 86 å 198 C6 ╞ 135 87 ç 199 C7 ╟ 136 88 ê 200 C8 ╚ 137 89 ë 201 C9 ╔ 138 8A è 202 CA ╩ 139 8B ï 203 CB ╦ 140 8C î 204 CC ╠ 141 8D ì 205 CD ═ 142 8E Ä 206 CE ╬ 143 8F Å 207 CF ╧ 144 90 É 208 D0 ╨ 145 91 æ 209 D1 ╤ 146 92 Æ 210 D2 ╥ 147 93 ô 211 D3 ╙ 148 94 ö 212 D4 Ô 149 95 ò 213 D5 ╒ 150 96 û 214 D6 ╓ 151 97 ù 215 D7 ╫ 152 98 ÿ 216 D8 ╪ 153 99 Ö 217 D9 ┘ 154 9A Ü 218 DA ┌ 以上内容 David整理,如有错误请告知: David_daik@126.com 6 155 9B ¢ 219 DB █ 156 9C £ 220 DC ▄ 157 9D ¥ 221 DD ▌ 158 9E ₧ 222 DE ▐ 159 9F ƒ 223 DF ▀ 160 A0 á 224 E0 α 161 A1 í 225 E1 ß 162 A2 ó 226 E2 Γ 163 A3 ú 227 E3 π 164 A4 ñ 228 E4 Σ 165 A5 Ñ 229 E5 σ 166 A6 ª 230 E6 µ 167 A7 º 231 E7 τ 168 A8 ¿ 232 E8 Φ 169 A9 ⌐ 233 E9 Θ 170 AA ¬ 234 EA Ω 171 AB ½ 235 EB δ 172 AC ¼ 236 EC ∞ 173 AD ¡ 237 ED φ 174 AE « 238 EE ε 175 AF » 239 EF ∩ 176 B0 ░ 240 F0 ≡ 177 B1 ▒ 241 F1 ± 178 B2 ▓ 242 F2 ≥ 179 B3 │ 243 F3 ≤ 180 B4 ┤ 244 F4 ⌠ 181 B5 ╡ 245 F5 ⌡ 182 B6 ╢ 246 F6 ÷ 183 B7 ╖ 247 F7 ≈ 184 B8 ╕ 248 F8 ≈ 185 B9 ╣ 249 F9 · 186 BA ║ 250 FA · 187 BB ╗ 251 FB √ 188 BC ╝ 252 FC ⁿ 以上内容 David整理,如有错误请告知: David_daik@126.com 7 189 BD ╜ 253 FD ² 190 BE ╛ 254 FE ■ 191 BF ┐ 255 FF ÿ 汉字编码 0-127 是 7 位 ASCII 码的范围,是国际标准。 至于汉字,不同的字符集用的 ascii 码的范围也不一样,常用的汉字字符集有 GB2312-80,GBK, Big5,unicode 等。下面我重点说一说最常用的 GB_2312 的字符集。 GB _2312 字符集是目前最常用的汉字编码标准,windows 95/98/2000 中使用的 GBK 字符集 就包含 了 GB2312,或者说和 GB2312 兼容,GB_2312 字符集包含了 6763 个的 简体汉字,和 682 个标准中文 符号。在 这个标准中,每个汉字用 2 个字节来表示,每个字节的 ascii 码为 161-254 (16 进制 A1 - FE), 第一个字节 对应于 区码的 1-94 区,第二个字节 对应于位码的 1-94 位。 161-254 其实很好记忆,大家知道英文字符的中,可打印的字符范围为 33-126。将 这对 数加上 128(或者说最高位置 1),就得到汉字使用的字符的范围。 以上内容 David整理,如有错误请告知: David_daik@126.com 8 二进制数转换为十进制数 二进制数第 0 位的权值是 2 的 0 次方,第 1 位的权值是 2 的 1 次方… … 所以,设有一个二进制数:0110 0100,转换为 10 进制为: 下面是竖式: 0110 0100 换算成 十进制 第 0 位 0*2^0=0 第 1 位 0*2^1=0 第 2 位 1*2^2=4 第 3 位 0*2^3=0 第 4 位 0*2^4=0 第 5 位 1*2^5=32 第 6 位 1 *2^6=64 第 7 位 0*2^7=0 100 用横式计算为: 0 * 2^0 + 0 * 2^1 + 1 * 2^2 +0*2^3+ 0 * 2^4 + 1 * 2^5 + 1 * 2^6 + 0 * 2^7 = 100 0 乘以多少都是 0,所以我们也可以直接跳过值为 0 的位: 1 * 2^2 + 1 * 2^5 + 1 * 2^6 = 100 八进制数转换为十进制数 八进制就是逢 8 进 1。 八进制数采用 0~7 这八数来表达一个数。 八进制数第 0 位的权值为 8 的 0 次方,第 1 位权值为 8 的 1 次方,第 2 位权值为 8 的 2 次方… … 所以,设有一个八进制数:1507, 转换为十进制为: 用竖式表示: 1507 换算成十进制。 第 0 位 7*8^0=7 第 1 位 0*8^1=0 第 2 位 5*8^2=320 第 3 位 1*8^3=512 839 同样,我们也可以用横式直接计算: 7 * 8^0 + 0 * 8^1 + 5 * 8^2 + 1 * 8^3 = 839 结果是,八进制数 1507 转换成十进制数为 839 八进制数的表达 方法 快递客服问题件处理详细方法山木方法pdf计算方法pdf华与华方法下载八字理论方法下载 C,C++语言中,如何表达一个八进制数呢?如果这个数是 876,我们可以断定它不是八进制数,因为八进 制 数中不可能出 7 以上的阿拉伯数字。但如果这个数是 123、是 567,或 12345670,那么它是八进制数 还是 10 进制数,都有可能。 所以,C,C++规定,一个数如果要指明它采用八进制,必须在它前面加上一个 0,如: 123 是十进制,但 0123 则表示采用八进制。这就是八进制数在 C、C++中的表达方法。 由于 C 和 C++都没有提供二进制数的表达方法,所以,这里所学的八进制是我们学习的,C/C++语言 的数 值表达的第二种进制法。 现在,对于同样一个数,比如是 100,我们在代码中可以用平常的 10 进制表达,例如在变量初始化时: int a = 100; 我们也可以这样写: 以上内容 David整理,如有错误请告知: David_daik@126.com 9 int a = 0144; //0144 是八进制的 100;一个 10 进制数如何转成 8 进制,我们后面会学到。 千万记住,用八进制表达时,你不能少了最前的那个 0。否则计算机会通通当成 10 进制。不过,有一 个 地方使用八进制数时,却不能使用加 0,那就是我们前面学的用于表达字符的“转义符”表达法。 八进制数在转义符中的使用 我们学过用一个转义符'\'加上一个特殊字母来表示某个字符的方法,如:'\n'表示换行(line),而'\t' 表示 Tab 字符,'\''则表示单引号。今天我们又学习了一种使用转义符的方法:转义符'\'后面接一个八进制 数,用 于表示 ASCII 码等于该值的字符。 比如,查一下第 5 章中的 ASCII 码表,我们找到问号字符(?)的 ASCII 值是 63,那么我们可以把它转 换 为八进值:77,然后用 '\77'来表示'?'。由于是八进制,所以本应写成 '\077',但因为 C,C++规定不允许 使 用斜杠加 10 进制数来表示字符,所以这里的 0 可以不写。 事实上我们很少在实际编程中用转义符加八进制数来表示一个字符。 十六进制数转换成十进制数 2 进制,用两个阿拉伯数字:0、1; 8 进制,用八个阿拉伯数字:0、1、2、3、4、5、6、7; 10 进制,用十个阿拉伯数字:0 到 9; 16 进制,用十六个阿拉伯数字… … 等等,阿拉伯人或说是印度人,只发明了 10 个数字啊? 16 进制就是逢 16 进 1,但我们只有 0~9 这十个数字,所以我们用 A,B,C,D,E,F 这五个字母 来分别表 示 10,11,12,13,14,15。字母不区分大小写。 十六进制数的第 0 位的权值为 16 的 0 次方, 第 1 位的权值为 16 的 1 次方, 第 2 位的权值为 16 的 2 次方… … 所以,在第 N(N 从 0 开始)位上,如果是是数 X (X 大于等于 0,并且 X 小于等于 15,即:F) 表示的 大小为 X * 16 的 N 次方。 假设有一个十六进数 2AF5, 那么如何换算成 10 进制呢? 用竖式计算: 2AF5 换算成 10 进制: 第 0 位: 5*16^0=5 第 1 位: F*16^1=240 第 2 位: A * 16^2 = 2560 第 3 位: 2 * 16^3 = 8192 10997 直接计算就是: 5 * 16^0 + F * 16^1 + A * 16^2 + 2 * 16^3 = 10997 (别忘了,在上面的计算中,A 表示 10,而 F 表示 15) 现在可以看出,所有进制换算成 10 进制,关键在于各自的权值不同。 假设有人问你,十进数 1234 为什么是 一千二百三十四?你尽可以给他这么一个算式: 1234 = 1 * 10^3 + 2 * 10^2 + 3 * 10^1 + 4 * 10^0 十六进制数的表达方法:如果不使用特殊的书写形式,16 进制数也会和 10 进制相混。随 以上内容 David整理,如有错误请告知: David_daik@126.com 10 便一个数:9876,就看不出它是 16 进制 或 10 进制。 C,C++规定,16 进制数必须以 0x 开头。比如 0x1 表示一个 16 进制数。而 1 则表示一个十进制。另外如: 0xff,0xFF,0X102A, 等等。其中的 x 也也不区分大小写。(注意:0x 中的 0 是数字 0,而不是字母 O) 以下是一些用法示例: int a = 0x100F; int b = 0x70 + a; 至此,我们学完了所有进制:10 进制,8 进制,16 进制数的表达方式。最后一点很重要, C/C++中,10 进制数有正负之分,比如 12 表示正 12,而-12 表示负 12,;但 8 进制和 16 进 制只能用达无符号的正整数,如 果你在代码中里:-078,或者写:-0xF2,C,C++并不把它当成一 个负数。 十进制数转换到二、八、十六进制数 10 进制数转换为 2 进制数 给你一个十进制,比如:6,如果将它转换成二进制数呢? 10 进制数转换成二进制数,这是一个连续除 2 的过程: 把要转换的数,除以 2,得到商和余数, 将商继续除以 2,直到商为 0。最后将所有余数倒序排列,得到数就是转换结果。 听起来有些糊涂?我们结合例子来说明。比如要转换 6 为二进制数。 “把要转换的数,除以 2,得到商和余数”。 那么: 要转换的数是 6, 6 ÷ 2,得到商是 3,余数是 0。 “将商继续除以 2,直到商为 0… … ” 现在商是 3,还不是 0,所以继续除以 2。 那就: 3 ÷ 2, 得到商是 1,余数是 1。 “将商继续除以 2,直到商为 0… … ” 现在商是 1,还不是 0,所以继续除以 2。 那就: 1 ÷ 2, 得到商是 0,余数是 1 (拿笔纸算一下,1÷2 是不是商 0 余 1!) “将商继续除以 2,直到商为 0… … 最后将所有余数倒序排列” 好极!现在商已经是 0。 我们三次计算依次得到余数分别是:0、1、1,将所有余数倒序排列,那就是:110 了! 6 转换成二进制,结果是 110。 把上面的一段改成用表格来表示,则为: 被除数 计算过程 商 余数 6 6/2 3 0 3 3/2 1 1 1 1/2 0 1 (在计算机中,÷用 / 来表示) 说了半天, 我们的转换结果对吗?二进制数 110 是 6 吗?你已经学会如何将二进制数转换成 10 进制 数了, 所以请现在就计算一下 110 换成 10 进制是否就是 6。 6.3.2 10 进制数转换为 8、16 进制数 10 进制数转换成 8 进制的方法,和转换为 2 进制的方法类似, 唯一变化:除数由 2 变成 8。 来看一个例子,如何将十进制数 120 转换成八进制数。 用表格表示: 以上内容 David整理,如有错误请告知: David_daik@126.com 11 被除数 计算过程 商 余数 120 120/8 15 0 15 15/8 1 7 1 1/8 0 1 120 转换为 8 进制,结果为:170。 10 进制数转换成 16 进制的方法,和转换为 2 进制的方法类似,唯一变化:除数由 2 变成 16 同样是 120,转换成 16 进制则为: 被除数 计算过程 商 余数 120 120/16 7 8 7 7/16 0 7 120 转换为 16 进制,结果为:78。 请拿笔纸,演算上面两个表的过程。
本文档为【ASCII码表与数制转换】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_118578
暂无简介~
格式:pdf
大小:482KB
软件:PDF阅读器
页数:11
分类:工学
上传时间:2014-01-09
浏览量:33