) }+ R8 M0 X/ E; F$ O q: `$ R1 {5 o u% u- u% s R
' J7 }* \, O7 `
. X1 Z, O1 Y! h& V3 Q5 `; Y7 V
爱丽舍轿车仪表算法
& i2 ?2 G, o! z6 T爱里舍液晶里程表数据 (7592KM)* b; t ]+ A: f# I
芯片型号: 93C46 4 M1 v# Y9 y' G1 A9 }1 Z+ W
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
4 m, A- ]& h$ v4 }00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................$ E; {8 o( D% ?5 K$ Y3 B% h; D
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C. S& _0 o! o8 P2 O" J1 z
00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...8 z+ D6 z4 e7 t- h; v1 c) [1 r6 L! D
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.+ H8 O: N' t+ }# Z! _) q. p
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
6 G$ B) C2 M7 ?, @- t7 ^$ Y% {! b00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....% j; J3 I2 y! u& |# B
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................
7 \ [% r6 s0 }- d4 G! `7 Y2 v: J( h6 i' _& H- V& W4 {
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
+ s- t/ i+ E! W5 d6 O& }重复四次,17为效验位。7为里程数的第一位。1为加密位。 ! B( x8 O& k9 k% d% {
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
% P( e: _6 N- K然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,6 H% ^( y h9 ~: c- N
取反的结果的低位数字就是加密字节的高位数字
0 K* V; b4 \ b/ D可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。
$ F! T" \( [2 Y! \. L* X(7 个数字 指的是 :% E$ [1 p0 L* v. Y1 h' {
加密字节的低位数字 7- {2 C8 e5 i9 k* L2 m+ }! O
公里数的十万位数字 0( a3 e) Q$ b5 \
公里数的万位数字 0 / @6 ?& _; P2 V7 s- G' r- P
公里数的千位数字 7
0 {! f* X! y0 y9 S" ~& j公里数的百位数字 5
7 q2 Y4 U$ ~; k# P5 m% |( e/ w9 q公里数的十位数字 9
2 J& T6 c/ u+ o6 p) t w1 t公里数的个位数字 2
! h) j% e" W- `5 Z5 _& v8 L# j1 w, u8 e* ]: ~9 r$ R, A& R( n
7 0 0 7 5 9 2
: f; B5 g: v# U0 ~& u/ t9 ]# e)+ p W( i2 ]1 q8 l; O2 {
看看这个数据的计算过程:
) m7 _ g# I7 i9 w+ Y; k1 V首先可以确定加密字节的低位数字 = 7
: b/ ~- p5 T+ N( L" Z7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1- o! E6 H, Y2 [ x& g# l* a
因此加密字节的高位数字为 1
* i0 q# T% w3 i/ L |