![]() |
![]() |
![]() |
|
Расчет контрольной суммы строки средствами 1С | ☑ | ||
---|---|---|---|---|
0
Ламо
01.12.05
✎
04:43
|
skunk вот здесь CRC http://gr13.net.ru/old/1c/crc32.htm
Снипер, перец, он ее только на одной строчке попробовал? Попробуй по тексту прогнать, она много строк просто к нулю сводит |
|||
1
NSK54
01.12.05
✎
05:47
|
он спит есчё
|
|||
2
Ламо
01.12.05
✎
06:24
|
Как проснется, пообщаемся. интересный тип.
|
|||
3
smaharbA
01.12.05
✎
07:01
|
Это-же варавство в прямом смысле слова на т1с или одинэсии я такое(почти) публиковал полгода или больше, там тока срс вычисляло всего файла, но сначало был вариант построчный, найду ведь у себя....(тока я как всегда в скриптах все это делал)
Там небыло этого "сжатия строки" а просто расчет срс... |
|||
4
smaharbA
01.12.05
✎
07:02
|
+(3) Помоему NS приводил тогда вариант в коде 1С...
|
|||
5
Ламо
01.12.05
✎
07:06
|
ну тут, я как понимаю именно из принципа-средствами 1С.
|
|||
6
smaharbA
01.12.05
✎
07:14
|
Аааа поглядел внимательней, приношу извинения, тогда вопрос стоял о CRC16 а в статье CRC32 (хотя это безразницы), да и по датам выходит что это я своровал ;)
|
|||
7
Волшебник
модератор
01.12.05
✎
07:39
|
Та самая ветка
Как уменьшить строку в 50 символов до 20 символов? см. также: Бинарные операции в 1С 7.7 |
|||
8
skunk
01.12.05
✎
08:00
|
(1)увы не спал... а дома просто был...
(0)пробовал все работает... Снип это делал когда делал трансфер данных между филиалами... а поверь там файлики ой как размера летали... (3)там и есть простой CRC... просто "сжатие" для вот этого Как уменьшить строку в 50 символов до 20 символов? (5)именно так... если можно это сделать средствами 1С... я стараюсь делать средствами 1С |
|||
9
Ламо
01.12.05
✎
08:49
|
(7) поинтересней будет. а (0) действительно корявеньк. я щас найду две разные строки с одинаковой CRC по том методу. и с нулями.
|
|||
10
skunk
01.12.05
✎
08:56
|
(9)найди...
|
|||
11
skunk
01.12.05
✎
09:41
|
(9)какнул и свалил... хм ... интересный тип...
|
|||
12
NS
01.12.05
✎
09:46
|
(7) Если про функцию - это не та ветка.
(3,4) Да, приводил. Для контроля контрольной суммы, и автоматического восстановления информации в случае ошибок. (если может - восстанавливает, иначе сообщает, что восстановление невозможно) Только где и когда не помню. |
|||
13
skunk
01.12.05
✎
09:47
|
(12)имелось ввиду та ветка из-за которой возникла эта... а точнее статья Снипера
|
|||
14
NS
01.12.05
✎
09:53
|
(13) А для (0) Существует Зорбит кей.
В 1С нет Ьитовых операций, но можно просто сложением по модулю. Смысл заводится Двумерный массив (фиксированный, делается генератором случайных чисел, но так, чтоб его можно было повторить) Первое измерение - позиция символа, второе - сам символ... .... Для 64 бит (типа 20-значное число, либо строка из 8 симоволов) - подобрать две строки (любой длины) с одинаковым кодом - не удастся... ;-)) |
|||
15
NS
01.12.05
✎
09:54
|
||||
16
NS
01.12.05
✎
09:55
|
||||
17
NS
01.12.05
✎
09:56
|
||||
18
skunk
01.12.05
✎
09:59
|
(14,15)спасибо за инфу... надо будет потом на досуге по играть...
(0) в ноль тоже трудно подобрать две строки с одни CRC... но можно... вот только думаю, что сам Ламо... просто в лужу пукнул... ихмо как Лева Баранов... либо это пиар сайта... |
|||
19
Ламо
01.12.05
✎
10:01
|
(11) да не свалил, на обед ходил. еще бухгалтеры со своими отчетами. 1-ое число таки. а я ту обработку куда-то свалил, искать надо. я вернусь попозже, подниму еще.
|
|||
20
skunk
01.12.05
✎
10:01
|
(18)а ноль он не поймает... хотя думаю что если долго дрочить... то можно найти... ведь значений всего "4 294 967 295" ...
так что если долго ипаться... можно что-нить накопать |
|||
21
Ламо
01.12.05
✎
10:02
|
(18) блин я не пукнул. на тексте в 100 строк мне тот алгоритм 10 повторов дал и штук 5 нулей
|
|||
22
skunk
01.12.05
✎
10:04
|
(21)буду ждать...
|
|||
23
skunk
01.12.05
✎
10:04
|
+22 ... твой текст...
|
|||
24
Ламо
01.12.05
✎
10:06
|
+(21) в том тексте строки длиной по 80-90 символов состоят из цифр с пробелами. строки разные точно. когда просто текст -правильно говоришь(20), на цифрах почему-то глюкнул. я туда добавил сдвиг влево и нормально заработало
Функция CRC32(Знач Arg1, Arg2) з1 =Из10вДвоичную(Arg1); Arg2 =Xor(таблХэш[Byte(AndB(Shr(Arg2,8),"00000000000000000000000011111111"))],Xor(Shl(Arg2,8),з1)); Возврат Arg2; КонецФункции |
|||
25
NS
01.12.05
✎
10:06
|
руки кривые...
последние две ссылки читать как http://www.google.ru/search?hl=ru&q=Zobrist+keys+source&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr= и http://www.google.ru/search?hl=ru&q=Zobrist+keys&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr= |
|||
26
Ламо
01.12.05
✎
10:07
|
(23) найду ближе к вечеру
|
|||
27
skunk
01.12.05
✎
10:11
|
(24)этот алгоритм не я придумал... и не Снипер... простоя его делал на сипе... для трансфера данных... то есть не исказились или нет... а Снип его просто реализовал на одинСи...
(26)на мыло вышлие... текст ... skunk_ собака mail точка ru |
|||
28
Ламо
01.12.05
✎
13:51
|
skunk, тебе ушло мыло с текстом
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |