حرف التحكم
تحتاج هذه المقالة إلى مصادر إضافية للتحقق . ( September 2007 ) |
في الحوسبة والاتصالات ، حرف التحكم أو الحرف غير المطبوع ( NPC ) هو نقطة رمز في مجموعة أحرف لا تمثل حرفًا مكتوبًا أو رمزًا. يتم استخدامها كإشارات داخل النطاق للتسبب في تأثيرات أخرى غير إضافة رمز إلى النص. جميع الأحرف الأخرى هي في الأساس أحرف رسومية ، والمعروفة أيضًا باسم أحرف الطباعة (أو الأحرف القابلة للطباعة )، باستثناء ربما أحرف " المسافة ". في معيار ASCII، يوجد 33 حرف تحكم، مثل الرمز 7، BEL ، الذي يرن جرس المحطة الطرفية.
تاريخ
هذا القسم يحتاج إلى التوسعة . يمكنك المساعدة بإضافة المزيد إليه. ( يناير 2009 ) |
العلامات الإجرائية في شفرة مورس هي شكل من أشكال أحرف التحكم.
تم تقديم شكل من أشكال أحرف التحكم في كود Baudot لعام 1870 : NUL وDEL. أضاف كود Murray لعام 1901 إرجاع العربة (CR) وتغذية السطر (LF)، كما تضمنت إصدارات أخرى من كود Baudot أحرف تحكم أخرى.
كان حرف الجرس ( BEL)، الذي يرن جرسًا لتنبيه المشغلين، أيضًا حرف تحكم مبكر في التلغراف .
تمت تسمية بعض أحرف التحكم أيضًا بـ "مؤثرات التنسيق".
في ASCII

