Що таке CRC
Там я нічого не зрозумів. Чи можете мені пояснити НА ПАЛЬЦЯХ де конкретно не обійтися без цього CRC?
Це для перевірки коректності/ідентичності/справжності даних. Наприклад, ти передав купу байт по ненадійному каналу (який може додавати помилки), передав CRC. Одержувач обчислює CRC за отриманими даними, якщо збігається, значить, помилки не було (точніше вона вкрай малоймовірна).
> Можете мені пояснити НА ПАЛЬЦЯХ, де конкретно не обійтися > без цього CRC?Таких місць немає, скрізь можна обійтися
> Можете мені пояснити НА ПАЛЬЦЯХ, де конкретно не обійтися > без цього CRC?ось, наприклад, йду я в ліс за грибами (ягоди для прикладу теж підійдуть) (і полювання на качок) (і на кабана, але це складніше) і мені абсолютно начхати на CRC
Я сказав де "не обійтися ніяк", а не де можна обійтися.
> Я сказав де "не обійтися ніяк", а не де можна обійтися.а, ну тоді уяви, що ти кабан, йдеш собі по лісі, жолуді їси а тут мисливець: бабах ти кричиш уиииииииии в гущавину лісу деру даєш уматал, значить, а далі починаєш перевірку: ніс на місці, лапи на місці, е-моє, хвоста-то немає! як же тепер без хвоста-то ? контрольна сума не зійшлася
ось якщо тобі начхати на хвіст, можеш обійтись і без перевірки
CRC – це різновид хешу. Тепер можеш сам відповісти на своє запитання?
Ось передаєш ти дані каналом. Тобі треба перевірити коректність даних, що прийшли. Як зробити? Можна дані продублювати і порівняти результат якщо збігся все добре. Але це знижує пропускну здатність каналу вдвічі. Та й виникають паузи.
Або зберігається у тебе файл на диску. Або сортування рядків.
Також і інші місця там, де використовуютьсяхеші.
> пояснити НА ПАЛЬЦЯХhttp://www.piter.com/book.phtml?978531800492 гл. 3 параграф "Коди з виявленням помилок"
> Так краще коди, що відновлюють, а не CRCCRC теж відновлюючий код. А по-друге, його найпростіше реалізувати апаратно - тому може працювати на великих швидкостях.
Деякі алгоритми дозволяють виловити ділянки, у яких сталася помилка.
←→ім'я ( 2011-04-24 16:01 ) [12]
> А по-друге його найпростіше реалізувати апаратно
Здебільшого бачив у апаратурі примітивно табличний алгоритм розрахунку CRC - той самий modbus наприклад. Про відновлення CRC не чув. Зазвичай просто відбій/повторна передача.
> Здебільшого в апаратурі бачив примітивно табличний > алгоритм розрахунку CRCCRC8 найчастіше саме розраховують.
CRC жодного разу не відновлює метод. Якщо ми маємо на увазі CRC на основі багаточленів, що не наводяться.
CRC це сімейство хеш-функцій, для яких доведено, що бітова відстань між колізіями максимально для обраної довжини хеш. У цьому сенс і призначення — максимально достовірне виявлення битих пакетів даних.