) C3 w& v& x! J% Y2 E: q! n) J8 ]* ]& ?
3 [; b3 @- c. ^! ~$ W
& F! n. e) E+ W: K: d( E6 {! H% L4 a
爱丽舍轿车仪表算法
+ Z+ d6 |) Z5 ]) T6 y爱里舍液晶里程表数据 (7592KM)6 ~9 z0 q- ^9 J* }; U3 [
芯片型号: 93C46 ) {, f0 C" l7 U3 F6 A# s. [
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
, q( V. ?# r+ |9 [$ k00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
7 `2 F' V1 ^+ _! E1 X) A00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C F6 n/ I1 Z6 k, z/ o
00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...; P! @, x# V7 y* S" u$ G
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.' @8 j; U% \# \; s
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................0 ^3 T. |% _+ `& Z( I: p2 `. F. X4 D
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....* N4 O) \! ^5 V# l* m
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................
n' C* _- c# Z1 S. B8 s( I& Y5 U5 |
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.& Z$ M" c/ H" N: z; s& M1 {2 F- K6 z: O
重复四次,17为效验位。7为里程数的第一位。1为加密位。 * w" Z/ ~! I, d
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
3 |4 S+ M0 h4 S( ?/ z. c然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
2 I% h' s6 V1 g取反的结果的低位数字就是加密字节的高位数字* x" E6 J7 o3 n- [% y/ p
可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。; u+ L& j5 i5 C6 h: p
(7 个数字 指的是 :
7 T. z7 X G' M/ P6 ?加密字节的低位数字 78 _! F+ j, x; @* r, [
公里数的十万位数字 0
7 V0 w! a/ Z% Q" C/ B: E4 f+ J- _公里数的万位数字 0
6 x. }8 I7 Y+ c5 S1 C' x公里数的千位数字 7 ' S4 v" O. [ ]) c% G9 v; Z) Q; L
公里数的百位数字 5$ W$ M$ }' t) U* K9 d
公里数的十位数字 92 R2 A% N# Z) l/ {
公里数的个位数字 26 v$ v) N) p, h; s: c
0 z/ j$ Z- U) }& [8 N' y
7 0 0 7 5 9 2
0 S$ _ W. k" o, X5 h0 ~+ |)5 l% _" J) |/ M. v0 j9 H9 g' X
看看这个数据的计算过程:
- F0 ~! Y, W( Y; l首先可以确定加密字节的低位数字 = 7
9 @- H% a% L( {7 G9 t7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1
9 y6 j, q+ ~" V因此加密字节的高位数字为 1; R: x( ^5 P1 W M# ^& H2 M/ |
|