Страница 3 из 4 ПерваяПервая 1 2 3 4 ПоследняяПоследняя
Показано с 25 по 36 из 37

Тема: ESN CRC

  1. #25
    Junior Member
    Регистрация
    15.09.2004
    Сообщений
    45
    Спасибо
    0
    Благодарностей: 3 : 3
    to nz_vio
    Кстати, все еще не снят вопрос о формате MIN в памяти телефона...
    почитайте
    UNIT IDENTIFICATION

    Each mobile unit is identified by the following sets of numbers.

    The first number is the Moblie Identification Number (MIN). This
    34 bit binary number is derived from the units telephone number,
    MIN1 is the last seven digits of the telephone number and MIN2 is
    the area code.

    For demonstrative purposes, we'll encode 617-637-8687.

    Here's how to derive the MIN2 from a standard area code. In this
    example, 617 is the area code. All you have to do is first convert
    to modulo 10 using the following function. A zero digit would be
    considered to have a value of 10.

    100(first number) + 10(second) +1(third) - 111 = x

    100(6) + 10(1) + 1(7) - 111 = 506

    (or you could just - 111 from the area code.)

    Then convert it to a 10-bit binary number: 0111111010

    To derive MIN1 from the phone number is equally as simple. First
    encode the next three digits, 637.

    100(6) + 10(3) + 1(7) - 111 = 526

    Converted to binary: 1000001110

    The remainder of the number 8687, is processed further by taking
    the first digit, eight(8) and converting it directly to binary.

    8 = 1000 (binary)

    The last three digits are processed as the other two sets of
    three numbers were processed.

    100(6) + 10(8) + 1(7) - 111 = 576

    Converted to binary: 1001000000

    So the completed MIN number would look like this:

    |--637---||8-||---687--||---617--|
    1000001110100010010000000111111010
    \________/\__/\________/\______

  2. Спасибо сказали:

    obaidi2005 (18.05.2020)

  3. #26
    Junior Member
    Регистрация
    15.09.2004
    Сообщений
    45
    Спасибо
    0
    Благодарностей: 3 : 3
    есть и прога которая nam(min1 min2) преобразует

  4. Спасибо сказали:

    obaidi2005 (18.05.2020)

  5. #27
    Member
    Регистрация
    27.05.2004
    Сообщений
    165
    Спасибо
    0
    Благодарностей: 2 : 2
    Прога не интересна - интересно самому писАть. А за информацию - спасибо.

  6. Спасибо сказали:

    obaidi2005 (18.05.2020)

  7. #28
    Newbie
    Регистрация
    01.12.2004
    Сообщений
    20
    Спасибо
    0
    Благодарностей: 3 : 3
    вот есть часть исходника отвечающего за crc, хто неть может перевести его с си на паскаль??? если что еще потребуется из исходника кричите, я выложу

    crcTable[] = {
    { 0x00, 0x4A, 0x6A },
    { 0x01, 0x45, 0xA7 },
    { 0x02, 0x45, 0xF8 },
    { 0x03, 0x4A, 0x35 },
    { 0x04, 0x45, 0x46 },
    { 0x05, 0x4A, 0x8B },
    { 0x06, 0x4A, 0xD4 },
    { 0x07, 0x45, 0x19 },
    { 0x08, 0x54, 0x32 },
    { 0x09, 0x5B, 0xFF },
    { 0x0A, 0x5B, 0xA0 },
    { 0x0B, 0x54, 0x6D },
    { 0x0C, 0x5B, 0x1E },
    { 0x0D, 0x54, 0xD3 },
    { 0x0E, 0x54, 0x8C },
    { 0x0F, 0x5B, 0x41 },
    { 0x10, 0x76, 0xDA },
    { 0x11, 0x79, 0x17 },
    { 0x12, 0x79, 0x48 },
    { 0x13, 0x76, 0x85 },
    { 0x14, 0x79, 0xF6 },
    { 0x15, 0x76, 0x3B },
    { 0x16, 0x76, 0x64 },
    { 0x17, 0x79, 0xA9 },
    { 0x18, 0x68, 0x82 },
    { 0x19, 0x67, 0x4F },
    { 0x1A, 0x67, 0x10 },
    { 0x1B, 0x68, 0xDD },
    { 0x1C, 0x67, 0xAE },
    { 0x1D, 0x68, 0x63 },
    { 0x1E, 0x68, 0x3C },
    { 0x1F, 0x67, 0xF1 },
    { 0x20, 0x23, 0x02 },
    { 0x21, 0x2C, 0xCF },
    { 0x22, 0x2C, 0x90 },
    { 0x23, 0x23, 0x5D },
    { 0x24, 0x2C, 0x2E },
    { 0x25, 0x23, 0xE3 },
    { 0x26, 0x23, 0xBC },
    { 0x27, 0x2C, 0x71 },
    { 0x28, 0x3D, 0x5A },
    { 0x29, 0x32, 0x97 },
    { 0x2A, 0x32, 0xC8 },
    { 0x2B, 0x3D, 0x05 },
    { 0x2C, 0x32, 0x76 },
    { 0x2D, 0x3D, 0xBB },
    { 0x2E, 0x3D, 0xE4 },
    { 0x2F, 0x32, 0x29 },
    { 0x30, 0x1F, 0xB2 },
    { 0x31, 0x10, 0x7F },
    { 0x32, 0x10, 0x20 },
    { 0x33, 0x1F, 0xED },
    { 0x34, 0x10, 0x9E },
    { 0x35, 0x1F, 0x53 },
    { 0x36, 0x1F, 0x0C },
    { 0x37, 0x10, 0xC1 },
    { 0x38, 0x01, 0xEA },
    { 0x39, 0x0E, 0x27 },
    { 0x3A, 0x0E, 0x78 },
    { 0x3B, 0x01, 0xB5 },
    { 0x3C, 0x0E, 0xC6 },
    { 0x3D, 0x01, 0x0B },
    { 0x3E, 0x01, 0x54 },
    { 0x3F, 0x0E, 0x99 },
    { 0x40, 0x98, 0xBA },
    { 0x41, 0x97, 0x77 },
    { 0x42, 0x97, 0x28 },
    { 0x43, 0x98, 0xE5 },
    { 0x44, 0x97, 0x96 },
    { 0x45, 0x98, 0x5B },
    { 0x46, 0x98, 0x04 },
    { 0x47, 0x97, 0xC9 },
    { 0x48, 0x86, 0xE2 },
    { 0x49, 0x89, 0x2F },
    { 0x4A, 0x89, 0x70 },
    { 0x4B, 0x86, 0xBD },
    { 0x4C, 0x89, 0xCE },
    { 0x4D, 0x86, 0x03 },
    { 0x4E, 0x86, 0x5C },
    { 0x4F, 0x89, 0x91 },
    { 0x50, 0xA4, 0x0A },
    { 0x51, 0xAB, 0xC7 },
    { 0x52, 0xAB, 0x98 },
    { 0x53, 0xA4, 0x55 },
    { 0x54, 0xAB, 0x26 },
    { 0x55, 0xA4, 0xEB },
    { 0x56, 0xA4, 0xB4 },
    { 0x57, 0xAB, 0x79 },
    { 0x58, 0xBA, 0x52 },
    { 0x59, 0xB5, 0x9F },
    { 0x5A, 0xB5, 0xC0 },
    { 0x5B, 0xBA, 0x0D },
    { 0x5C, 0xB5, 0x7D },
    { 0x5D, 0xBA, 0xB3 },
    { 0x5E, 0xBA, 0xEC },
    { 0x5F, 0xB5, 0x21 },
    { 0x60, 0xF1, 0xD2 },
    { 0x61, 0xFE, 0x1F },
    { 0x62, 0xFE, 0x40 }
    };
    int max_crc_entries = sizeof(crcTable) / sizeof(struct _crcEntry);

    void calc_n_set_crc(unsigned char *packet, unsigned int offset)
    {
    union _packet *pkt = (union _packet *)packet;
    unsigned int slot;
    unsigned char *crcword_ptr;

    if(pkt->pbk.cmd_byte == CMD_GET_ATTRIBUTE &&
    pkt->pbk.attr_id_lsb == ATTR_ID_PHONE_ENTRY) {
    slot = pkt->pbk.slot_nbr;
    if(slot < max_crc_entries) {
    crcword_ptr = &crcTable[slot].checkword_lsb;
    memcpy(&packet[offset],crcword_ptr,2);
    }
    }
    }

  8. Спасибо сказали:

    obaidi2005 (18.05.2020)

  9. #29
    Newbie
    Регистрация
    01.12.2004
    Сообщений
    20
    Спасибо
    0
    Благодарностей: 3 : 3
    Кстати алгоритм выложенный Джонам777, в целом просто супер, но есть одно но. Если номер будет к примеру 260-2626 или 255-2050 или 300-0000 то перевести в байтный вид мы его несможем, из-за исключительной ситуации когда в номере попадается цифра 0. Проблема решаема, но требует дополнительного внимания.
    PHP код:
    phpinfo(); 
    Последний раз редактировалось ph2005; 28.12.2004 в 02:43.

  10. Спасибо сказали:

    obaidi2005 (18.05.2020)

  11. #30
    Junior Member
    Регистрация
    15.09.2004
    Сообщений
    45
    Спасибо
    0
    Благодарностей: 3 : 3
    to ph2005
    Алгоритм не мой -это стандарт и читайте внимательней
    300-0000 т.е. 000-300-0-000 ---->
    999-299-10-999---->
    двоичным пропускаем--->
    3E7 4AEBE7 (3E7 -обычно стоит в памяти как старший)

  12. Спасибо сказали:

    obaidi2005 (18.05.2020)

  13. #31
    Newbie
    Регистрация
    01.12.2004
    Сообщений
    20
    Спасибо
    0
    Благодарностей: 3 : 3
    Где можно достать документацию по этим стандартам???

  14. Спасибо сказали:

    obaidi2005 (18.05.2020)

  15. #32
    Member
    Регистрация
    20.09.2004
    Сообщений
    391
    Спасибо
    4
    Благодарностей: 12 : 6
    пункт 2.3
    Вложения Вложения

  16. Спасибо сказали:

    obaidi2005 (18.05.2020)

  17. #33
    Newbie
    Регистрация
    22.01.2005
    Сообщений
    21
    Спасибо
    0
    Благодарностей: 1 : 1

    контрольная сумма для есн ( четыре пары) еще нужна?

    контрольная сумма для есн ( четыре пары) еще нужна?

  18. Спасибо сказали:

    obaidi2005 (18.05.2020)

  19. #34
    Junior Member
    Регистрация
    03.09.2004
    Сообщений
    92
    Спасибо
    1
    Благодарностей: 1 : 1
    было бы интересно посмотреть, что за алгоритм.

  20. Спасибо сказали:

    obaidi2005 (18.05.2020)

  21. #35
    Member
    Регистрация
    27.05.2004
    Сообщений
    165
    Спасибо
    0
    Благодарностей: 2 : 2
    Да, нужна. Я долго боролся, но, похоже, не понимаю чего-то простого.

  22. Спасибо сказали:

    obaidi2005 (18.05.2020)

  23. #36
    Member
    Регистрация
    20.09.2004
    Сообщений
    391
    Спасибо
    4
    Благодарностей: 12 : 6
    контрольная сумма для есн ( четыре пары) еще нужна?
    Расскажи, интересно.

  24. Спасибо сказали:

    obaidi2005 (18.05.2020)

Похожие темы

  1. iphone 5 clean esn (bad esn)
    от PROSKY в разделе iPhone
    Ответов: 4
    Последний ответ: 12.10.2012, 11:36
  2. Генератор CRC для ESN (исходник)
    от artyomkaes в разделе CDMA800 для новичков
    Ответов: 29
    Последний ответ: 08.07.2010, 22:56
  3. ошибка CRC
    от Guzya в разделе SGold 8870/8875
    Ответов: 15
    Последний ответ: 06.06.2006, 11:41
  4. Корректировка CRC S35
    от Naksojin в разделе BENQ-Siemens Software и Firmware
    Ответов: 14
    Последний ответ: 13.12.2004, 11:57
  5. ESN & CRC
    от imtmc450 в разделе CDMA800 & TDMA
    Ответов: 4
    Последний ответ: 16.10.2004, 18:27

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  
  Рейтинг@Mail.ru