常用 ASCII 码整理

一、ASCII 码简介

  ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是一套基于拉丁字母的字符编码,共收录了 128 个字符,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,它等同于国际标准 ISO/IEC 646。ASCII 规范于 1967 年第一次发布,最后一次更新是在 1986 年。
  ASCII 编码范围 0x00-0x7F,即十进制的 0-127,定义了 128 个字符。它包含了 33 个控制字符(具有某些特殊功能但是无法显示的字符)和 95 个可显示字符(数字、字母、符号)。国标码 GB18030、国际码 Unicode 均兼容 ASCII 编码。

二、ASCII 码的表达方式

  ASCII 码使用指定的 7 位或 8 位二进制数组合来表示 128 或 256 种可能的字符。标准 ASCII 码也叫基础 ASCII 码,使用 7 位二进制数(剩下的 1 位二进制为 0)来表示所有的大写和小写字母,数字 0 到 9、标点符号,以及在美式英语中使用的特殊控制字符。
  0~31 及 127 (共 33 个)是控制字符或通信专用字符,其余为可显示字符,例如,控制符: LF(换行)、CR(回车)、FF(换页)、DEL(删除)、BS(退格)、BEL(响铃)等;通信专用字符:SOH(文头)、EOT(文尾)、ACK(确认)等。ASCII 值为 8、9、10 和13 分别转换为退格、制表、换行和回车字符,它们并没有特定的图形显示,但会依不同的应用程序,而对文本显示有不同的影响。
  32~126 (共 95 个) 是字符( 32 是空格),其中 48~57 为 0 到 9 十个阿拉伯数字。65~90 为 26 个大写英文字母,97~122 为 26 个小写英文字母,其余为一些标点符号、运算符号等。
  同时还要注意,在标准 ASCII 中,其最高位 (b7) 用作奇偶校验位。所谓奇偶校验,是指在代码传送过程中用来检验是否出现错误的一种方法,一般分奇校验和偶校验两种。奇校验规定:正确的代码一个字节中 1 的个数必须是奇数,若非奇数,则在最高位 b7 添 1。偶校验规定:正确的代码一个字节中 1 的个数必须是偶数,若非偶数,则在最高位 b7 添 1。
  后 128 个称为扩展 ASCII 码。许多基于 x86 的系统都支持使用扩展(或“高”)ASCII。扩展 ASCII 码允许将每个字符的第 8 位用于确定附加的 128 个特殊符号字符、外来语字母和图形符号。

三、大小规则

  常见 ASCII 码的大小规则:0 - 9 < A - Z < a - z。

  • 数字比字母要小,如 7 < F;
  • 数字 0 比数字 9 要小,并按 0 到 9 顺序递增,如 3 < 8;
  • 字母 A 比字母 Z 要小,并按 A 到 Z 顺序递增,如 A < Z;
  • 同个字母的大写字母比小写字母要小 32,如 A < a;
  • 几个常见字母的 ASCII 码大小:0 为 48;A 为 65;a 为 97。
四、常见字符的 ASCII 码
4.1 数字的 ASCII 码
十进制符号
480
491
502
513
524
535
546
557
568
579
4.2 大写英文字母的 ASCII 码
十进制符号
65A
66B
67C
68D
69E
70F
71G
72H
73I
74J
75K
76L
77M
78N
79O
80P
81Q
82R
83S
84T
85U
86V
87W
88X
89Y
90Z
4.3 小写英文字母的 ASCII 码
十进制符号
97a
98b
99c
100d
101e
102f
103g
104h
105i
106j
107k
108l
109m
110n
111o
112p
113q
114r
115s
116t
117u
118v
119w
120x
121y
122z
五、常用 Java 语言处理字符的方法
	public static void main(String[] args) {
        String word = "a123bcAD34d8ef34";
        char char1 = word.charAt(0);
        System.out.println(char1);                   // a
        // 打印字符的十进制 ASCII 编码值
        System.out.println(Integer.valueOf(char1));  // 97

        // 将小写字母字符转为大写字母字符
        char char2 = (char) (char1 - 'a' + 'A');
        System.out.println(char2);                   // A

        // 将字符表示的数字转为十进制数字
        int integer1 = word.charAt(1) - '0';
        System.out.println(integer1);                // 1

        // 将 ASCII 码值转换为对应的字符串
        // 如知晓字母 'b' 的 ASCII 码值,将其转化为字符串 "b"
        String ans = String.valueOf((char) ('a' + 1));
        System.out.println(ans);
        // 或者
        char tmp = (char) ('a' + 1);
        String ans1 = Character.toString(tmp);
        System.out.println(ans1);			
    }
  • 5
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值