完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>
标签 > ASCII
ASCII(美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。
在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)、以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码,统一规定了上述常用符号用哪些二进制数来表示。
美国标准信息交换代码是由美国国家标准学会(American National Standard Institute , ANSI )制定的,标准的单字节字符编码方案,用于基于文本的数据。起始于50年代后期,在1967年定案。它最初是美国国家标准,供不同计算机在相互通信时用作共同遵守的西文字符编码标准,它已被国际标准化组织(International Organization for Standardization, ISO)定为国际标准,称为ISO 646标准。适用于所有拉丁文字字母。
ASCII(American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是现今最通用的单字节编码系统,并等同于国际标准ISO/IEC 646。
请注意,ASCII是American Standard Code for Information Interchange缩写,而不是ASCⅡ(罗马数字2),有很多人在这个地方产生误解。
产生
在计算机中,所有的数据在存储和运算时都要使用二进制数表示(因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)、以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用二进制数来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫编码),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了ASCII编码,统一规定了上述常用符号用哪些二进制数来表示。
美国标准信息交换代码是由美国国家标准学会(American National Standard Institute , ANSI )制定的,标准的单字节字符编码方案,用于基于文本的数据。起始于50年代后期,在1967年定案。它最初是美国国家标准,供不同计算机在相互通信时用作共同遵守的西文字符编码标准,它已被国际标准化组织(International Organization for Standardization, ISO)定为国际标准,称为ISO 646标准。适用于所有拉丁文字字母。
表述方式
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码《大写字母的ASCII码《小写字母的ASCII码。[5] 查询ASCII技巧,方便查询ASCII码对应的字符:新建一个文本文档,按住ALT+要查询的码值(注意,这里是十进制),松开即可显示出对应字符。例如:按住ALT+97,则会显示出‘a’。
国际问题
ASCII是美国标准,所以它不能良好满足其它讲英语国家的需要。例如英国的英镑符号(£)在哪里?拉丁语字母表重音符号使用斯拉夫字母表的希腊语、希伯来语、阿拉伯语和俄语。汉字系统的中国象形汉字,日本和朝鲜。1967年,国际标准化组织(ISO:International Standards Organization)推荐一个ASCII的变种,代码0x40、0x5B、0x5C、0x5D、0x7B、0x7C和0x7D“为国家使用保留”,而代码0x5E、0x60和0x7E标为“当国内要求的特殊字符需要8、9或10个空间位置时,可用于其它图形符号”。
扩展ASCII
1981年IBM PC ROM256个字符的字符集,即IBM扩展字符集1985年11 Windows字符集被称作“ANSI字符集”,遵循了ANSI草案和ISO标准(ANSI/ISO8859-1-1987,简“Latin 1”。1987年4月代码页437,字符的映像代码,在MS-DOS3.3出现。扩展ASCII 字符是从128 到255(0x80-0xff)的字符。扩展ASCII不再是国际标准。
双字节
双字节字符集(DBCS:double-byte character set),解决中国、日本和韩国的象形文字符和ASCII的某种兼容性。DBCS从256代码开始,就像ASCII一样。与任何行为良好的代码页一样,最初的128个代码是ASCII。然而,较高的128个代码中的某些总是跟随着第二个字节。这两个字节一起(称作首字节和跟随字节)定义一个字符,通常是一个复杂的象形文字。
键盘常用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_RWIN (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_NUMPAD1 (97)小键盘2:VK_NUMPAD2 (98)小键盘3:VK_NUMPAD3 (99)小键盘4:VK_NUMPAD4 (100)小键盘5:VK_NUMPAD5 (101)小键盘6:VK_NUMPAD6 (102)小键盘7:VK_NUMPAD7 (103)小键盘8:VK_NUMPAD8 (104)小键盘9:VK_NUMPAD9 (105)小键盘。:VK_DECIMAL (110)小键盘*:VK_MULTIPLY (106)小键盘+:VK_ADD (107)小键盘-:VK_SUBTRACT (109)小键盘/:VK_DIVIDE (111)Pause Break键:VK_PAUSE (19)Scroll Lock键:VK_SCROLL (145)
汉字编码
(1)汉字国标码和区位码在计算机中一个汉字通常用两个字节的编码表示,我国制定了“中华人民共和国国家标 准信息交换汉字编码字符集(基本集GB2312—1980)”,简称国标码,是计算机进行汉字信息处理和汉字信息交换的标准编码。在该编码中,共收录汉字和图形符号7445个,其中一级常用汉字3755个(按汉语拼音字母顺序排列),二级常用汉字3008个(按部首顺序排列),图形符号682个。在GB2312—1980中规定,全部国标汉字及符号组成一个94×94的矩阵。在此矩阵中,每 一行称为一个“区”,每一列称为一个“位”。于是构成了一个有94个区(01~94区),每个 区有94个位(01~94个位)的汉字字符集。区码与位码组合在一起就形成了“区位码”,唯 一地确定某一汉字或符号。区位码的分布规则如下。1)01~09区:图形符号区。2)10b15区:自定义符号区。3)16~55区:一级汉字区,按汉字拼音排序,同音字按笔画顺序。4)56~87区:二级汉字区,按偏旁部首、笔画排序。5)88~94区:自定义汉字区。(2)汉字输入码所谓汉字输入码就是用于使用西文键盘输入汉字的编码。每个汉字对应一组由键盘符号 组成的编码,不同的汉字输入法其输入码不同。汉字输入码也称外码。常见的汉字输入编码方案可分为如下4类:1)数码:用数字组成的等长编码,典型代表有区位码、电报码。2)音码:根据汉字的读音组成的编码,典型代表有全拼码和双拼码。3)形码:根据汉字的形状、结构特征组成的编码,典型代表有五笔字型、表形码。4)音形码:将汉字读音与其结构特征综合考虑的编码,典型代表有自然码、首尾拼音码。(3)汉字内码无论用户用哪种输入法,汉字输入到计算机后都转换成汉字内码进行存储,以方便机内 的汉字处理。汉字内码是采用双字节的变形国标码,在每个字节的低7位与国标码相同,每个 字节的最高位为1,以与ASCII码字符编码区别。(4)汉字字形码汉字字形码(汉字输出码)是将点阵组成的汉字模型数字化,形成一串二进制数称为汉 字字形码,其主要用于输出汉字。输出汉字时,将汉字字形码再还原为由点阵构成的汉字,所 以汉字字形码又被称为汉字输出码。汉字是一种象形文字,每一个汉字可以看成是一个特定的图形,这种图形可以用点阵、 轮廓向量、骨架向量等多种方法表示,而最基本的是用点阵表示。如果用16x16点阵来表示 一个汉字,则一个汉字占16行,每一行有16个点,其中每一个点用一个二进制位表示,值“0” 表示暗,值“1”表示亮。由于计算机存储器的每个字节有8个二进制位,因此,16个点要用 两个字节来存放,16x16点阵的一个汉字字形需要用32个字节来存放,这32个字节中的信息 就构成了一个16x16点阵汉字的字模。
两个符号之间不可以有空格,复合赋值运算符的优先级与赋值运算符的相同。表达式n+=1等价于n=n+1,作用是取变量n中的值增1再赋给变量n,其他复合的赋值...
PLC的主要数据类型有字节型、整数型、双整数型和实数型,数据的编码类型主要有二进制、十进制、十六进制、BCD码和ASCII码等。在编程时,指令对操作数类...
优势 兼容性和跨平台性 : Base64编码的字符串是纯文本格式,这意味着它们可以在任何支持ASCII文本的环境中使用,包括不同的操作系统和编程语言。这...
ModbusRTU ASCII转ModbusTCP协议转化网关通讯解决方案
怎么样把ModbusRTU/ASCII与ModbusTCP连接起来呢?最近这几天有很多朋友想要了解这个问题,在这里统一为大家详细说明一下。其实有一个设备...
Profibus-DP转modbus RTU网关modbus rtu协议
捷米JM-DPM-RTU网关在Profibus总线侧实现主站功能,在Modbus串口侧实现从站功能。可将ProfibusDP协议的设备(如:E+H流量计...
喜欢做ASCII码图形的同学,可以使用这个网站快速生成。它提供了多达上百个字体,绝对让你的设计独一无二。通过在springboot项目中,提供一个ban...
无意点开一个网站,发现网站比较小,且看起来比较老,然后发现logo没有改,于是乎去百度搜索这个cms,发现有通用漏洞,Beecms 通用漏洞
5G为什么能有这么快的速度?它凭什么是新一代的移动通信技术?
你可能看过这个画面,一部5G手机运行着一个网速测试连接成功的瞬间速度直接拉满,指针死死的压在表盘的最大值。5G为什么能有这么快的速度?它比4G先进在哪里...
想在 Linux 终端中做一些有趣的事情吗?把一张普通的图片转换成 ASCII 艺术怎么样? 你知道 什么是 ASCII[1] 么?它是一个标准,在 8...
可能你还不知道什么是Modbus,其实,Modbus在现实生活中应用非常广泛,很多工业电子设备的系统中基本都有它的存在。 今天针对初学描述关于一些Mod...
1.功能简介 od(Octal Dump)命令用于将指定文件内容以八进制、十进制、十六进制、浮点格式或 ASCII 编码字符方式显示,通常用于显示或查看...
编辑推荐厂商产品技术软件/工具OS/语言教程专题
电机控制 | DSP | 氮化镓 | 功率放大器 | ChatGPT | 自动驾驶 | TI | 瑞萨电子 |
BLDC | PLC | 碳化硅 | 二极管 | OpenAI | 元宇宙 | 安森美 | ADI |
无刷电机 | FOC | IGBT | 逆变器 | 文心一言 | 5G | 英飞凌 | 罗姆 |
直流电机 | PID | MOSFET | 传感器 | 人工智能 | 物联网 | NXP | 赛灵思 |
步进电机 | SPWM | 充电桩 | IPM | 机器视觉 | 无人机 | 三菱电机 | ST |
伺服电机 | SVPWM | 光伏发电 | UPS | AR | 智能电网 | 国民技术 | Microchip |
开关电源 | 步进电机 | 无线充电 | LabVIEW | EMC | PLC | OLED | 单片机 |
5G | m2m | DSP | MCU | ASIC | CPU | ROM | DRAM |
NB-IoT | LoRa | Zigbee | NFC | 蓝牙 | RFID | Wi-Fi | SIGFOX |
Type-C | USB | 以太网 | 仿真器 | RISC | RAM | 寄存器 | GPU |
语音识别 | 万用表 | CPLD | 耦合 | 电路仿真 | 电容滤波 | 保护电路 | 看门狗 |
CAN | CSI | DSI | DVI | Ethernet | HDMI | I2C | RS-485 |
SDI | nas | DMA | HomeKit | 阈值电压 | UART | 机器学习 | TensorFlow |
Arduino | BeagleBone | 树莓派 | STM32 | MSP430 | EFM32 | ARM mbed | EDA |
示波器 | LPC | imx8 | PSoC | Altium Designer | Allegro | Mentor | Pads |
OrCAD | Cadence | AutoCAD | 华秋DFM | Keil | MATLAB | MPLAB | Quartus |
C++ | Java | Python | JavaScript | node.js | RISC-V | verilog | Tensorflow |
Android | iOS | linux | RTOS | FreeRTOS | LiteOS | RT-THread | uCOS |
DuerOS | Brillo | Windows11 | HarmonyOS |