ASCII

博客介绍了基本 ASCII 字符集,含 128 个字符,用 7 位编码,一般以 1 字节存放,多余位常为 0。还提到记住部分字母、数字 ASCII 码可推算其余。因标准 ASCII 字符有限,ISO 制定 ISO2022 标准,将其扩充为 8 位代码,产生扩展 ASCII 码。
 

基本的 ASCII 字符集共有 128 个字符,其中有 96 个可打印字符,包括常用的字母、数字、标点符号等,另外还有 32 个控制字符。标准 ASCII 码使用 7 个二进位对字符进行编码,对应的 ISO 标准为 ISO646 标准。下表展示了基本 ASCII 字符集及其编码:

字母和数字的 ASCII 码的记忆是非常简单的。我们只要记住了一个字母或数字的 ASCII 码(例如记住 A 为 65 , 0 的 ASCII 码为 48 ),知道相应的大小写字母之间差 32 ,就可以推算出其余字母、数字的 ASCII 码。

虽然标准 ASCII 码是 7 位编码,但由于计算机基本处理单位为字节( 1byte = 8bit ),所以一般仍以一个字节来存放一个 ASCII 字符。每一个字节中多余出来的一位(最高位)在计算机内部通常保持为 0 (在数据传输时可用作奇偶校验位)。

由于标准 ASCII 字符集字符数目有限,在实际应用中往往无法满足要求。为此,国际标准化组织又制定了 ISO2022 标准,它规定了在保持与 ISO646 兼容的前提下将 ASCII 字符集扩充为 8 位代码的统一方法。 ISO 陆续制定了一批适用于不同地区的扩充 ASCII 字符集,每种扩充 ASCII 字符集分别可以扩充 128 个字符,这些扩充字符的编码均为高位为 1 的 8 位代码(即十进制数 128~255 ),称为扩展 ASCII 码。下表展示的是最流行的一套扩展 ASCII 字符集和编码:

ASCII(American Standard Code for Information Interchange)即美国信息交换标准代码,是上个世纪60年代美国制定的一套字符编码,对英语字符与二进制位之间的关系做了统一规定[^3]。 ### ASCII码的基本情况 ASCII码一共规定了128个字符的编码,这些符号(包括32个不能打印出来的控制符号),只占用了一个字节的后面7位,最前面的1位统一规定为0。每个字符都对应一个十进制值,这些值从0到127不等。例如,空格 “SPACE” 对应的十进制值是32(二进制 00100000 ),大写的字母 A 对应的十进制值是65(二进制 01000001 )[^3]。 ### ASCII字符集的组成 ASCII字符集可以分为控制字符和可打印字符。控制字符用于计算机内部的控制指令,如换行、退格等;可打印字符则包括大小写英文字母、数字、标点符号等,涵盖了计算机数据处理中的可打印字符,其对应的十进制值从32到127[^2]。 ### 扩展ASCII码 由于现今大多数系统使用8位的字节,它可以表示256个不同的值。除了128个标准的ASCII代码,后128个被称为扩展ASCII码。许多基于x86的系统都支持使用扩展(或“高”)ASCII扩展ASCII码允许将每个字符的第8位用于确定附加的128个特殊符号字符、外来语字母和图形符号。存在不止一个扩展ASCII字符集,两个最常用的扩展ASCII字符集是OEM和ANSI扩展ASCII码。OEM字符集被大多数PC兼容机的硬件采用,旧的DOS系统也使用该字符集,它包括一些国外的符号、显著的人物和作品代表面板;ANSI扩展ASCII码是最新操作系统的默认字符集[^1][^4]。 ### ASCII码在计算机中的作用 计算机内部只能处理0和1,为了表示字母和其它非数字字符,计算机使用ASCII表,表中每个字符始终代表相同的顺序号,这样就能将字符转换为计算机能够处理的二进制数据,实现数据在计算机中的处理和存储[^4]。 ### 示例代码 以下是一个Python示例,用于展示如何获取字符的ASCII码值和根据ASCII码值获取字符: ```python # 获取字符的ASCII码值 char = 'A' ascii_value = ord(char) print(f"字符 {char} 的ASCII码值是: {ascii_value}") # 根据ASCII码值获取字符 ascii_value = 65 char = chr(ascii_value) print(f"ASCII码值为 {ascii_value} 的字符是: {char}") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值