. h. c; Y5 r- ]: {( q5 n, ]7 [5 c" c% `
9 ]6 s# n- W$ ^
4 ~1 [* z: O1 ?$ \
爱丽舍轿车仪表算法 $ x& N5 F2 I0 m# s
爱里舍液晶里程表数据 (7592KM)
" v; X6 F/ m3 \. L3 [, o芯片型号: 93C46 , S9 i& ] O6 h- V5 ?
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.* f1 v$ O: v3 q- H0 V' j6 Y1 Z+ u
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................3 W: [3 l; [$ j% n
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
* G6 {" t0 ^/ i7 ~00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...* S$ g# R) E2 G6 U' e2 m
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.0 d3 d3 ?; n% i' N1 v% U
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
4 c5 X, n, ]. p0 A. M00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....
5 ]3 k9 m6 E/ T. u9 P3 T00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................7 y6 B: \6 X# @7 ~$ a" \ e
% c" H2 D- r8 i9 W$ u5 L3 T" \00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
4 j" k, r1 g. c- H) W n* G; E% C重复四次,17为效验位。7为里程数的第一位。1为加密位。
8 r% M: _. B, f; Z! b首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
& |9 U2 B; ?2 r; }然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
# N5 A3 _, i: G( U+ v9 C* b$ b取反的结果的低位数字就是加密字节的高位数字
+ p: u# M* X4 e+ ^可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。
/ t# \+ I3 g7 q7 Q9 o+ n+ {& b- }(7 个数字 指的是 :7 ?9 e, H1 `* A+ v" W
加密字节的低位数字 7
$ C. {- D8 a+ U公里数的十万位数字 00 W* [# V* ]) b9 m0 S6 q ?
公里数的万位数字 0
; r3 g& d: c& f1 l- P6 v: q0 j# Q& F公里数的千位数字 7
0 J8 P% T. Q" J: ~公里数的百位数字 5
6 h) n$ s5 g- s2 T公里数的十位数字 96 }* a: b# K a4 Q0 H
公里数的个位数字 2: m2 n- Q: g. Y1 u/ U8 A
; w! b" U$ b+ J$ _1 D4 j
7 0 0 7 5 9 2- t8 k$ F6 R* Z/ K
)
4 y* c6 Q8 _$ n2 `' |/ u- B看看这个数据的计算过程:
3 E6 N, d }% U1 N* A4 d# M, _首先可以确定加密字节的低位数字 = 7( S$ ^* ^% `& D1 f# |7 t
7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E19 N, N$ B. e( u$ [. M4 A( a8 r
因此加密字节的高位数字为 1
8 `# B2 ^# {; n! ?' K: e |