% `7 S! r) G( S7 _% T
3 L, Y5 K5 m: y0 J: B
6 z1 m' q( ] Y1 u1 M
* a) d# c! m5 e1 p0 j; b: P爱丽舍轿车仪表算法
7 }1 D' ?2 K0 X, N爱里舍液晶里程表数据 (7592KM). U6 s0 k2 g8 X& S+ d' a# [8 F
芯片型号: 93C46
8 {$ T( q: t; f00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u." l" k0 m3 K# \9 f- I
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
' |2 E3 Y0 B1 v! {; {1 Q7 C. r00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C6 }4 c$ t c0 _2 M
00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...3 _$ |/ \8 [# | g
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.! _, ]1 `! `: {0 j8 R
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................! `# Y" Z- t2 F& \# d$ L
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u....., }) o/ r" ]% F
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................- C& h+ ^9 j/ L0 T
' K! x' [+ U' u8 Q) Q, L
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
. [+ m& H/ G4 D( z) {9 Y0 V重复四次,17为效验位。7为里程数的第一位。1为加密位。 3 y5 t# Z' N0 H
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
7 d5 q9 e q* N% @# q6 H3 o( Q然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,7 G: n- D6 U2 _. l
取反的结果的低位数字就是加密字节的高位数字
$ a$ S2 E6 N6 n$ u7 T- G! b; A, _3 P可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。8 f T% s7 o# f, M
(7 个数字 指的是 :2 C) z* K( X: p/ S) r( u) l- R
加密字节的低位数字 7 T5 w& @" U% x4 ~- }
公里数的十万位数字 0" J6 x. X0 R! D; u" ~; B+ \
公里数的万位数字 0
0 X5 X4 C% S7 s9 `公里数的千位数字 7 2 p- W _! A& J( x: M+ |3 I' A5 w
公里数的百位数字 5
0 n, h2 \0 R0 J ~, W公里数的十位数字 9
. X6 z( j0 Q9 J& G- p z8 @0 m公里数的个位数字 2- A3 @8 q7 M3 H; U" p- F
/ g8 p3 I% ~3 a& U7 0 0 7 5 9 2$ Z p/ _! N2 V4 m7 ?( P
) H1 m: i3 Y, D/ ^- P
看看这个数据的计算过程:
: f0 y& H, q9 U/ Z首先可以确定加密字节的低位数字 = 7
9 g( ]( {' {; m0 ^7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1: d3 E. G" N& b! h# G: _
因此加密字节的高位数字为 1; o. G& Z4 c- W q1 f+ S9 n
|