رد فعل عكسي

علامة الخط المائل العكسي (\) هي علامة طباعية تُستخدم بشكل أساسي في الحوسبة والرياضيات . وهي صورة معكوسة للخط المائل العادي ( / ) . تُعتبر علامة حديثة نسبيًا، حيث وُثِّقت لأول مرة في ثلاثينيات القرن العشرين. وتُعرف أحيانًا بأسماء مختلفة مثل: hack ، whack ، escape ( من لغة C / UNIXreverse slash ، slosh ، backslant ، backwhack ، bash ، reverse slant ، reverse solidus ، و reversed virgule . [ 1 ] [ 2 ]

تاريخ

لوحة مفاتيح آلة كاتبة من طراز ويتستون بيرفوراتور من ثلاثينيات القرن العشرين، مع وجود شرطة مائلة عكسية في نهاية الصف الثالث
تخطيط لوحة مفاتيح جهاز Teletype ASR-33 مع مجموعة أحرف ASCII ، قبل 14 يونيو 1966، مع استخدام الشرطة المائلة العكسية على مفتاح Shift + L

ربما يكون أول مرجع موثق لهذا الرمز هو دليل صيانة صادر عام 1937 عن شركة تيليتايب ، والذي يتضمن صورة تُظهر لوحة مفاتيح آلة التثقيب كلاينشميدت WPE-3 باستخدام نظام ويتستون . [ 3 ] وفي وثيقة أخرى صدرت عام 1945، استخدمت تيليتايب اسم "المفتاح القطري" للرمز، [ 4 ] ومنحته رمز مورس (غير قياسي) ▄ . [ 5 ] [ أ ] لم تُحدد أي من الوثيقتين كيفية استخدامه.      

في يونيو 1960، نشرت شركة IBM "معيار مجموعة الأحرف الموسعة" الذي يتضمن الرمز عند العنوان 0x19. [ 6 ] في سبتمبر 1961، اقترح بوب بيمر من شركة IBM على لجنة معايير X3.2 إدراج الأحرف [، ]و ، و \في المعيار المقترح، واصفًا الخط المائل العكسي بأنه "عامل قسمة عكسية" ومستشهدًا باستخدامه السابق في التلكس في مجال الاتصالات. وأوضح تحديدًا أن استخدام الخط المائل العكسي ضروري لكي يتمكن عاملا ALGOL المنطقيان ( الربط المنطقي ) و ( الفصل المنطقي ) من التركيب باستخدام /\ و \/ على التوالي. وقد اعتمدت اللجنة هذه التغييرات في مسودة المعيار الأمريكي (الذي سُمي لاحقًا ASCII ) في اجتماعها المنعقد في نوفمبر 1961. [ 6 ]

تم استخدام هذه العوامل للحد الأدنى والحد الأقصى في الإصدارات المبكرة من لغة البرمجة C المرفقة مع Unix V6 [ 7 ] و V7. [ 8 ]

الاستخدام

لغات البرمجة

في العديد من لغات البرمجة مثل C و Perl و PHP و Python ولغات برمجة Unix النصية ، وفي العديد من تنسيقات الملفات مثل JSON ، تُستخدم الشرطة المائلة العكسية كحرف هروب ، للإشارة إلى أن الحرف الذي يليها يجب التعامل معه بشكل خاص (إذا كان سيُعامل حرفيًا في الأحوال العادية)، أو حرفيًا (إذا كان سيُعامل بشكل خاص في الأحوال العادية). على سبيل المثال، داخل سلسلة نصية حرفية في\n لغة C، يُنتج التسلسل بايت سطر جديد بدلًا من 'n'، ويُنتج التسلسل \"علامة اقتباس مزدوجة فعلية بدلًا من المعنى الخاص لعلامة الاقتباس المزدوجة التي تُنهي السلسلة. وتُنتج الشرطة المائلة العكسية الفعلية من خلال شرطتين مائلتين عكسيتين \\.

تستخدم لغات التعبيرات النمطية نفس الأسلوب، حيث تُحوّل الأحرف الحرفية اللاحقة إلى أحرف خاصة والعكس صحيح. على سبيل المثال ، يبحث الرمز \ | | b إما عن '|' أو 'b'، حيث يتم وضع علامة هروب قبل الخط الأول ويتم البحث عنه، بينما لا يتم وضع علامة هروب قبل الخط الثاني ويعمل كحرف "أو".

خارج نطاق النصوص المقتبسة، يُستخدم الخط المائل العكسي عادةً لتجاهل سطر جديد يليه مباشرةً. في هذا السياق، يُمكن تسميته "سطرًا مُستمرًا" [ 9 ] حيث يمتد السطر الحالي إلى السطر التالي. بعض البرامج تستبدل الخط المائل العكسي + السطر الجديد بمسافة. [ 10 ]

لدعم أجهزة الكمبيوتر التي تفتقر إلى حرف الشرطة المائلة العكسية، أُضيفت ثلاثية الحروف في لغة C ، وهي مكافئة لحرف الشرطة المائلة العكسية. وبما أنها قادرة على تجاوز الحرف التالي، الذي قد يكون بدوره حرف شرطة مائلة عكسية ، فإن استخدامها الأساسي في العصر الحديث قد يكون لإخفاء الشيفرة . أُزيل دعم ثلاثيات الحروف في لغة C++ في الإصدار C++17 ، وفي لغة C في الإصدار C23 . [ 11 ]??/?

في لغة فيجوال بيسك (وبعض لهجات بيسك الأخرى )، تُستخدم علامة الخط المائل العكسي كرمز عامل للإشارة إلى القسمة الصحيحة . [ 12 ] وهذا يُقرّب الناتج إلى الصفر.

في لغة APL، يُطلق على \ اسم Expand عند استخدامه لإدراج عناصر التعبئة في المصفوفات، و Scan عند استخدامه لإنتاج اختزال البادئة (الطي التراكمي).

في إصدار PHP 5.3 والإصدارات الأحدث، يتم استخدام الشرطة المائلة العكسية للإشارة إلى مساحة الاسم . [ 13 ]

في لغة هاسكل ، يتم استخدام الخط المائل العكسي لإدخال الأحرف الخاصة ولإدخال دوال لامدا (لأنه يمثل تقريبًا معقولًا في ASCII للحرف اليوناني لامدا، λ) . [ 14 ]

أسماء الملفات

استنسخ نظام التشغيل MS-DOS 2.0، الذي صدر عام 1983، فكرة نظام الملفات الهرمي من نظام يونكس ، ولذلك استخدم الشرطة المائلة (الأمامية) كفاصل بين المجلدات. [ 15 ] ربما بناءً على إصرار شركة IBM، [ 16 ] [ 17 ] أضافت مايكروسوفت الشرطة المائلة العكسية للسماح بكتابة المسارات في موجه سطر الأوامر، مع الحفاظ على التوافق مع MS-DOS 1.0 (حيث كانت الشرطة المائلة / مؤشر خيارات سطر الأوامر. كتابة " DIR/W " أعطت خيار "واسع" للأمر " DIR "، لذلك كانت هناك حاجة إلى طريقة أخرى إذا أراد المستخدم تشغيل برنامج باسم W داخل مجلد باسم DIR ). باستثناء COMMAND.COM ، تقبل جميع أجزاء نظام التشغيل الأخرى كلا الحرفين في المسار ، لكن اصطلاح مايكروسوفت لا يزال استخدام الشرطة المائلة العكسية، وتستخدم واجهات برمجة التطبيقات التي تُرجع المسارات الشرطة المائلة العكسية. [ 18 ] في بعض الإصدارات ، يمكن تغيير حرف الخيار من / إلى - عبر SWITCHAR ، مما يسمح لـ COMMAND.COM بالاحتفاظ بـ / في اسم الأمر.

ورثت عائلة أنظمة تشغيل مايكروسوفت ويندوز سلوك نظام MS-DOS، ولذلك لا تزال تدعم كلا الحرفين. مع ذلك، قد تقبل بعض برامج ويندوز وأنظمتها الفرعية، عن طريق الخطأ، الشرطة المائلة العكسية فقط كفاصل للمسار، أو قد تُسيء تفسير الشرطة المائلة الأمامية إذا استُخدمت كذلك. بعض البرامج لا تقبل الشرطة المائلة الأمامية إلا إذا وُضع المسار بين علامتي اقتباس مزدوجتين . [ 19 ] وقد أدى فشل ميزات الأمان في مايكروسوفت في التعرّف على الشرطات المائلة غير المتوقعة في المسارات المحلية ومسارات الإنترنت، بينما لا تزال أجزاء أخرى من نظام التشغيل تتعامل معها، إلى ثغرات أمنية خطيرة. فقد تم الوصول إلى موارد لا ينبغي أن تكون متاحة باستخدام مسارات تتضمن تركيبات معينة، مثل http://example.net/secure\private.aspx . [ 20 ] [ 21 ]

ترميز النص

تُستخدم علامة الخط المائل العكسي في نظام TeX للتنضيد وفي ملفات RTF لبدء علامات الترميز.

في USFM ، [ 22 ] يتم استخدام الشرطة المائلة العكسية لتمييز ميزات التنسيق لتحرير ترجمات الكتاب المقدس .

في تدوين الإقحام ، ^\يمثل حرف التحكم 0x1C، فاصل الملفات . [ 23 ]

الرياضيات

يُستخدم رمز يشبه الخط المائل العكسي للدلالة على الفرق بين المجموعات . [ 24 ]

يُستخدم الخط المائل العكسي أحيانًا للدلالة على فضاء المشاركة اليمنى . [ 25 ]

خاصة عند وصف خوارزميات الحاسوب، من الشائع تعريف الشرطة المائلة العكسية بحيث يكون a \ b مكافئًا لـ a / b . [ 26 ] هذه عملية قسمة صحيحة تقرب إلى الأسفل، وليس إلى الصفر.

في MATLAB و GNU Octave، تُستخدم الشرطة المائلة العكسية لقسمة المصفوفة من اليسار ، بينما تُستخدم الشرطة المائلة الأمامية لقسمة المصفوفة من اليمين. [ 27 ]

الخلط بين ¥ والأحرف الأخرى

في ترميزات اللغة اليابانية ISO 646-JP (ترميز 7 بت مبني على ASCII )، و JIS X 0201 (ترميز 8 بت)، و Shift JIS (ترميز متعدد البايتات 8 بت لـ ASCII)، يُعرض رمز النقطة 0x5C، الذي يُستخدم عادةً للشرطة المائلة العكسية في ASCII، كرمز الين ¥ . ونظرًا للاستخدام الواسع لرمز النقطة 005C لتمثيل رمز الين، لا تزال بعض الخطوط، مثل MS Mincho، تعرض رمز الشرطة المائلة العكسية كرمز ¥، لذا فإن الرموز الموجودة في نقاط ترميز Unicode U+00A5 ¥ YEN SIGN و U+005C \ REVERSE SOLIDUS تُعرض كرمز ¥ عند تحديد مجموعات الأحرف هذه . ولا تزال برامج الحاسوب تتعامل مع 005C كشرطة مائلة عكسية في هذه البيئات، لكنها تعرضه كرمز ين، مما يُسبب ارتباكًا، خاصةً في أسماء ملفات MS-DOS. [ 28 ]

تستبدل العديد من إصدارات معيار ISO 646 الأخرى علامة الخط المائل العكسي بأحرف أخرى، بما في ذلك (الكورية)، و Ö (الألمانية والسويدية)، وØ (الدنماركية والنرويجية)، و ç (الفرنسية)، و Ñ (الإسبانية)، مما يؤدي إلى مشاكل مماثلة، وإن كان تأثيرها أقل ديمومة مقارنةً بعلامة الين. ورغم أن هذا التعارض يُحل بتخصيص نقاط ترميز فريدة في يونيكود، إلا أن طول عمر الأنظمة القديمة يعني أن المشكلة لا تزال قائمة، وإن كانت تتضاءل.

في عام 1991، اقترحت RFC 1345 اختصارًا// فريدًا مكونًا من حرفين يمكن استخدامه في معايير الإنترنت كـ "طريقة عملية لتحديد هذا الحرف، دون الرجوع إلى مجموعة الأحرف المشفرة ورمزه في تلك المجموعة". [ 29 ] ونتيجة لذلك، يمكن ملاحظة هذا الأسلوب في وثائق فريق عمل هندسة الإنترنت المبكرة .

يونيكود

يحتوي نظام يونيكود على رموز مختلفة لمجموعة متنوعة من رموز الخط المائل العكسي:

  • U+005C \ REVERSE SOLIDUS ( & bsol; )
  • U+29F5 عامل عكس الخط المائل
  • U+29F9 BIG REVERSE SOLIDUS
  • U+2572 رسومات صندوقية مائلة خفيفة من أعلى اليسار إلى أسفل اليمين
  • U+FE68 SMALL REVERSE SOLIDUS
  • U+FF3C خط صلب معكوس بعرض كامل
  • U+244A OCR DOUBLE BACKSLASH
  • U+2216 SET MINUS
  • U+1F67D 🙽 صلب عكسي ثقيل جدًا

ملحوظات

  1. هذا هو عكس رمز الشرطة المائلة (▄ ▄ ) .      

مراجع

  1. قاموس ماكواري (الطبعة الثالثة)
  2. ريموند، إريك س. "ASCII" . ملف المصطلحات . مؤرشف من الأصل بتاريخ 18 يناير 2019. تم الاطلاع عليه بتاريخ 28 يوليو 2007 .
  3. النشرة رقم ١٢٥، العدد ٢: وصف وتعديلات مثقب ويتستون الخاص بآلة التليتايب (ملف PDF) . شركة التليتايب. مايو ١٩٣٨ [أغسطس ١٩٣٧]. ص. ٢. مؤرشف (ملف PDF) من الأصل بتاريخ ١٢ فبراير ٢٠٢١. تم الاطلاع عليه بتاريخ ١٥ مارس ٢٠٢١ عبر موقع navy-radio.com. 
  4. "النشرة رقم 188: مجموعة مثقبات تيليتايب الأوتوماتيكية" (ملف PDF) . شركة تيليتايب. أغسطس 1945. صفحة 6. مؤرشفة (ملف PDF) من الأصل بتاريخ 19 ديسمبر 2021. تم الاطلاع عليها بتاريخ 19 ديسمبر 2021 عبر موقع navy-radio.com. 
  5. "النشرة رقم 1025، العدد 3: أجزاء مثقب ويتستون الخاص بآلة التليتايب" (ملف PDF) . شركة التليتايب. يوليو 1945. صفحة 9. مؤرشف (ملف PDF) من الأصل بتاريخ 19 ديسمبر 2021. تم الاطلاع عليه بتاريخ 19 ديسمبر 2021 عبر موقع navy-radio.com. 
  6. 1 2 فيشر، إريك (20 يونيو 2000). "تطور رموز الأحرف، 1874-1968" (ملف PDF) . الصفحات 14-15 (الجدول 35). مؤرشف (ملف PDF) من الأصل في 30 نوفمبر 2022. تم الاطلاع عليه في 30 نوفمبر 2022 . بالرجوع إلى: بيمر، آر دبليو؛ بوخهولز، دبليو. (1 يونيو 1960). معيار مجموعة الأحرف الموسعة (تقرير فني). مختبر تطوير المنتجات، قسم أنظمة البيانات، شركة آي بي إم. TR 00.721.مجموعة معايير الحاسوب، مركز المحفوظات، المتحف الوطني للتاريخ الأمريكي، مؤسسة سميثسونيان، الصندوق 1.
  7. "مصدر مُترجم لغة C" . bitsavers.org . 1975. مؤرشف من الأصل بتاريخ 15 أغسطس 2011. تم الاطلاع عليه بتاريخ 11 أكتوبر 2009 .
  8. "مصدر مترجم لغة سي" . mit.edu . 1979. مؤرشف من الأصل بتاريخ 2013-12-03 . تم الاطلاع عليه بتاريخ 2009-10-11 .
  9. "معالج C المسبق" . GNU.org . مؤرشف من الأصل بتاريخ 2021-08-03 . تم الاطلاع عليه بتاريخ 2021-01-04 .
  10. "3.1.1 تقسيم الأسطر الطويلة" . دليل GNU make . مؤرشف من الأصل في 5 يونيو 2018. تم الاطلاع عليه في 28 يوليو 2019 .
  11. سيكورد، روبرت سي. "إزالة الثلاثيات؟!" (ملف PDF) . www.open-std.org .
  12. "المعاملات الحسابية في فيجوال بيسك" . ميزات لغة فيجوال بيسك: المعاملات والتعبيرات . MSDN. 10 يوليو 2012. مؤرشف من الأصل في 17 سبتمبر 2012. تم الاطلاع عليه في 7 أكتوبر 2012 .
  13. "نظرة عامة على مساحات الأسماء" . php.net . مؤرشف من الأصل بتاريخ 16-10-2012 . تم الاطلاع عليه بتاريخ 10-10-2012 .
  14. أوسوليفان، ستيوارت، وغورزن، هاسكل في العالم الحقيقي ، الفصل 4: الدوال المجهولة (لامدا)، ص 99
  15. "لماذا يُستخدم الرمز "\" في مسار نظام DOS؟" . Blogs.msdn.com. 24-06-2005. مؤرشف من الأصل بتاريخ 19-11-2022 . تم الاطلاع عليه بتاريخ 16-06-2013 .
  16. نيكاسيك، ميخال (24 مايو 2019). "لماذا يستخدم نظام ويندوز الشرطة المائلة العكسية كفاصل للمسارات؟" . متحف نظام التشغيل OS/2 . مؤرشف من الأصل في 24 مايو 2019. تم الاطلاع عليه في 28 مايو 2019 .
  17. لارسون، كريس؛ إيمروار، دون (1983)، شفرة المصدر لنظام MS-DOS الإصدارين 1.25 و2.0، ملف README.txt ، مايكروسوفت، مؤرشف من الأصل في 21 نوفمبر 2022 ، تم الاطلاع عليه في 21 نوفمبر 2022. يحتوي دليل المستخدم على بعض الأخطاء الجوهرية. يعود معظمها إلى تغييرات أُجريت في اللحظات الأخيرة لتحقيق درجة أعلى من التوافق مع تطبيق IBM لنظام MS-DOS (PC DOS). يتضمن ذلك استخدام "\" بدلاً من "/" كفاصل للمسار، و"/" بدلاً من "-" كحرف تبديل. لنقل ملفات الدفعات بين الأجهزة، تشجع مايكروسوفت على استخدام "\" و"/" على التوالي في السوق الأمريكية. [...] نعتذر عن أي إزعاج قد تكون هذه التغييرات قد سببته لفريق منشوراتكم التقنية.
  18. "طريقة Path.GetFullPath" . مكتبة فئات إطار عمل .NET . مايكروسوفت. مؤرشف من الأصل في 21 ديسمبر 2008. تم الاسترجاع في 2 يناير 2009 .
  19. «متى بدأ نظام ويندوز بقبول الشرطة المائلة كفاصل للمسارات؟» . Bytes.com. مؤرشف من الأصل في 6 فبراير 2009. تم الاطلاع عليه بتاريخ 2 يناير 2009 .
  20. كابلان، سيمون (2004). "مايكروسوفت تتحقق من ثغرة في ASP.NET" . ديف سورس، برعاية مايكروسوفت . زيف ديفيس إنتربرايز هولدينغز . تم الاطلاع عليه بتاريخ 14 يونيو 2009 .{{cite web}}: CS1 maint: deprecated archiveal service ( link )
  21. بيرنيت، مارك (2004). "ثغرات أمنية عميقة" . سكيورتي فوكس. مؤرشف من الأصل بتاريخ 2021-02-02 . تم الاطلاع عليه بتاريخ 2009-06-14 .
  22. "USFM - علامات التنسيق الموحد القياسي" . paratext.org . ١٨ أبريل ٢٠١٧. مؤرشف من الأصل في ١٣ أغسطس ٢٠٢٠. تم الاطلاع عليه في ٣٠ يونيو ٢٠١٣ .
  23. "مجموعة أحرف التحكم C0، 1987" . pd.infn.it. مؤرشف من الأصل بتاريخ 2019-09-06 . تم الاطلاع عليه بتاريخ 2021-03-14 .
  24. "الكميات والوحدات - الجزء 2: العلامات والرموز الرياضية المستخدمة في العلوم الطبيعية والتكنولوجيا" . ISO 80000-2:2009 . المنظمة الدولية للتوحيد القياسي. 15 أبريل 2008. مؤرشف من الأصل في 26 مارس 2014. تم الاطلاع عليه في 7 أكتوبر 2012 .
  25. "تعريف: فضاء المشاركة" . بروف ويكي. مؤرشف من الأصل في 26 فبراير 2021. تم الاسترجاع في 1 فبراير 2017 .
  26. "القسمة الصحيحة" . mathworld.wolfram.com . مؤرشف من الأصل بتاريخ 21 فبراير 2020. تم الاطلاع عليه بتاريخ 10 مارس 2020 .
  27. إيتون، جون دبليو؛ ديفيد بيتمان؛ سورين هاوبيرج (فبراير 2011). "جنو أوكتاف: لغة تفاعلية عالية المستوى للحسابات العددية" (ملف PDF) . مؤسسة البرمجيات الحرة. ص 145. مؤرشف (ملف PDF) من الأصل في 24 أكتوبر 2012. تم الاطلاع عليه في 7 أكتوبر 2012 . 
  28. "متى لا تكون الشرطة المائلة العكسية شرطة مائلة عكسية؟" . Blogs.msdn.com. مؤرشف من الأصل بتاريخ 23-03-2016 . تم الاطلاع عليه بتاريخ 16-06-2013 .
  29. سيمونسن، كيلد (26 ديسمبر 1991). "RFC 1345" . Tools.ietf.org. مؤرشف من الأصل بتاريخ 13 يونيو 2016. تم الاطلاع عليه بتاريخ 16 يونيو 2013 .
  • بوب بيمر. "كيف حصل نظام ASCII على علامة الخط المائل العكسي" . مؤرشف من الأصل بتاريخ 19-07-2013.