拆解报文

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

报文的拆解

1、发送方式

pos 机发送一个16进制的报文8个字节一组进行发送

2、报文的机构

一个报文有三部分组成:TPDU 、报文头、应用数据

3、BCD码(压缩码)

Char buf []="123456";

采用BCD 码存储: char buf [0]=0x12;

char buf[1]=0x34;

char buf [2]=0x56;

4、对TPDU和报文头拆解

TPUD :占10个字节,,BCD可以压缩一般 5 个字节长度

报文头:12个字节、压缩之后是6个字节。

所以报文的前11个字节为TPUD 和报文头60 00 01 01 00 00 00 00 00 00 00 两个数字为一组,为一个字节。

5、对数据域进行拆解

[1] 对消息类型拆解

四个字节压缩后是两个字节既两组:02 00

[2] 对位元表拆解

B

BINARY 位图格式

64 位一个字节8位所以是8个字节没有压缩所以是8组数据

将这8组数据16进制转换成2进制

0 :0000 8 :1000

1 :0001 9 :1001 (8+1)

2 :0010 10(a):1010 (8+2)

3 :0011 11(b):1011 (8+3)

4 :0100 12(c):1100 (8+4)

5 :0101 13(d):1101 (8+5)

6 :0110 14(e):1110 (8+6)

7 :0111 15(f):1111 (8+7)

转换成2进制后,有1 的那位代表该域有值,然后去报文规范中找到该域,[3] 对各个域的拆解

M 为强制域若没有则证明该消息有错。

BCD 码为压缩码n6数字类型6个字节,压缩后为三个字节,取三组00 00 00 再找下一个域,对余下报文分析

注意类型为ASCII 不需要压缩an 12 表示该字段由字母和数字组成,12 个字节取12组

LLVAR :V AR 可变长度LL 两位

ans .. 25 :数字、字母、下划线

.. 这个字段的长度例如长度为7 (25个字节之内都可以)则为07 ,在报文中会显示出来07 00 00 00 00 00 00 00 00 一共7组

注意为BCD 码压缩

若长度为37 则37 12 34 56 78 90 (0~10)

12 34 56 78 90 (11~20)

12 34 56 78 90 (21~30)

12 34 56 70 ( 31 32 33 34 35 36 37 ) 奇数时最后一位补0

相关文档
最新文档