9 K4 I0 B. D H' @. ]) j
- }( I8 E) ~1 V0 f- u0 S9 ?9 I# H7 b
# l- I6 B, C2 Y' D- P! l6 q/ }/ [
) k9 O" l; c& L+ _4 c% w爱丽舍轿车仪表算法 " O6 A u! A \1 H* l
爱里舍液晶里程表数据 (7592KM)
`6 T3 \9 v! R* ?* F, h. p芯片型号: 93C46
2 v2 @9 n; M' X0 S1 z. T% x00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.; P# z+ C3 e! C+ [) Y
00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................0 w% q9 ~: x$ Y6 Y1 |3 W! Y
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
# h; e1 m. R4 b: l5 E7 N$ g; ~! l00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...( n2 t; G) S4 i% A+ F' j7 ^9 d
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.' F/ Y. G9 N" B, o) z6 e# _5 G- Z8 ~& z
00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
5 r0 M( |2 a& Q00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....
& ` R. \8 a6 O. r$ X9 O00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................
/ J3 _$ W% x; s8 F% H2 v8 ]
" v/ i9 ~* ], |7 k! f* Z00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
! c8 y9 r# ?! Y% \$ \7 _! A0 Z, o p重复四次,17为效验位。7为里程数的第一位。1为加密位。
8 Y8 | x& |/ u; ?1 E! x' m6 K首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 72 }2 W3 H4 v! x2 P
然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
$ W* j+ c: T" U1 ~+ m' p" Z, I取反的结果的低位数字就是加密字节的高位数字
6 M' e! h' R! l. G1 J可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。/ N& O4 W) S. v! e' {) y5 A
(7 个数字 指的是 :
" f+ v2 S" w& e1 t( C$ N加密字节的低位数字 7
2 Z' d; i: a6 E- _公里数的十万位数字 01 i1 \! b1 X5 ?0 `
公里数的万位数字 0 - I' |- S# u# P+ g- t
公里数的千位数字 7 ' ^7 B8 U* Q0 [& c! l3 t
公里数的百位数字 5
9 a% v2 ]1 ~+ m9 q' i: @公里数的十位数字 9( H6 d6 G% ^5 K' n6 g
公里数的个位数字 2
! u4 }, B# m- ^5 s
! b( X W6 P; k" _7 0 0 7 5 9 2
+ \ {3 J5 q( n)
0 T6 i6 v; C5 S: \3 Y看看这个数据的计算过程:
; `7 t8 T3 w0 H首先可以确定加密字节的低位数字 = 7
8 M) ~4 O% q# ?- `- J S- P7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1' E# v# D' a) k7 p
因此加密字节的高位数字为 16 Q5 i9 A! L8 }, t
|