java - 解码 IBM/360 列二进制格式的十六进制数

标签 java c# binary

我收到此消息\1004\1001\2001\1010\0900\0000\0006\2012。它采用 IBM 列二进制格式。阅读并试图理解很多像下面这样的文章甚至不能让我走上正轨。

https://v8doc.sas.com/sashtml/lrcon/z0695224.htm http://homepage.divms.uiowa.edu/~jones/cards/codes.html

我可以要求一些提示吗?显然我想编写一个解码器以供将来使用。

最佳答案

IBM/360 列二进制格式定义了如何在 Hollerith 卡(打洞卡)上表示十六进制值。这被描述为例如在 http://www.jwdp.com/colbin1.html并在 https://www.masswerk.at/keypunch/

打洞卡有多种版本,请参见https://en.wikipedia.org/wiki/Punched_card 。最常见的 IBM 80 列打洞卡有 80 列和 12 行。这些行从上到下标记为 Y、X、0、1、2、3、4、5、6、7、8、9。使用 IBM/360 列二进制格式,您的代码将遵循以下格式:

hex     Byte 1 (hex)     Byte 2 (hex)     Byte 1 (cbf)     Byte 2 (cbf)     cbf (=column binary format)
\1004   10               04               X                7                X7
\1001   10               01               X                9                X9
\2001   20               01               Y                9                Y9
\1010   10               10               X                5                X5
\0900   09               00               03               0                03
\0000   00               00               0                0                blank
\0006   00               06               0                78               78
\2012   20               12               Y                58               Y58

接下来,您必须应用按键将打洞卡数据映射到字母、数字等。您还没有指定特殊的按键。因此,使用 IBM 029 型按键是有意义的,它是最常见的按键,请参见例如https://www.masswerk.at/keypunch/和你的链接 http://homepage.divms.uiowa.edu/~jones/cards/codes.html .

cbf      029 keypunch
X7       P
X9       R
Y9       I
X5       N
03       T
blank    blank
78       "
Y58      (

总而言之,结果是 PRINT "(

关于java - 解码 IBM/360 列二进制格式的十六进制数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52612738/

相关文章:

java - 主线程没有被中断

java - 我必须在 Java 中自己的类中使用 getter 方法吗?

c# - 在文件加载时重新格式化文件中的日期

c# - 从 DateTime.Now 获取当前一周的天数列表

c - 使用霍夫曼码解码

java - 如何以编程方式使用 MBR 和 USB 闪存扇区?

java - 带有.a​​ddCacheFile的Hadoop Mapreduce CompileError(使用外部Jar)

c# - 如何处理返回结构的不变性?

compiler-construction - 机器如何解释二进制?

c - 使用 memfd_create 和 fexecve 从内存运行 ELF