فحص التكرار الطولي (LRC)
تعطي البايتات التسعة للنص 123456789 بايت التحقق 31 بالنظام الست عشري، أي 49 بالعشري: يُدمج كل بايت بعملية أو الحصرية (XOR)، وهي أبسط تكافؤ للكتل يُدرَّس في أطر الاتصال التسلسلي وModbus ASCII. مجاني في متصفحك.
- مجاني
- يعمل في متصفحك
- دون تسجيل
- بياناتك لا تغادر جهازك
شغّل الأداة مجانًا
مثال محلول
- النص
- 123456789
- النتيجة
- 31
- Lrc
- 31
- Hex
- 31
- عشري
- 49
فحص التكرار الطولي، وغالبًا ما يُختصر LRC، هو مقطورة تكامل من بايت واحد تُشكَّل بإجراء OR الحصري لكل بايت في الرسالة. دروس تأطير التسلسل التسلسلي ومقدمات البروتوكولات الصناعية ومختبرات الصف حول Modbus ASCII تقدّم LRC كأبسط تماثل كتلي يمكن حسابه يدويًا: ابدأ من الصفر، طبّق XOR للبايت التالي في المُجمّع، وبعد البايت الأخير تحصل على قيمة فحص تتغير إذا انقلب أي بت في أي بايت عددًا فرديًا من المرات على ذلك المستوى البتّي. يحتاج المهندسون والطلاب وفرق الدعم إلى نفس بايت hex الحتمي للحمولات القصيرة دون تثبيت مكدس بروتوكولات أو الجدال حول كثيرات حدود CRC. تقبل أداة فحص التكرار الطولي هذه نصًا غير فارغ، وترمّزه UTF-8، وتشغّل حلقة XOR النقية، وتُرجع بايت الفحص كرقمين ست عشريين بأحرف صغيرة مع القيمة العشرية وملخص قصير.
ما الذي يحسبه LRC ولماذا يهم بايت فحص XOR
يعامل فحص التكرار الطولي الرسالة كتسلسل من أعمدة ثمانية البتات ويحسب تماثلًا زوجيًا على كل عمود بإجراء OR الحصري للبايتات المتتالية في سجل من ثمانية بتات. بعد البايت الأخير يكون ذلك السجل هو LRC: بايت فحص واحد يُكتب عادة كرقمين ست عشريين. بخلاف فحص التكرار الدوري، لا يوجد كثير حدود مولّد ولا جدول إزاحة ولا خيارات انعكاس يُخطَأ في ضبطها—فقط XOR متسلسل.
تفسّر هذه البساطة ظهور LRC في دروس تأطير الكتل التسلسلية وفي كثير من أوصاف حقول فحص Modbus ASCII: يمكنكم التحقق من حساب يدوي على السبورة في ثوانٍ. تستخدم هذه الصفحة دائمًا تعريف XOR النقي على بايتات UTF-8 للنص المُرسل، فتسهم الأحرف متعددة البايتات بكل بايت وحدة رمز تمامًا كما يفعل جهاز مضمّن لو استقبل نفس تدفق UTF-8. إرجاع hex بأحرف صغيرة يسهّل لصق النتائج في أوراق البيانات ومقالب البروتوكول وتثبيتات التكامل المستمر دون جدال حول حالة الأحرف أو بادئات 0x.
تُعيد الاستجابة أيضًا العدد العشري وتسمية الخوارزمية LRC-XOR وعدد بايتات UTF-8 والنص الأصلي حتى يعرض العملاء سطر تدقيق كامل دون إعادة اشتقاق البيانات الوصفية. ولأن LRC ليس مقاومًا للتصادم وليس مفتاحًا، عاملوه كفحص تأطير أو فساد عرضي لا كإثبات أصالة؛ فضّلوا ملخصات عائلات CRC أو SHA عندما تتجاوز نية البحث مقطورة XOR ببايت واحد.
تُرمَّز السلسلة UTF-8 قبل حلقة XOR. تثبيت كلاسيكي: text يساوي أرقام ASCII من واحد إلى تسعة يعطي LRC hex واحدًا وثلاثين مع تسعة بايتات إدخال، لأن OR الحصري لتلك الرموز التسعة يترك ذلك الباقي. تثبيت آخر: Hello يعطي اثنين وأربعين في hex.
ثبّتوا مسار نجاح وخطأ إدخال فارغ في التكامل المستمر حتى لا تُشحن تغييرات خوارزمية عرضية دون ملاحظة. تُحذف الحقول الاختيارية الفارغة بدل إخراجها كـ null، وفق عقد المحرك التصريحي لنماذج ويب نظيفة.
أين تُجدي حاسبة LRC وكيف يعمل التسعير
يستخدم مؤلفو البرامج الثابتة وطلاب البروتوكولات الصناعية حاسبة فحص التكرار الطولي للتحقق من مقطورات XOR المحسوبة يدويًا دون كتابة حلقة بكل لغة. تحتاج منصات التعليم وإضافات LMS إلى مُرشد حتمي يرفض الإدخال الفارغ بدل إرجاع صفر للرسالة الفارغة، حتى تميّز أنظمة التصحيح التلقائي الإجابات الغائبة عن فحص صفري حقيقي. تستفيد مواقع المحتوى التي تتنافس على فحص التكرار الطولي أو حاسبة LRC من أداة حية يطابق مسارها المجاني مسار الأتمتة المدفوع بايتًا ببايت على نفس الوحدة النقية.
لا تستهلك إخفاقات التحقق الرصيد بعد الرفض. اربطوا صفحات CRC-8 أو CRC-16 أو التجزئة التشفيرية فقط عندما تتجاوز نية البحث فحص تأطير XOR بثمانية بتات—وأبقوا هذه الصفحة مركّزة على LRC كـ XOR لجميع البايتات حتى تبقى نية SEO حادة.
حالات الاستخدام
عروض LRC في الصف
يعرض المعلمون فحص سلسلة الأرقام الكلاسيكي ويتركون للطلاب إعادة حساب سلاسل قصيرة أخرى دون تثبيت مكتبة بروتوكول.
تثبيتات CI لرمز التأطير
تُثبّت الأنابيب مخرجات LRC hex حتمية وخطأ الإدخال الفارغ حتى تفشل تغييرات الخوارزمية العرضية بسرعة.
الأسئلة الشائعة
ما الخوارزمية التي تستخدمها أداة LRC هذه؟
XOR متسلسل نقي لجميع بايتات UTF-8 (LRC-XOR). ابدأوا من الصفر، طبّقوا OR الحصري لكل بايت، واحتفظوا بالبتات الثمانية الدنيا. النتيجة بايت فحص واحد بـ hex صغير.
ماذا يحدث إذا كان النص فارغًا؟
سلسلة غير فارغة مطلوبة؛ لا يُعامل الإدخال الفارغ كفحص صفري ناجح.
هل LRC هو نفسه CRC-8؟
لا. هنا LRC هو XOR بسيط لجميع البايتات. CRC-8 يقسم على كثير حدود بخطوات إزاحة وXOR. استخدموا صفحة CRC-8 لـ poly 0x07؛ وهذه الصفحة لـ LRC XOR.
كيف أحسب LRC يدويًا؟
ابدأ من الصفر وادمج كل بايت من الرسالة مع القيمة الجارية بعملية XOR، واحدًا بعد الآخر. بعد آخر بايت تكون تلك القيمة هي LRC، وتُكتب عادةً برقمين ست عشريين، وهي 31 للنص 123456789.
هل يثبت LRC أن الرسالة لم تُعدَّل؟
لا. فهو لا يقاوم التصادمات ولا يستخدم مفتاحًا، لذا يكشف التلف العرضي أو أخطاء الأطر لا الأصالة. وللتحقق الأقوى تُستخدم خوارزميات من عائلة CRC أو SHA.
أدوات ذات صلة
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/enc/lrc \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"123456789"}'const res = await fetch("https://api.kit.forhosting.com/enc/lrc", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "123456789"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/lrc",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "123456789"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/lrc", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"123456789"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"123456789"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/lrc", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"text": "123456789"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.lrc",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |
ملاحظات تقنية
يُرفض الإدخال الفارغ بـ invalid_input حتى لا يخلط المستدعي حقلًا مفقودًا مع فحص صفري حقيقي. يشترك مسار المتصفح المجاني وواجهة API المدفوعة مسبقًا في وحدة نقية واحدة، فتظل تثبيتات الفصل وأنابيب الإنتاج متفقة دائمًا على بايت hex لنفس السلسلة.
عقد الإدخال وأخطاء السلسلة الفارغة وشكل استجابة JSON
أرسلوا جسم JSON بطريقة POST بحقل سلسلة إلزامي واحد اسمه text: أي تسلسل غير فارغ من الأحرف تريدون حمايته بـ LRC. تُقبل الأسماء البديلة input وvalue وs وdata وmessage وpayload لنفس الحقل حتى تبقى مسودات SDK وإرسال النماذج مرنة. غياب text أو قيمة ليست سلسلة أو سلسلة فارغة تفشل بـ invalid_input ورسالة واضحة بأن سلسلة غير فارغة مطلوبة؛ ولا تُحاسب تلك الإخفاقات على API المدفوعة مسبقًا. عند النجاح يتضمن الجسم result وlrc وhex كلها بنفس بايت الفحص الست عشري ذي الرقمين بأحرف صغيرة؛ وdecimal بالعدد الصحيح من صفر إلى مئتين وخمسة وخمسين؛ وalgorithm ثابتًا على LRC-XOR؛ وinput_bytes مساويًا لطول UTF-8؛ وtext يعيد الإدخال؛ وmessage يلخّص عدد البايتات ونتيجة hex.
أين تُجدي حاسبة LRC وكيف يعمل التسعير
تقارن أدلة الدعم مقطورة بايت واحد مُبلَّغًا عنها في سجل جهاز أو التقاط تسلسلي مع LRC لسلسلة الحمولة التي يعيدون كتابتها في أداة المتصفح المجانية. استخدموا الأداة المجانية في المتصفح للفحوصات الفردية؛ واستدعوا API KIT المدفوعة مسبقًا من الخلفيات والدوال بدون خادم وSDK عندما تحتاجون عقدًا مستقرًا تحت الرصيد بسعر $0.002 لكل عنصر ناجح. أبقوا الحمولات بأحجام نص عادية مناسبة لاستدعاء عنصر في Worker isolate؛ هذه الأداة للسلاسل القصيرة ومقتطفات البروتوكول لا للثنائيات متعددة الميغابايت.
حالات التكامل
تأطير تسلسلي ومختبرات بروتوكول
تحققوا من أن سلسلة الحمولة تنتج مقطورة LRC المتوقعة ببايت واحد تحت XOR متسلسل قبل مقارنة سجلات الأجهزة أو متجهات اختبار الوحدة.
أسئلة تقنية
كيف أحسب فحص التكرار الطولي لنص؟
أرسلوا JSON بحقل سلسلة غير فارغ text. ترمّز API السلسلة UTF-8 وتطبّق XOR لكل بايت في سجل من ثمانية بتات وتُرجع بايت الفحص كرقمين hex بأحرف صغيرة في result وlrc وhex.
هل حاسبة فحص التكرار الطولي مجانية؟
تعمل أداة المتصفح مجانًا على جهازكم. تستخدم استدعاءات API رصيد KIT المدفوع مسبقًا بسعر $0.002 لكل عنصر ناجح؛ ولا تُحاسب إخفاقات التحقق.