Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

не считается контрольная сумма [D5, NT4]


Natalie ©   (2002-08-14 20:32:00) 

Я считаю контрольную сумму файла и периодически у меня выходит сообщение об ошибки Range check error . кто-нибудь знает в чем проблема и как ее решить?


Jeer   (2002-08-15 09:31:00) [1]

>Геннадий (14.08.02 23:21)
>Слово и два слова...

Это для старых 16-р процессоров.
Сейчас слово - 32р на 32р процах и 64р на 64-х.



Геннадий   (2002-08-14 23:21:00) [2]

Слово и два слова...


Jeer   (2002-08-14 22:53:00) [3]

Приведи код тогда и советы будут точнее.

>но контрольная сумма - это байт, по-моему

Основные алгоритмы контрольных сумм - CRC16 и CRC32:
полуслово и слово соответственно (2 и 4 байта)


Геннадий   (2002-08-14 22:43:00) [4]

Я не знаю как именно ты считаешь сумму, но контрольная сумма - это байт, по-моему. Последний в сумме, что ли? Для подсчёта используй, например, LongWord, а сохраняй последний байт. По-моему, это так делается...


Anatoly Podgoretsky   (2002-08-14 20:40:00) [5]

Дело в том, что у тебя происходит переполнения счетчика, его можно отключить или глобально, через свойства проекта или только для определенного куска с помощью директивы {$RANGECHECKS OFF} и ыключить обратно {$RANGECHECKS ON}
Кстати для расчета используй Int64


Наверх

Титульная страница Поиск, карта сайта Написать письмо