Copyright © 2010 Promsite. All Rights Reserved.
Кликните на рисунке для увеличения.
Что можно полезного здесь увидеть? Первое: программа определила и показала внизу тип микросхемы 93C46. Второе: сравнила дампы и показала области где находится пробег (выделенно красным). Видно, что пробег записан в EEPROM в 3-х местах и представлен в виде 3-х байтного шестнадцатеричного числа. Вот почему я добавил к названию алгоритма Denso индекс 3. Размер дампа 128 байт, что действительно соответствует объему микосхемы серии 93С46. В левом дампе число A9 EE E7 соответствующее пробегу 81156 км., в правом 6A F9 E8 - 170695 км.
Но для понимания алгоритма кодирования приведенной информации мало. Тут два варианта: первый - брать щиток и "ездить на столе", второй - т.к. нас в данном случае интересует не результат, а сам алгоритм кодирования, то брать любой калькулятор пробега и вычислять код (с калькуляторами надо быть внимательными, их пишут люди и никто не застрахован от ошибок, в т.ч. и знаменитая тахософт). В любом случае получим определенный результат, который и показан ниже в таблице 1:
Но прежде чем начать анализ, надо разобраться с функцией XOR, поскольку эта функция применяется повсеместно. Это булева функция, по научному называется исключающее ИЛИ. Функция XOR выполняет действие над двумя операндами (м.б. и более чем два) согласно следующему правилу:
Т.е. по-простому: если операнды не равны, то результатом будет 1, иначе 0. Практически это все происходит так: любое число в какой бы системе счисления не было представлено преобразововыятся к двоичному виду, затем сравнивается побитно и результат преобразуется обратно в нужном представлении. На первом этапе лучше преобразования выполнять с помощью виндовозного калькулятора (инженерный вид), там есть кнопка XOR.
Сначала вводим 1-е число, нажимаем кнопку XOR, вводим второе число и на кнопку =.
На самом деле всю эту мутотень никто и не запоминает. Ниже я покажу как без всяких калькуляторов и таблиц пользоваться функцией XOR.
Т.е. по-простому: если операнды не равны, то результатом будет 1, иначе 0. Практически это все происходит так: любое число в какой бы системе счисления не было представлено преобразуется к двоичному виду, затем сравнивается побитно и результат преобразуется обратно в нужном представлении. На первом этапе лучше преобразования выполнять с помощью виндовозного калькулятора (инженерный вид), там есть кнопка XOR.
Сначала вводим 1-е число, нажимаем кнопку XOR, вводим второе число и на кнопку =.
На самом деле всю эту мутотень никто и не запоминает. Ниже я покажу как без всяких калькуляторов и таблиц пользоваться функцией XOR.