4 G1 K) m! q8 N3 N- V( a5 J
; E. W! D) D5 ` e
) |% w D2 F+ S7 V6 R
0 x, J8 i+ a( s9 d. `5 a爱丽舍轿车仪表算法
- P6 G9 ]6 k% [5 b爱里舍液晶里程表数据 (7592KM)
9 S/ |, V2 R( m. Y. P: U" n芯片型号: 93C46
8 e# C/ n# }- t00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
7 L6 r6 p' Q, |$ s0 F/ ~" c( @00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
( U; g9 y$ y/ \" V* m00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
% h1 v2 n5 J1 g1 [* x00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y... U; g q1 c5 v0 z7 c
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
( N" R8 T* u+ |% M. z5 z7 j00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
1 b6 D, c& M! a J& H+ Z) f* E00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....% P. C5 s1 a& j$ }) t
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................- }0 `" q' @8 I I* R
4 W( |7 y: j4 q; R00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.. x. m% q8 K- N" L; B' R' M
重复四次,17为效验位。7为里程数的第一位。1为加密位。 % ~# I. X8 U) S- z. x) @; W' \
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
( i" w: |4 ~1 H! a. F然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,9 G, g" A g) Y ^: o/ c
取反的结果的低位数字就是加密字节的高位数字
9 i8 c" i/ N3 P可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。
+ e9 X3 m( O" [9 o1 v(7 个数字 指的是 :
7 \3 ?. k+ ]7 F% i: z- J加密字节的低位数字 7
& b; u5 C0 T: ?7 m! S7 Q/ G: ~公里数的十万位数字 06 m4 D9 l0 v/ P+ S8 v& p/ y
公里数的万位数字 0 3 J' z2 {1 S0 S" q! F, T% J
公里数的千位数字 7 ( M! G i/ I3 I# M8 d
公里数的百位数字 5
$ [( ?6 |3 P% e4 x: t. X, E& ?* h8 m2 E公里数的十位数字 9/ G- p( `/ k+ c% J+ B' e
公里数的个位数字 27 S+ X4 L [- T& f2 n
: T. f. r5 u) p5 m6 `4 I) Z
7 0 0 7 5 9 23 B6 A0 D6 E% G6 s( g, J: c. \
)* Y8 ~0 D7 h1 n8 G
看看这个数据的计算过程:9 D( O8 m' ]/ O. f+ W& [# |" A" R
首先可以确定加密字节的低位数字 = 7% D, H# u" c' ~# N0 A: q. J
7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1$ ^4 s' y/ _9 G
因此加密字节的高位数字为 1
! P. y% s( B! u1 K) C* ? |