" F# Y# c& e( t. `
* b( Q- R+ v }" ?- c9 r
' C M1 u' m, P! {& r + ~7 g- E0 M* |. s. @
爱丽舍轿车仪表算法
0 p5 } C: E/ ~! J% X4 X7 Y* K爱里舍液晶里程表数据 (7592KM)
. i9 U$ I% Y3 K( m# s芯片型号: 93C46 * x# H# Q' [2 r7 \* Z; O* H2 [9 Y
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.# Z" ~5 R# V) g% E8 M) P a
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
9 N, E0 _ n5 H" X; _00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C+ [4 g; o% D0 h* ^
00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...
6 f8 i0 |! q9 z00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.4 E2 z) q p8 V: S7 Q
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................3 l9 H% a3 @& N2 C4 \7 m
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....3 K' B: a. z) S% D+ |. D
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................
: g' n4 W" j5 a! {2 Y7 I3 ~9 `4 R
* h1 {3 P) j$ P5 W00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.' x! X3 c, k1 y/ u$ n0 a
重复四次,17为效验位。7为里程数的第一位。1为加密位。 + ^2 v' x' b5 p* z. t8 W' w& C1 h
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7: A, |+ {' [/ p8 t( Q1 |( M7 Q% v
然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,1 r+ X( j. D6 l, h* S/ @7 e8 Z
取反的结果的低位数字就是加密字节的高位数字" a+ a! w Z! V, o
可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。: U. l/ H2 ^6 `+ `
(7 个数字 指的是 :/ y/ o0 v4 y1 d+ W. t
加密字节的低位数字 7* V9 \5 u' B8 k9 m# ?% v
公里数的十万位数字 0
( X( U4 ]! R0 L; z0 H, Z公里数的万位数字 0 - E" q' a: b" r- x i6 w% Q: ^4 h* ]
公里数的千位数字 7
5 h$ E# T" Z0 B1 A7 g* m# I公里数的百位数字 5
% \, P; ]" M0 ^- c5 v7 a+ x公里数的十位数字 9
: l& q1 i+ N& Q* _+ C$ @: I公里数的个位数字 2
& c J: {( T- ~! n7 n5 V5 F' y: h7 a, `
7 0 0 7 5 9 2& l2 k7 w) D, ^' I9 U$ g! o
)8 g6 A, Q P# \6 O; @
看看这个数据的计算过程:
' f7 `# [3 l& z0 q首先可以确定加密字节的低位数字 = 79 W% W$ r- F6 |7 H0 E
7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1
: z! \3 L; p4 p& [因此加密字节的高位数字为 1
: Z1 k0 s! f/ h+ R |