( `9 U# L; b p) _
y# r6 w$ K- j0 _7 x : q3 l1 M* r, C, M; P, r5 H0 O3 w+ B
9 t( I+ `% E3 b; A7 Q1 w爱丽舍轿车仪表算法
& y" L9 Z, T& K6 z4 K爱里舍液晶里程表数据 (7592KM)3 f6 t v, }. q, z0 |2 l; I
芯片型号: 93C46 % z3 p/ Y" E* _' H
00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u.
, ^. }- e* p/ E5 J, V6 O00000010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................5 v# _5 N$ x& x, N' M
00000020 17 00 75 92 F1 A2 FE 0C FE 0C 00 43 B5 20 00 43 ..u........C. .C
% S& |3 v+ ]3 |$ X00000030 0B E2 00 00 EC 78 0E 0C 1A AA 00 00 79 96 00 00 .....x......y...
- G6 C1 j' m' n* G' M" Q4 V00000040 7F 7F 7F 7F 7F 7F 00 A0 74 89 29 7A 00 00 6B 00 ........t.)z..k.
+ ?* A7 Q: F: r6 L$ c( u3 P! h! _00000050 00 02 00 12 00 00 00 00 00 00 00 01 00 00 00 00 ................" C% n5 T7 f" s
00000060 00 00 00 00 00 00 00 14 88 00 75 10 FB 10 13 01 ..........u..... v0 ]2 B6 J" d: ?( q8 D% [
00000070 10 88 18 DB B4 12 CB 00 09 15 00 FF 00 00 00 00 ................0 R- ~4 M9 g+ c
# S% P3 m) {. p6 G00000000 17 00 75 92 17 00 75 92 17 00 75 92 17 00 75 92 ..u.'.u...u...u. q* j4 [7 m8 o* f( L" h, X& |
重复四次,17为效验位。7为里程数的第一位。1为加密位。
; A8 H* S! A ?- O4 H8 P! P$ V首先可以确定加密字节的低位数字(也就是公里数的最高位有效数字)在这里为 74 L; o% m" ^- l+ y3 f1 m
然后用计算 7 个数字之和,所得结果 转换为 16 进制,接着取反,
/ ]* t; v- m( [! R, u取反的结果的低位数字就是加密字节的高位数字9 n- ~$ q9 c+ G8 v0 y4 x: U
可能的数值为 0,1,2,3,4, ... E,F 合计16种可能。* @' j9 `6 X9 ~
(7 个数字 指的是 :; i# x6 |: o; M& M8 i
加密字节的低位数字 7
; d" i# A( e. v, W! p0 Y公里数的十万位数字 0
9 {: M9 p9 a) |- _公里数的万位数字 0
0 h! p6 ^$ t9 Y X公里数的千位数字 7
/ M6 r: \7 C) o2 D5 d+ H \: N公里数的百位数字 5
! I9 w- D0 L6 Z- F) z3 _' W& B公里数的十位数字 9& Q( h& O: c* z! Y' ~
公里数的个位数字 2, x, O. P" G) L9 x2 Y) ^7 t
: h$ ^6 O/ u% {9 r6 s% @& S
7 0 0 7 5 9 2
+ O6 C3 Z# W2 ~. K, }6 V$ \)$ |0 c2 x1 o, g' C/ q, R# Z8 L
看看这个数据的计算过程:
, t/ R% r8 M3 X2 b首先可以确定加密字节的低位数字 = 7
8 d4 b7 R# |: m+ f( U+ t" P( N7 + 0 + 0 + 7 + 5 + 9 + 2 = 30 结果 转换为 16进制 = 1E 接着取反 =E1
: Z9 A/ N( x, i- P* N7 ~因此加密字节的高位数字为 1
% A" h2 D" X' n* D |