转换 | 编码 | 主机

> ebcdic | ibm | 传统系统 <

// EBCDIC - 扩展二进制编码十进制交换码

0 字符
0 字符

>> 功能

[MAINFRAME]

IBM 主机

IBM 主机系统使用的标准字符编码。

[CODE PAGES]

多种代码页

支持不同的 EBCDIC 代码页和地区设置。

[LEGACY]

遗留系统支持

处理传统主机数据和迁移项目的关键工具。

>> 技术说明

EBCDIC 的工作原理

EBCDIC(Extended Binary Coded Decimal Interchange Code,扩展二进制编码十进制交换码)是 IBM 提出的 8 位字符编码。与按顺序排列相关字符的 ASCII 不同,EBCDIC 受穿孔卡片历史的影响,将字符分散在整个编码空间中。不同的 EBCDIC 代码页用于支持不同语言和地区,其中 EBCDIC 037 是美国和加拿大最常见的版本。

EBCDIC 与 ASCII 对比示例

字符映射示例(EBCDIC 037):

字符 | ASCII | EBCDIC
------|-------|--------
空格 | 0x20  | 0x40
  A   | 0x41  | 0xC1
  B   | 0x42  | 0xC2
  0   | 0x30  | 0xF0
  1   | 0x31  | 0xF1
  a   | 0x61  | 0x81
  b   | 0x62  | 0x82

"ABC" 在 ASCII 中: 41 42 43
"ABC" 在 EBCDIC 中: C1 C2 C3

"123" 在 ASCII 中: 31 32 33
"123" 在 EBCDIC 中: F1 F2 F3

为什么仍然使用 EBCDIC

  • IBM 主机环境中的必备编码
  • 兼容现有遗留系统
  • 数据迁移与批处理项目
  • COBOL 与主机应用开发
  • 长期历史数据的保存

>> 常见问题

什么是 EBCDIC?

EBCDIC(Extended Binary Coded Decimal Interchange Code,扩展二进制编码十进制交换码)是 IBM 在 1963 年提出的 8 位字符编码。它主要用于 IBM 主机和中型机系统。与 ASCII 不同,EBCDIC 的字符排列方式延续了穿孔卡片时代的设计。

EBCDIC 与 ASCII 有何不同?

EBCDIC 源自穿孔卡片编码:卡片上特定位置的孔代表不同字符,这导致字符分布并不连续——字母并非按顺序排列,中间穿插着空档。ASCII 则是从零开始为现代计算设计的高效编码,因此结构更直观。

什么是 EBCDIC 代码页?

EBCDIC 针对不同语言和地区有多种变体,称为代码页。常见示例包括:EBCDIC 037(美国/加拿大)、EBCDIC 500(国际)、EBCDIC 875(希腊语)、EBCDIC 1047(开放系统)等。每种代码页采用不同的字符映射,以满足本地需求。

现在还在哪些场景中使用 EBCDIC?

EBCDIC 仍广泛用于 IBM 主机环境(z/OS、z/VM、z/VSE)、银行与金融系统、政府遗留系统以及大量 COBOL 应用中。许多机构依然维护基于 EBCDIC 的系统,以支撑已经稳定运行数十年的关键业务流程。