$ t# F/ I1 T9 ?3 U
; y- o1 f; Q* C: _ " x/ y" r! M" _
- X! c( Y: c* J2 ^5 i5 |
爱丽舍轿车仪表算法
% @/ r+ ~0 H S& }& l爱里舍液晶里程表数据 (7592KM)
" Z' ]) [: g- x! G$ F2 y% Z! N芯片型号: 93C46 ; u9 t% y7 L5 I( M% j
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
; d" ?7 s' Q: Z00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
4 H I& W6 ~. r) ]" l00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
! ^' x2 K; E! Y9 J; ?1 ]: c3 j5 \00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...6 l& C7 B8 f; Q! V; E0 L9 R
00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
- S" a: @9 z- _# }' i00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................
* M& m9 }: | \& o00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u.....( p6 m/ x5 U* g7 {
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................
+ \8 z" @# i/ N' s* Z4 p
4 \& O) G' Q9 [# o00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
~( q# h2 l! m重复四次,17为效验位。7为里程数的第一位。1为加密位。 ' [8 Z2 v9 R9 k8 E- E# n1 ]
首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 7
1 f- a9 @4 V) O/ w; s, d7 H/ k然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
* Q, s- f# E: W) M" {9 z I$ x; V4 k取反的结果的低位数字就是加密字节的高位数字( |+ |- r: {" K7 `" e
可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。. _. V" w+ Z. X& _$ N
(7 个数字 指的是 :
+ e. h+ X6 u2 V, M$ W加密字节的低位数字 74 ^% R/ }2 M7 o/ G. U) G
公里数的十万位数字 0
* m% `% l0 \" `) E* n& y7 t公里数的万位数字 0 + D3 T1 ^! W5 k. Z: y
公里数的千位数字 7
$ f! A; {! U$ c4 m公里数的百位数字 5
9 x: K: x N' m; C& i. b公里数的十位数字 99 D" m2 x( T5 |( {
公里数的个位数字 2
; r$ {4 `9 K+ T' s d3 T: L+ k( a2 h% ~, o) z, f
7 0 0 7 5 9 2# j! d: X% q# \( v$ T4 M# {
)
) b/ [. x7 g9 o6 |看看这个数据的计算过程:
; L, i. W ?( n& B" U首先可以确定加密字节的低位数字 = 7 n0 B3 t- j; {
7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1% b6 A. m; i5 {; K
因此加密字节的高位数字为 1! G' Q% N$ L. Z7 M0 \$ d: {( @
|