كان هناك عدد لا بأس به من أحرف التحكم المحددة (33 في ASCII، ويضيف معيار ECMA-48 32 حرفًا آخر). وكان هذا لأن المحطات الطرفية المبكرة كانت تحتوي على عناصر تحكم ميكانيكية أو كهربائية بدائية للغاية جعلت تنفيذ أي نوع من واجهات برمجة التطبيقات التي تتذكر الحالة مكلفًا للغاية، وبالتالي بدا وجود رمز مختلف لكل وظيفة متطلبًا. وسرعان ما أصبح من الممكن وغير المكلف تفسير تسلسلات الرموز لأداء وظيفة، ووجد صانعو الأجهزة طريقة لإرسال مئات من تعليمات الجهاز. على وجه التحديد، استخدموا رمز ASCII 27 10 (escape)، متبوعًا بسلسلة من الأحرف تسمى "تسلسل التحكم" أو "تسلسل الإفلات". تم اختراع الآلية بواسطة بوب بيمر ، والد ASCII. على سبيل المثال، فإن تسلسل الرمز 27 10 ، متبوعًا بالأحرف القابلة للطباعة "[2؛ 10H"، من شأنه أن يتسبب في تحريك محطة طرفية VT100 من شركة Digital Equipment Corporation لمؤشرها إلى الخلية العاشرة من السطر الثاني من الشاشة. توجد معايير متعددة لهذه التسلسلات، ولا سيما ANSI X3.64 ، ولكن عدد الاختلافات غير القياسية كبير.
جميع الإدخالات في جدول ASCII أسفل الرمز 32 10 (من الناحية الفنية مجموعة رموز التحكم C0 ) هي من هذا النوع، بما في ذلك CR وLF المستخدمة لفصل أسطر النص. الرمز 127 10 ( DEL ) هو أيضًا حرف تحكم. [1] [2] أضافت مجموعات ASCII الممتدة التي حددتها ISO 8859 الرموز من 128 10 إلى 159 10 كأحرف تحكم. تم ذلك في المقام الأول بحيث إذا تم تجريد البت العالي، فلن يتغير حرف الطباعة إلى رمز تحكم C0. تسمى هذه المجموعة الثانية مجموعة C1 .
تم نقل رموز التحكم الـ 65 هذه إلى Unicode . أضاف Unicode المزيد من الأحرف التي يمكن اعتبارها عناصر تحكم، ولكنه يميز بين "أحرف التنسيق" (مثل الأحرف غير المتصلة ذات العرض الصفري ) وأحرف التحكم الـ 65.
تحتوي مجموعة أحرف Extended Binary Coded Decimal Interchange Code (EBCDIC) على 65 رمز تحكم، بما في ذلك جميع رموز التحكم ASCII بالإضافة إلى الرموز الإضافية التي تُستخدم في الغالب للتحكم في الأجهزة الطرفية الخاصة بشركة IBM.
| 0x00 | 0x10 | |
|---|---|---|
| 0x00 | لا شيء | دي إل إي |
| 0x01 | سه | دي سي 1 |
| 0x02 | إس تي إكس | دي سي 2 |
| 0x03 | إي تي إكس | دي سي 3 |
| 0x04 | نهاية الخدمة | دي سي 4 |
| 0x05 | اي ان كيو | ناك |
| 0x06 | إك | سين |
| 0x07 | بلجيكا | إي تي بي |
| 0x08 | بكالوريوس | يستطيع |
| 0x09 | إتش تي | إم |
| 0×0أ | LF | فرعي |
| 0x0ب | فيرمونت | خروج |
| 0x0ج | اف اف | ف س |
| 0x0د | اللغة الإنجليزية: CR | جي اس |
| 0x0E | لذا | ر.س |
| 0×0ف | سي | نحن |
| 0x7F | ديل |
تتضمن أحرف التحكم في ASCII التي لا تزال قيد الاستخدام ما يلي:
- 0x00 ( null ، NUL ، \0 ، ^@ )، كان من المفترض في الأصل أن يكون حرفًا يتم تجاهله، ولكن الآن يستخدمه العديد من لغات البرمجة بما في ذلك C للإشارة إلى نهاية السلسلة .
- 0x07 ( bell ، BEL ، \a ، ^G )، مما قد يتسبب في إصدار الجهاز لتحذير مثل صوت جرس أو صفارة إنذار أو وميض الشاشة.
- قد يؤدي 0x08 ( backspace ، BS ، \b ، ^H ) إلى طباعة الحرف السابق.
- 0x09 ( علامة تبويب أفقية ، HT ، \t ، ^I )، يحرك موضع الطباعة إلى اليمين إلى علامة التبويب التالية.
- 0x0A ( تغذية السطر ، LF ، \n ، ^J )، يحرك رأس الطباعة لأسفل سطرًا واحدًا، أو إلى الحافة اليسرى وإلى الأسفل. يُستخدم كعلامة نهاية السطر في معظم أنظمة UNIX والإصدارات المختلفة.
- 0x0B ( علامة تبويب عمودية ، VT ، \v ، ^K )، جدولة عمودية.
- 0x0C ( تغذية النموذج ، FF ، \f ، ^L )، لتجعل الطابعة تقوم بإخراج الورق إلى أعلى الصفحة التالية، أو محطة الفيديو لمسح الشاشة.
- 0x0D ( إرجاع العربة ، CR ، \r ، ^M )، يحرك موضع الطباعة إلى بداية السطر، مما يسمح بالطباعة فوقها. يستخدم كعلامة نهاية السطر في أنظمة التشغيل Mac OS الكلاسيكية ، و OS-9 ، و FLEX (والإصدارات المختلفة). يستخدم CP/M -80 ومشتقاته بما في ذلك DOS و Windows ، وبروتوكولات طبقة التطبيق مثل FTP و SMTP و HTTP ، زوج CR+LF .
- 0x1A ( Control-Z , SUB , ^Z ). يعمل كنهاية ملف لملف وضع النص في نظام التشغيل Windows i/o.
- 0x1B ( escape , ESC , \e ( GCC فقط ), ^[ ). يقدم تسلسل هروب .
يمكن وصف أحرف التحكم بأنها تقوم بشيء ما عندما يقوم المستخدم بإدخالها، مثل الكود 3 ( حرف نهاية النص ، ETX، ^C ) لمقاطعة عملية التشغيل، أو الكود 4 ( حرف نهاية الإرسال ، EOT، ^D )، المستخدم لإنهاء إدخال النص على يونكس أو للخروج من غلاف يونكس . عادةً ما لا علاقة لهذه الاستخدامات باستخدامها عندما تكون في النص الذي يتم إخراجه.
في يونيكود
في Unicode، "أحرف التحكم" هي U+0000—U+001F (أحرف التحكم C0)، وU+007F (حذف)، وU+0080—U+009F (أحرف التحكم C1). فئتها العامة هي "Cc". أكواد التنسيق مميزة، في الفئة العامة "Cf". لا تحتوي أحرف التحكم Cc على اسم في Unicode، ولكن يتم إعطاؤها تسميات مثل "<control-001A>" بدلاً من ذلك. [4]
عرض
هناك عدد من التقنيات لعرض الأحرف غير القابلة للطباعة، والتي يمكن توضيحها باستخدام حرف الجرس في ترميز ASCII :
- نقطة الرمز : عشري 7، سداسي عشري 0x07
- اختصار، غالبًا ما يكون مكونًا من ثلاثة أحرف كبيرة: BEL
- حرف خاص يختصر الاختصار: Unicode U+2407 (␇)، "رمز الجرس"
- تمثيل رسومي وفقًا لمعيار ISO 2047 : Unicode U+237E (⍾)، "رسوم بيانية للجرس"
- تدوين علامة الإدراج في ASCII، حيث يتم تمثيل نقطة الرمز 00xxxxx كعلامة إدراج متبوعة بالحرف الكبير في نقطة الرمز 10xxxxx: ^G
- تسلسل الهروب ، كما هو الحال في أكواد سلسلة أحرف C / C++ : \a ، \007 ، \x07 ، وما إلى ذلك.
كيفية تعيين أحرف التحكم على لوحات المفاتيح
تحتوي لوحات المفاتيح المستندة إلى ASCII على مفتاح يحمل علامة " Control " أو "Ctrl" أو (نادرًا) "Cntl" والذي يُستخدم مثل مفتاح Shift، حيث يتم الضغط عليه مع مفتاح حرف أو رمز آخر. في أحد التطبيقات، يُنشئ مفتاح التحكم الكود الموجود أسفل الكود الخاص بالحرف الكبير (بشكل عام) الذي يتم الضغط عليه معه (أي طرح 0x40 من قيمة الكود ASCII للحرف الكبير (بشكل عام)). أما التطبيق الآخر فهو أخذ الكود ASCII الناتج عن المفتاح وربطه مع 0x1F على مستوى البتات ، مما يجبر البتات من 5 إلى 7 على الصفر. على سبيل المثال، يؤدي الضغط على "control" والحرف "g" (الذي يكون 0110 0111 في النظام الثنائي ) إلى إنتاج الكود 7 (BELL، 7 في النظام الأساسي عشرة، أو 0000 0111 في النظام الثنائي). يتم تمثيل حرف NULL (الرمز 0) بواسطة Ctrl-@، حيث يكون "@" هو الرمز الموجود مباشرة قبل "A" في مجموعة أحرف ASCII. وللتيسير، تقبل بعض المحطات الطرفية Ctrl-Space كاسم مستعار لـ Ctrl-@. وفي كلتا الحالتين، ينتج عن هذا أحد أكواد التحكم ASCII البالغ عددها 32 بين 0 و31. لا يعمل أي من النهجين لإنتاج حرف DEL بسبب موقعه الخاص في الجدول وقيمته (الرمز 127 10 )، ويُستخدم Ctrl-؟ أحيانًا لهذا الحرف. [5]
عند الضغط على مفتاح التحكم، تنتج مفاتيح الحروف نفس أحرف التحكم بغض النظر عن حالة مفاتيح shift أو caps lock . بعبارة أخرى، لا يهم ما إذا كان المفتاح سينتج حرفًا كبيرًا أم صغيرًا. يختلف تفسير مفتاح التحكم بمفاتيح المسافة والأحرف الرسومية والأرقام (رموز ASCII من 32 إلى 63) بين الأنظمة. سينتج بعضها نفس رمز الحرف كما لو لم يتم الضغط على مفتاح التحكم. تترجم أنظمة أخرى هذه المفاتيح إلى أحرف تحكم عند الضغط على مفتاح التحكم. يختلف تفسير مفتاح التحكم بمفاتيح غير ASCII ("أجنبية") أيضًا بين الأنظمة.
غالبًا ما يتم تحويل أحرف التحكم إلى نموذج قابل للطباعة يُعرف باسم تدوين الإدراج عن طريق طباعة علامة الإدراج (^) ثم حرف ASCII الذي يحتوي على قيمة حرف التحكم بالإضافة إلى 64. وبالتالي يتم عرض أحرف التحكم التي يتم إنشاؤها باستخدام مفاتيح الحروف بالشكل الكبير للحرف. على سبيل المثال، يمثل ^G الكود 7، والذي يتم إنشاؤه بالضغط على مفتاح G عند الضغط على مفتاح التحكم.
تحتوي لوحات المفاتيح أيضًا عادةً على بضعة مفاتيح مفردة تنتج أكواد أحرف التحكم. على سبيل المثال، ينتج المفتاح المسمى "Backspace" عادةً الكود 8، والمفتاح المسمى "Tab" الكود 9، والمفتاح "Enter" أو "Return" الكود 13 (على الرغم من أن بعض لوحات المفاتيح قد تنتج الكود 10 للمفتاح "Enter").
تتضمن العديد من لوحات المفاتيح مفاتيح لا تتوافق مع أي حرف تحكم أو حرف طباعة ASCII، على سبيل المثال أسهم التحكم في المؤشر ووظائف معالجة الكلمات . يتم توصيل ضغطات المفاتيح المرتبطة إلى برامج الكمبيوتر من خلال إحدى الطرق الأربع التالية: تخصيص أحرف تحكم غير مستخدمة بخلاف ASCII؛ استخدام بعض الترميز بخلاف ASCII؛ استخدام تسلسلات تحكم متعددة الأحرف؛ أو استخدام آلية إضافية خارج توليد الأحرف. تستخدم محطات الكمبيوتر "الغبية" عادةً تسلسلات التحكم. تستخدم لوحات المفاتيح المرفقة بأجهزة الكمبيوتر الشخصية المستقلة المصنعة في الثمانينيات عادةً إحدى الطريقتين الأوليين (أو كلتيهما). تولد لوحات مفاتيح الكمبيوتر الحديثة أكواد مسح ضوئي تحدد المفاتيح المادية المحددة التي يتم الضغط عليها؛ ثم تحدد برامج الكمبيوتر كيفية التعامل مع المفاتيح التي يتم الضغط عليها، بما في ذلك أي من الطرق الأربع الموضحة أعلاه.
غرض التصميم
لا يستشهد هذا القسم بأي مصادر . ( فبراير 2012 ) |
تم تصميم أحرف التحكم لتقع ضمن مجموعات قليلة: التحكم في الطباعة والعرض، وهيكلة البيانات، والتحكم في الإرسال، ومختلف المجموعات.
التحكم في الطباعة والعرض
استُخدمت أحرف التحكم في الطباعة لأول مرة للتحكم في الآلية المادية للطابعات، وهي أقدم أجهزة الإخراج. وكان أحد الأمثلة المبكرة لهذه الفكرة هو استخدام الأشكال (FIGS) والحروف (LTRS) في كود Baudot للتحول بين صفحتي كود. وكان أحد الأمثلة اللاحقة، ولكن المبكرة، هو أحرف التحكم في عربة ASA خارج النطاق . وفي وقت لاحق، تم دمج أحرف التحكم في تدفق البيانات المراد طباعتها. يتسبب حرف إرجاع العربة (CR)، عند إرساله إلى مثل هذا الجهاز، في وضع الحرف على حافة الورقة التي تبدأ عندها الكتابة (قد يحرك أو لا يحرك موضع الطباعة إلى السطر التالي). ويتسبب حرف تغذية السطر (LF/NL) في قيام الجهاز بوضع موضع الطباعة على السطر التالي. قد يحرك (أو لا يحرك)، حسب الجهاز وتكوينه، موضع الطباعة إلى بداية السطر التالي (الذي سيكون أقصى موضع إلى اليسار للنصوص من اليسار إلى اليمين ، مثل الحروف الأبجدية المستخدمة للغات الغربية، وأقصى موضع إلى اليمين للنصوص من اليمين إلى اليسار مثل الحروف الأبجدية العبرية والعربية). تتسبب أحرف الجدولة الرأسية والأفقية (VT وHT/TAB) في قيام جهاز الإخراج بنقل موضع الطباعة إلى علامة الجدولة التالية في اتجاه القراءة. يبدأ حرف تغذية النموذج (FF/NP) ورقة جديدة، وقد يتحرك أو لا يتحرك إلى بداية السطر الأول. يحرك حرف المسافة الخلفية (BS) موضع الطباعة مسافة حرف واحدة للخلف. في الطابعات، بما في ذلك محطات النسخ الورقية ، يتم استخدام هذا غالبًا حتى تتمكن الطابعة من طباعة الأحرف فوق بعضها البعض لإنشاء أحرف أخرى غير متوفرة عادةً. في محطات الفيديو وأجهزة الإخراج الإلكترونية الأخرى، توجد غالبًا خيارات تكوين برمجية (أو أجهزة) تسمح بمسح خلفي مدمر (على سبيل المثال، تسلسل BS، SP، BS)، والذي يمحو، أو غير مدمر، والذي لا يمحو. يؤدي تحويل الأحرف إلى الداخل والخارج (SI وSO) إلى تحديد مجموعات أحرف بديلة أو خطوط أو تسطير أو أوضاع طباعة أخرى. غالبًا ما كانت تسلسلات الإفلات تستخدم للقيام بنفس الشيء.
مع ظهور محطات الكمبيوتر التي لا تطبع فعليًا على الورق وبالتالي توفر مرونة أكبر فيما يتعلق بوضع الشاشة والمحو وما إلى ذلك، تم تكييف أكواد التحكم في الطباعة. على سبيل المثال، كانت تغذية النماذج تمسح الشاشة عادةً، حيث لا توجد صفحة ورقية جديدة للانتقال إليها. تم تطوير تسلسلات إفلات أكثر تعقيدًا للاستفادة من مرونة المحطات الجديدة، بل والطابعات الأحدث. كان مفهوم حرف التحكم دائمًا محدودًا إلى حد ما، وكان محدودًا للغاية عند استخدامه مع أجهزة جديدة أكثر مرونة. يمكن لتسلسلات التحكم (التي يتم تنفيذها أحيانًا كتسلسلات إفلات) أن تتطابق مع المرونة والقوة الجديدة وأصبحت الطريقة القياسية. ومع ذلك، كانت هناك، ولا تزال، مجموعة كبيرة ومتنوعة من التسلسلات القياسية للاختيار من بينها.
هيكلة البيانات
تم تصميم الفواصل (الملف والمجموعة والسجل والوحدة: FS وGS وRS وUS) لتنظيم البيانات، عادةً على شريط، من أجل محاكاة البطاقات المثقبة . تحذر نهاية الوسيط (EM) من أن الشريط (أو وسيط التسجيل الآخر) ينتهي. في حين تستخدم العديد من الأنظمة CR/LF وTAB لتنظيم البيانات، فمن الممكن مواجهة أحرف التحكم في الفاصل في البيانات التي تحتاج إلى تنظيم. لا يتم تحميل أحرف التحكم في الفاصل بشكل زائد؛ لا يوجد استخدام عام لها إلا لفصل البيانات إلى مجموعات منظمة. تكون قيمها الرقمية متجاورة مع حرف المسافة، والذي يمكن اعتباره عضوًا في المجموعة، كفاصل للكلمات.
على سبيل المثال، يستخدم RFC 7464 (تسلسلات نص JSON) فاصل RS لترميز تسلسل من عناصر JSON. يبدأ كل عنصر تسلسل بحرف RS وينتهي بتغذية سطر. يسمح هذا بتسلسل تسلسلات JSON مفتوحة النهاية. إنه أحد بروتوكولات تدفق JSON .
التحكم في ناقل الحركة
كانت أحرف التحكم في الإرسال تهدف إلى تنظيم تدفق البيانات، وإدارة إعادة الإرسال أو الفشل السلس، حسب الحاجة، في مواجهة أخطاء الإرسال.
كان حرف بداية العنوان (SOH) يشير إلى قسم غير بيانات في مجرى بيانات - الجزء من المجرى الذي يحتوي على عناوين وبيانات إدارية أخرى. كان حرف بداية النص (STX) يشير إلى نهاية الرأس وبداية الجزء النصي من المجرى. كان حرف نهاية النص (ETX) يشير إلى نهاية بيانات الرسالة. من الاتفاقيات المستخدمة على نطاق واسع جعل الحرفين السابقين لـ ETX بمثابة مجموع اختباري أو CRC لأغراض اكتشاف الأخطاء. تم استخدام حرف نهاية كتلة الإرسال (ETB) للإشارة إلى نهاية كتلة البيانات، حيث تم تقسيم البيانات إلى مثل هذه الكتل لأغراض الإرسال.
كان الغرض من حرف الإفلات ( ESC ) هو "اقتباس" الحرف التالي، فإذا كان حرف تحكم آخر، فسوف يطبعه بدلاً من تنفيذ وظيفة التحكم. نادرًا ما يتم استخدامه لهذا الغرض اليوم. تُستخدم العديد من الأحرف القابلة للطباعة كـ " أحرف إفلات " مرئية، اعتمادًا على السياق.
كان الغرض من الحرف البديل ( SUB ) هو طلب ترجمة الحرف التالي من حرف قابل للطباعة إلى قيمة أخرى، عادةً عن طريق ضبط البت 5 على صفر. وهذا مفيد لأن بعض الوسائط (مثل أوراق الورق التي تنتجها الآلات الكاتبة) يمكنها نقل الأحرف القابلة للطباعة فقط. ومع ذلك، في أنظمة MS-DOS التي تحتوي على ملفات مفتوحة في وضع النص، يتم تمييز "نهاية النص" أو "نهاية الملف" بحرف Ctrl-Z هذا ، بدلاً من Ctrl-C أو Ctrl-D ، وهي شائعة في أنظمة التشغيل الأخرى.
تشير علامة الإلغاء ( CAN ) إلى أنه يجب تجاهل العنصر السابق. تعد علامة الإقرار السالبة ( NAK ) علامة محددة للإشارة عادةً إلى أن الاستقبال كان مشكلة، وغالبًا، إلى أنه يجب إرسال العنصر الحالي مرة أخرى. تُستخدم علامة الإقرار ( ACK ) عادةً كعلامة للإشارة إلى عدم اكتشاف أي مشكلة في العنصر الحالي.
عندما يكون وسيط الإرسال نصف مزدوج (أي أنه يمكنه الإرسال في اتجاه واحد فقط في كل مرة)، فعادةً ما يكون هناك محطة رئيسية يمكنها الإرسال في أي وقت، ومحطة ثانوية واحدة أو أكثر ترسل عندما يكون لديها إذن. تُستخدم عادةً علامة الاستعلام ( ENQ ) بواسطة المحطة الرئيسية لطلب من المحطة الثانوية إرسال رسالتها التالية. تشير المحطة الثانوية إلى أنها أكملت إرسالها عن طريق إرسال علامة نهاية الإرسال ( EOT ).
كانت أكواد التحكم في الجهاز (DC1 إلى DC4) عامة في الأصل، ليتم تنفيذها حسب الضرورة بواسطة كل جهاز. ومع ذلك، فإن الحاجة العالمية في نقل البيانات هي طلب من المرسل التوقف عن الإرسال عندما يكون المستقبل غير قادر مؤقتًا على قبول أي بيانات أخرى. اخترعت شركة Digital Equipment Corporation اتفاقية تستخدم 19 (حرف التحكم في الجهاز 3 ( DC3 )، والمعروف أيضًا باسم control-S، أو XOFF ) لإيقاف الإرسال، و17 (حرف التحكم في الجهاز 1 ( DC1 )، والمعروف أيضًا باسم control-Q، أو XON ) لبدء الإرسال. لقد أصبح مستخدمًا على نطاق واسع لدرجة أن معظم الناس لا يدركون أنه ليس جزءًا من ASCII الرسمي. تتجنب هذه التقنية، بغض النظر عن كيفية تنفيذها، الأسلاك الإضافية في كبل البيانات المخصصة فقط لإدارة الإرسال، مما يوفر المال. ومع ذلك، يجب استخدام بروتوكول معقول لاستخدام إشارات التحكم في تدفق الإرسال هذه، لتجنب ظروف الجمود المحتملة.
كان من المفترض أن يكون حرف الإفلات في رابط البيانات ( DLE ) بمثابة إشارة إلى الطرف الآخر من رابط البيانات بأن الحرف التالي هو حرف تحكم مثل STX أو ETX. على سبيل المثال، قد يتم هيكلة الحزمة بالطريقة التالية ( DLE ) <STX> <PAYLOAD> ( DLE ) <ETX>.
رموز متنوعة
يهدف الكود 7 ( BEL ) إلى التسبب في إشارة مسموعة في الطرف المستقبل. [6]
صُممت العديد من أحرف التحكم في ASCII لأجهزة في ذلك الوقت لا نراها كثيرًا اليوم. على سبيل المثال، تم إرسال الرمز 22، "الخمول المتزامن" ( SYN )، في الأصل بواسطة أجهزة مودم متزامنة (يجب أن ترسل البيانات باستمرار) عندما لم تكن هناك بيانات فعلية لإرسالها. (تستخدم الأنظمة الحديثة عادةً بت البداية للإعلان عن بداية الكلمة المرسلة - وهذه ميزة للاتصال غير المتزامن . كانت روابط الاتصال المتزامنة تُرى غالبًا مع الحواسيب الكبيرة، حيث كانت تُشغَّل عادةً عبر خطوط مستأجرة للشركات لتوصيل حاسب كبير بحاسب كبير آخر أو ربما حاسوب صغير.)
الرمز 0 (اسم الرمز ASCII NUL ) هو حالة خاصة. في شريط الورق، يكون هذا هو الحال عندما لا توجد ثقوب. من المناسب التعامل مع هذا باعتباره حرف تعبئة لا معنى له بخلاف ذلك. نظرًا لأن موضع حرف NUL لا يحتوي على ثقوب مثقوبة، فيمكن استبداله بأي حرف آخر في وقت لاحق، لذلك تم استخدامه عادةً لحجز المساحة، إما لتصحيح الأخطاء أو لإدراج المعلومات التي ستكون متاحة في وقت لاحق أو في مكان آخر. في الحوسبة، غالبًا ما يتم استخدامه للحشو في السجلات ذات الطول الثابت ؛ لتمييز نهاية السلسلة ؛ وفي السابق لإعطاء أجهزة الطباعة وقتًا كافيًا لتنفيذ وظيفة التحكم .
الرمز 127 ( DEL ، المعروف أيضًا باسم "rubout") هو أيضًا حالة خاصة. رمزه المكون من 7 بتات هو كل البتات في النظام الثنائي، والذي يمحو في الأساس خلية حرف على شريط ورقي عند التثقيب الزائد. كان الشريط الورقي وسيلة تخزين شائعة عند تطوير ASCII، مع تاريخ حوسبة يعود إلى معدات فك الشفرات في الحرب العالمية الثانية في Biuro Szyfrów . أصبح الشريط الورقي عتيقًا في السبعينيات، لذلك نادرًا ما تم استخدام هذا الجانب الذكي من ASCII بعد ذلك. قامت بعض الأنظمة (مثل أجهزة Apple الأصلية) بتحويله إلى مسافة خلفية. ولكن نظرًا لأن رمزه يقع في النطاق الذي تشغله أحرف قابلة للطباعة أخرى، ولأنه لم يكن لديه رمز رسمي معين، فقد استخدمه العديد من بائعي معدات الكمبيوتر كحرف إضافي قابل للطباعة (غالبًا حرف "مربع" أسود بالكامل مفيد لمحو النص عن طريق الطباعة فوق الحبر).
عادةً ما يتم تنفيذ أقراص ROM القابلة للبرمجة وغير القابلة للمسح كمصفوفات من العناصر القابلة للدمج، حيث يمثل كل منها بتًا ، لا يمكن تبديله إلا في اتجاه واحد، عادةً من واحد إلى صفر. في مثل هذه الأقراص القابلة للبرمجة، يمكن استخدام أحرف DEL وNUL بنفس الطريقة التي تم استخدامها بها على الشريط المثقب: أحدهما لحجز بايتات التعبئة التي لا معنى لها والتي يمكن كتابتها لاحقًا، والآخر لتحويل البايتات المكتوبة إلى بايتات تعبئة لا معنى لها. بالنسبة للأقراص القابلة للبرمجة التي تحول واحدًا إلى صفر، يتم عكس أدوار NUL وDEL؛ أيضًا، سيعمل DEL فقط مع أحرف 7 بت، والتي نادرًا ما تستخدم اليوم؛ بالنسبة للمحتوى المكون من 8 بت، يمكن استخدام رمز الحرف 255، والذي يتم تعريفه عادةً على أنه حرف مسافة غير قابل للكسر، بدلاً من DEL.
لا تسمح العديد من أنظمة الملفات باستخدام أحرف التحكم في أسماء الملفات ، حيث قد تحتوي على وظائف محجوزة.
انظر أيضا
- مفاتيح الأسهم § مفاتيح HJKL ، HJKL كمفاتيح أسهم، تُستخدم في محطة ADM-3A
- رموز التحكم C0 و C1
- تسلسل الهروب
- إشارات داخل النطاق
- حرف المسافة البيضاء
الملاحظات والمراجع
- ^ تنسيق ASCII للتبادل الشبكي. 1969-10-01. doi : 10.17487/RFC0020 . RFC 20 . تم الاسترجاع في 2023-04-05 .
- ^ "5.2 أحرف التحكم". الكود الوطني الأمريكي للمعايير لتبادل المعلومات | ANSI X3.4-1977 (PDF) . المعهد الوطني للمعايير. 1977. مؤرشف (PDF) من الأصل في 2022-10-09.
- ^ توثيق MS-DOS QBasic v1.1. Microsoft 1987-1991.
- ^ "4.8 Name". Unicode Standard Version 13.0 – Core Specification (PDF) . Unicode, Inc. مؤرشف (PDF) من الأصل في 2022-10-09.
- ^ "أحرف ASCII". مؤرشف من الأصل في 28 أكتوبر 2009. تم الاسترجاع 2010-10-08 .
- ^ تنسيق ASCII لتبادل الشبكات. أكتوبر 1969. doi : 10.17487/RFC0020 . RFC 20 . تم الاسترجاع في 2013-11-03 .RFC قديم، يشرح بنية ومعنى أحرف التحكم في الفصول 4.1 و5.2
روابط خارجية
- مجموعة ISO IR 1 C0 من ISO 646 (PDF)
