$ b% |/ f- k( ` Z5 t- P( ?8 p
- {" t+ J5 b5 ]- o6 c
0 e; p2 y' U9 O3 D: @1 x3 V- ^# i ! p* }$ H4 h6 p. y/ Q7 v' F7 y, k, \- B* v
爱丽舍轿车仪表算法 , B$ U9 n6 H2 s4 z8 e
爱里舍液晶里程表数据 (7592KM)" x& F( z; s- B
芯片型号: 93C46
4 ]: ]* E- Z( \: D00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
1 R4 W! m4 i1 n. b" c& Z00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................& h0 O2 |! [, h/ M) L
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C0 v4 W# x4 ~$ k$ s# P+ m6 K5 w- U
00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...: F) J- _3 ^% B' O5 ^, K
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
+ A' J. g. V/ J' u5 {00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
% c- d% `, y) b8 m A00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....$ B9 P, @8 p$ ^& i8 U6 x2 b7 w9 D
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................' o" p& r( |- k/ |7 X# h
& s5 L% r( ~; L5 ~
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
7 C% \& f3 J# B: h( S重复四次,17为效验位。7为里程数的第一位。1为加密位。 # v8 |# ~; F4 B6 I+ o: q
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
9 c% W4 O1 W+ p1 k% h6 i然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
* T2 P8 U+ S! S+ m4 ]- t6 W/ K取反的结果的低位数字就是加密字节的高位数字
7 Y5 w) ]7 q" D! N) F可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。
! Z S- M d" A+ H: y! l(7 个数字 指的是 :1 }4 E. o, i1 j) c
加密字节的低位数字 7
- c- E1 H6 L! F: K$ f公里数的十万位数字 0
0 p2 J8 j( o6 o1 X% \2 p公里数的万位数字 0
1 a# J. N7 Z, [: M- f公里数的千位数字 7 , b- E+ ~! Q6 c: C- ~
公里数的百位数字 5
4 N( A, k- w" f公里数的十位数字 9
[9 y7 M' f; z/ r) h+ ?公里数的个位数字 24 D' ?0 E0 Q/ M# U
- n9 F/ p* t& n( X* I N3 r% u9 w0 d7 0 0 7 5 9 2/ P) b/ m8 |& C. p
), h* K# z( O8 Q& M
看看这个数据的计算过程:
7 O, u! B& D8 k' e首先可以确定加密字节的低位数字 = 7
, [$ d' P% g% g7 E7 v& u7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1
; V" H0 e' W6 ~! }0 n% t因此加密字节的高位数字为 1
; v$ Z2 _. }+ { W1 y |