সিআরসি-র চেয়ে আরও দ্রুত বিকল্প থাকতে পারে, আপনি যদি সেগুলি ব্যবহার করেন তবে আপনি সম্ভবত কিছুটা ত্রুটি সনাক্তকরণের ক্ষমতা ত্যাগ করতেই পারেন। আপনার ত্রুটি সনাক্তকরণের প্রয়োজনীয়তাগুলি নির্ভর করে তার পরিবর্তে আপনার অ্যাপ্লিকেশনটিতে সিআরসি কোডটি অপ্টিমাইজ করা বিকল্প হতে পারে।
অন্যান্য অপশন সঙ্গে সিআরসি একটি তুলনামূলক জন্য, দেখুন চমৎকার দ্বারা উত্তর
মার্টিন থম্পসন ।
এর সাথে সাহায্য করার জন্য একটি বিকল্প হ'ল পাইক্রিসি যা একটি সরঞ্জাম (পাইথন 1 এ লিখিত ) যা সিআরসি মডেল এবং অ্যালগরিদমের কয়েক ডজন সংমিশ্রনের জন্য সি উত্স কোড উত্পন্ন করতে পারে । এটি আপনাকে বিভিন্ন সংমিশ্রণ নির্বাচন করে এবং বেঞ্চমার্ক করে আপনার নিজের অ্যাপ্লিকেশনের জন্য গতি এবং আকারকে অনুকূল করতে দেয় ize 1: পাইথন 2.6 বা তার পরে প্রয়োজন।
এটি সমর্থন crc-8
মডেল , কিন্তু সমর্থন crc-5
, crc-16
এবং crc-32
অন্যদের মধ্যে। আলগোরিদিম হিসাবে , এটি সমর্থন করে bit-by-bit
, bit-by-bit-fast
এবং table-driven
।
উদাহরণস্বরূপ (সংরক্ষণাগার ডাউনলোড করা):
$ wget --quiet http://sourceforge.net/projects/pycrc/files/pycrc/pycrc-0.8/pycrc-0.8.tar.gz/download
$ tar -xf pycrc-0.8.tar.gz
$ cd pycrc-0.8
$ ./pycrc.py --model=crc-8 --algorithm=bit-by-bit --generate c -o crc8-byb.c
$ ./pycrc.py --model=crc-8 --algorithm=bit-by-bit-fast --generate c -o crc8-bybf.c
$ ./pycrc.py --model=crc-8 --algorithm=table-driven --generate c -o crc8-table.c
$ ./pycrc.py --model=crc-16 --algorithm=table-driven --generate c -o crc16-table.c
$ wc *.c
72 256 1790 crc8-byb.c
54 190 1392 crc8-bybf.c
66 433 2966 crc8-table.c
101 515 4094 crc16-table.c
293 1394 10242 total
এমনকি 256 বাইট লুক-আপ টেবিলের সাহায্যে একক বাইট লুক-আপের পরিবর্তে দ্বৈত নিবল প্রহরীগুলি (16 বাইট লুক-আপ টেবিল সহ) ব্যবহার করে নির্দিষ্ট করার মতো মজাদার জিনিস আপনি করতে পারেন।
উদাহরণস্বরূপ (গিট সংগ্রহস্থল ক্লোনিং):
$ git clone http://github.com/tpircher/pycrc.git
$ cd pycrc
$ git branch
* master
$ git describe
v0.8-3-g7a041cd
$ ./pycrc.py --model=crc-8 --algorithm=table-driven --table-idx-width=4 --generate c -o crc8-table4.c
$ wc crc8-table4.c
53 211 1562 crc8-table4.c
আপনার স্মৃতি এবং গতির সীমাবদ্ধতা দেওয়া, এই বিকল্পটি গতি এবং কোড আকারের মধ্যে সেরা সমঝোতা হতে পারে। নিশ্চিত হওয়ার একমাত্র উপায় যদিও এটি মানদণ্ড করা bench
Pycrc Git সংগ্রহস্থলের হয় GitHub তার হয়, বিষয়টি যে ব্যক্তি অনুসরণ করে , কিন্তু এটি থেকে ডাউনলোড করা যাবে SourceForge ।