! B1 L- R- _+ I ^5 ]! W- Z. C: A2 a/ ~# R+ G
( @* \( x6 s3 \
0 ^: ]' G5 \, U7 W- W! N5 {爱丽舍轿车仪表算法
( V3 q9 |3 k, G8 E, x爱里舍液晶里程表数据 (7592KM)2 V! K! |. C# p/ `9 J" x
芯片型号: 93C46 : y2 H6 j6 l& L( x
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
/ y, l# q1 V" `* m00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................; S1 l: `( B& j. b1 W+ ^$ e
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
( c: r7 {5 O; r. m _9 z4 h# \00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...
/ |+ j! x" V. c: ~00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
( @- I7 f& Y4 @+ f00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................& Z+ y* z) l% t. b0 X
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u....., O( _0 n: h6 X. \
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................- ]7 z" \+ \: @* u$ X
, h* U5 D, z) f. N; x. }00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.) F u9 I4 ~; M' v+ A2 j( S3 a% r
重复四次,17为效验位。7为里程数的第一位。1为加密位。
6 L) d4 |4 ?. a D首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7/ f" n% j- v! U2 x! n$ R" K0 Z" \
然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,& R# v7 }7 k/ K, h
取反的结果的低位数字就是加密字节的高位数字
3 M+ e: K: W( Z3 s# F( P可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。9 u) E$ W) w. c. Y& y
(7 个数字 指的是 :+ _, ]" o* S# n! M% }6 X V) f
加密字节的低位数字 7
! A. A" ^9 s; b( y( D& |公里数的十万位数字 0$ X! U+ {& J" U6 a
公里数的万位数字 0 & }$ P2 m2 k* d N# R0 |
公里数的千位数字 7
" x" F' c. Q. Y+ v7 c公里数的百位数字 5
1 d9 U2 q) {- i& t; @公里数的十位数字 9( Z+ P* H: w& D0 P. l
公里数的个位数字 2
3 T4 I _+ [& Q! H
* T X% E8 m0 Y p- V7 0 0 7 5 9 2
; r1 { ]4 K. X+ N)
; }' `8 B; u0 v9 `/ M2 Z看看这个数据的计算过程:0 \; n+ s+ m/ z$ g
首先可以确定加密字节的低位数字 = 7
* [5 R4 R5 b3 t1 W3 M7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1
1 s/ X: k8 b/ W9 [9 u5 P因此加密字节的高位数字为 1
3 u7 U# n0 }0 D( H/ F6 C |