热门问题
时间线
聊天
视角
EBCDIC
来自维基百科,自由的百科全书
Remove ads
EBCDIC(英语:Extended Binary Coded Decimal Interchange Code,扩增二进式十进交换码),为IBM于1963年-1964年间推出的字符编码表,根据早期打孔机式的BCDIC即一种二进化十进数(BCD,Binary Coded Decimal)信息交换编码改进而成。是IBM迷尔级以上电脑的标准码。
它的缺点是:英文字母不是连续地排列,中间出现多次断续,为撰写程序的人带来了一些困难。
字符对应
EBCDIC编码表,最初定义了(不计空白字符在内的)88个可打印字符,同时还定义了减去26个小写字母后的62个可打印字符的子集[1]:
EBCDIC | ||||||||||||||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
0x | NUL | SOH | STX | ETX | SEL | HT | RNL | DEL | GE | SPS | RPT | VT | FF | CR | SO | SI |
1x | DLE | DC1 | DC2 | DC3 | RES/ ENP |
NL | BS | POC | CAN | EM | UBS | CU1 | IFS | IGS | IRS | IUS/ ITB |
2x | DS | SOS | FS | WUS | BYP/ INP |
LF | ETB | ESC | SA | SFE | SM/ SW |
CSP | MFA | ENQ | ACK | BEL |
3x | SYN | IR | PP | TRN | NBS | EOT | SBS | IT | RFF | CU3 | DC4 | NAK | SUB | |||
4x | SP | ¢ | . | < | ( | + | | | |||||||||
5x | & | ! | $ | * | ) | ; | ¬ | |||||||||
6x | - | / | , | % | _ | > | ? | |||||||||
7x | : | # | @ | ' | = | " | ||||||||||
8x | a | b | c | d | e | f | g | h | i | |||||||
9x | j | k | l | m | n | o | p | q | r | |||||||
Ax | s | t | u | v | w | x | y | z | ||||||||
Bx | ||||||||||||||||
Cx | A | B | C | D | E | F | G | H | I | |||||||
Dx | J | K | L | M | N | O | P | Q | R | |||||||
Ex | S | T | U | V | W | X | Y | Z | ||||||||
Fx | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | EO |
在处理ASCII可打印字符之时,将其[
占位¢
,其]
占位!
,其!
占位(表示逻辑或的)|
,而其^
占位(表示逻辑非的)¬
,并补充上所缺少的属于ASCII的6个标点符号,成为(不计空白字符在内的)94个可打印字符的编码表:
EBCDIC | ||||||||||||||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | |
0x | NUL | SOH | STX | ETX | SEL | HT | RNL | DEL | GE | SPS | RPT | VT | FF | CR | SO | SI |
1x | DLE | DC1 | DC2 | DC3 | RES/ ENP |
NL | BS | POC | CAN | EM | UBS | CU1 | IFS | IGS | IRS | IUS/ ITB |
2x | DS | SOS | FS | WUS | BYP/ INP |
LF | ETB | ESC | SA | SFE | SM/ SW |
CSP | MFA | ENQ | ACK | BEL |
3x | SYN | IR | PP | TRN | NBS | EOT | SBS | IT | RFF | CU3 | DC4 | NAK | SUB | |||
4x | SP | [ | . | < | ( | + | ! | |||||||||
5x | & | ] | $ | * | ) | ; | ^ | |||||||||
6x | - | / | ¦ | , | % | _ | > | ? | ||||||||
7x | ` | : | # | @ | ' | = | " | |||||||||
8x | a | b | c | d | e | f | g | h | i | |||||||
9x | j | k | l | m | n | o | p | q | r | |||||||
Ax | ~ | s | t | u | v | w | x | y | z | |||||||
Bx | ||||||||||||||||
Cx | { | A | B | C | D | E | F | G | H | I | ||||||
Dx | } | J | K | L | M | N | O | P | Q | R | ||||||
Ex | \ | S | T | U | V | W | X | Y | Z | |||||||
Fx | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | EO |
在后来代码页版本的EBCDIC中,定义了“不变子集”58个字符,即在62个可打印字符子集基础上再去掉4个被占用了字符,并且计空白字符而不计$
在内,如下图灰色底所示。然后于各版本的编码表中,加入了其他字符,以符合各地用户所需。
以下是其中两个版本的EBCDIC编码表:CP037(英语)及CP500(多语言#5)。CP037为ASCII的[
、]
和^
重新指定了位置不再占用EBCDIC的¢
、!
和¬
,将其!
认同为原来EBCDIC的!
。CP500为被占用的EBCDIC的¢
、|
和¬
重新指定了位置,将EBCDIC的!
认同为占用了其位置的!
。
于编码表中,0x00 - 0x3F及0xFF为控制字符,0x40为空格,0x41为不换行空格(no-break space),0xCA为选择性连字号(soft hyphen)。
Remove ads
参见
外部链接
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads