ISO/IEC 2022

معيار ISO/IEC 2022 لتكنولوجيا المعلومات - بنية رموز الأحرف وتقنيات التمديد ، هو معيار صادر عن المنظمة الدولية للتوحيد القياسي (ISO) واللجنة الكهروتقنية الدولية ( IEC) في مجال ترميز الأحرف . وهو مكافئ لمعيار ECMA - 35 [ 1 ] [ 2 ] ، ومعيار ANSI X3.41 [ 3 ] ، والمعيار الصناعي الياباني JIS X 0202. وقد صدر هذا المعيار عام 1971، وتمت مراجعته آخر مرة عام 1994 [ 4 ].

تحدد المواصفة القياسية ISO 2022 بنية عامة يمكن أن تتوافق معها ترميزات الأحرف، حيث تخصص نطاقات محددة من البايتات ( 0x00–1F و0x7F–9F) لاستخدامها في رموز التحكم غير المخصصة للطباعة [ 5 ] لأغراض التنسيق والتعليمات المضمنة (مثل فواصل الأسطر أو تعليمات التنسيق لمحطات النصوص )، بدلاً من الأحرف الرسومية . كما تحدد صيغة لتسلسلات الهروب، وهي تسلسلات متعددة البايتات تبدأ برمز التحكم ESC ، والتي يمكن استخدامها أيضاً للتعليمات المضمنة. [ 6 ] تتضمن مجموعات محددة من رموز التحكم وتسلسلات الهروب المصممة للاستخدام مع ISO 2022 المواصفة القياسية ISO/IEC 6429 ، والتي يتم تنفيذ أجزاء منها بواسطة ANSI.SYS ومحاكيات المحطات الطرفية .

يُحدد معيار ISO 2022 نفسه رموز تحكم وتسلسلات هروب خاصة يمكن استخدامها للتبديل بين مجموعات الأحرف المشفرة المختلفة (على سبيل المثال، بين ASCII و JIS X 0208 الياباني ) لاستخدام عدة مجموعات في مستند واحد، [ 7 ] مما يدمجها فعليًا في ترميز حالة واحد (وهي ميزة أقل أهمية منذ ظهور Unicode ). وقد صُمم هذا المعيار ليكون قابلاً للاستخدام في بيئات 8 بت وبيئات 7 بت (حيث لا يمكن استخدام سوى سبعة بتات في البايت، مثل البريد الإلكتروني بدون 8BITMIME ). [ 8 ]

الترميز والتوافق

تدعم مجموعة أحرف ASCII الأبجدية اللاتينية الأساسية ISO (المكافئة للأبجدية الإنجليزية )، ولا توفر دعمًا جيدًا للغات التي تستخدم أحرفًا إضافية، أو التي تستخدم نظام كتابة مختلفًا تمامًا. أما أنظمة الكتابة الأخرى ذات الأحرف القليلة نسبيًا، مثل اليونانية والسيريلية والعربية والعبرية ، بالإضافة إلى أشكال الكتابة اللاتينية التي تستخدم علامات التشكيل أو الأحرف غير الموجودة في الأبجدية اللاتينية الأساسية ISO، فقد تم تمثيلها تاريخيًا على أجهزة الكمبيوتر الشخصية باستخدام ترميزات ASCII موسعة مختلفة ذات 8 بتات وبايت واحد ، والتي تتبع ASCII عندما تكون البتة الأكثر أهمية 0 (أي البايتات من 0x00 إلى 7F، عند تمثيلها بالنظام الست عشري )، وتتضمن أحرفًا إضافية عندما تكون البتة الأكثر أهمية 1 (أي البايتات من 0x80 إلى FF). بعض هذه، مثل سلسلة ISO 8859 ، تتوافق مع ISO 2022، [ 9 ] [ 10 ] بينما البعض الآخر مثل صفحة رمز DOS 437 لا يتوافق، وعادة ما يكون ذلك بسبب عدم حجز البايتات 0x80–9F لرموز التحكم.

تُكتب بعض لغات شرق آسيا ، وتحديدًا الصينية واليابانية والكورية (يُشار إليها مجتمعةً بـ " CJK " ) ، باستخدام عددٍ أكبر بكثير من الأحرف مقارنةً بالحد الأقصى البالغ 256 حرفًا الذي يُمكن تمثيله في بايت واحد، وقد تم تمثيلها لأول مرة على أجهزة الكمبيوتر باستخدام ترميزات ثنائية البايت خاصة بكل لغة أو ترميزات متغيرة العرض ؛ بعض هذه الترميزات (مثل ترميز الصينية المبسطة GB 2312 ) يتوافق مع معيار ISO 2022 ، بينما لا يتوافق البعض الآخر (مثل ترميز الصينية التقليدية Big5 ) معه. تُمثل رموز التحكم في معيار ISO 2022 دائمًا ببايت واحد، بغض النظر عن عدد البايتات المستخدمة للأحرف الرسومية. غالبًا ما تُسمى ترميزات CJK المستخدمة في بيئات 7 بت والتي تستخدم آليات ISO 2022 للتبديل بين مجموعات الأحرف بأسماء تبدأ بـ "ISO-2022-"، وأبرزها ISO-2022-JP ، على الرغم من أن بعض ترميزات CJK الأخرى مثل EUC-JP تستخدم أيضًا آليات ISO 2022. [ 11 ] [ 12 ]

بما أن أول 256 رمزًا من رموز يونيكود مأخوذة من معيار ISO 8859-1 ، فإن يونيكود يرث مفهوم رموز التحكم C0 وC1 من معيار ISO 2022، مع إضافة أحرف أخرى غير قابلة للطباعة إلى جانب رموز التحكم الخاصة بمعيار ISO 2022. ومع ذلك، فإن تنسيقات تحويل يونيكود ، مثل UTF-8، تختلف عمومًا عن بنية معيار ISO 2022 في جوانب متعددة، منها:

  • باستخدام بايتات 8 بت، ولكن لا يتم تمثيل رموز C1 بأشكالها أحادية البايت المحددة في ISO 2022 (معظم UTFs، باستثناء UTF-1 القديم ).
  • تمثيل جميع الأحرف، بما في ذلك رموز التحكم، باستخدام بايتات متعددة (مثل UTF-16 و UTF-32 )
  • خلط البايتات مع تعيين البت الأكثر أهمية وعدم تعيينه ضمن التمثيل المشفر لنقطة رمز واحدة (مثل UTF-1، GB 18030 )

ومع ذلك، توجد تسلسلات الهروب الخاصة بـ ISO 2022 للتبديل من وإلى UTF-8 باعتباره " نظام ترميز مختلف عن نظام ISO 2022[ 13 ] والتي تدعمها بعض برامج محاكاة الطرفيات مثل xterm . [ 14 ]

ملخص

عناصر

تحدد المواصفة القياسية ISO/IEC 2022 ما يلي:

  • بنية تحتية لمجموعات أحرف متعددة ذات هياكل معينة يمكن تضمينها في نظام ترميز أحرف واحد ، بما في ذلك مجموعات أحرف رسومية متعددة ومجموعات متعددة من رموز التحكم الأساسية (C0) والثانوية (C1) ، [ 15 ]
  • تنسيق لترميز هذه المجموعات، بافتراض أن 8 بتات متاحة لكل بايت، [ 16 ]
  • تنسيق لترميز هذه المجموعات في نفس نظام الترميز عندما لا يتوفر سوى 7 بتات لكل بايت، [ 17 ] وطريقة لتحويل أي بيانات حرفية متوافقة لتمريرها عبر بيئة 7 بت هذه، [ 8 ]
  • البنية العامة لرموز الهروب ANSI ، [ 6 ] و
  • تنسيقات رموز الهروب الخاصة لتحديد مجموعات الأحرف الفردية، [ 7 ] وللإعلان عن استخدام ميزات أو مجموعات فرعية معينة من التشفير، [ 18 ] وللتفاعل مع أنظمة التشفير الأخرى أو التبديل إليها. [ 18 ]

إصدارات الكود

لا يُشترط أن يُطبّق أي تطبيق معيارًا كاملًا؛ إذ يُحدّد مستوى المطابقة ومجموعات الأحرف المدعومة من قِبل التطبيق نفسه. ورغم أن العديد من الآليات المُحدّدة في معيار ISO/IEC 2022 قليلة الاستخدام، إلا أن العديد من أنظمة التشفير المُعتمدة تستند إلى مجموعة فرعية من نظام ISO/IEC 2022. [ 19 ] فعلى وجه الخصوص، تشمل أنظمة التشفير ذات 7 بت التي تستخدم آليات ISO/IEC 2022 نظام ISO-2022-JP (أو تشفير JIS )، الذي يُستخدم بشكل أساسي في البريد الإلكتروني باللغة اليابانية . أما أنظمة التشفير ذات 8 بت المتوافقة مع ISO/IEC 2022 فتشمل ISO/IEC 4873 (ECMA-43)، الذي يتوافق بدوره مع ISO/IEC 8859 ، [ 9 ] [ 10 ] ورمز يونكس الموسّع ، المُستخدم للغات شرق آسيا . [ 11 ] تشمل التطبيقات الأكثر تخصصًا لمعيار ISO 2022 نظام ترميز MARC-8 المستخدم في سجلات مكتبة MARC 21. [ 3 ]

تسلسلات الهروب الخاصة بالتعيين

تُسجَّل تسلسلات الهروب الخاصة بالتبديل إلى مجموعات أحرف أو ترميزات معينة في سجل ISO-IR (باستثناء تلك المخصصة للاستخدام الخاص، والتي تُحدد معانيها من قِبل الموردين، أو من خلال مواصفات البروتوكول مثل ARIB STD-B24 )، وتتبع الأنماط المحددة في المعيار. تتطلب ترميزات الأحرف التي تستخدم تسلسلات الهروب هذه معالجة البيانات بشكل تسلسلي في اتجاه أمامي، لأن التفسير الصحيح للبيانات يعتمد على تسلسلات الهروب التي تمت مواجهتها سابقًا.

قد تفرض بعض الملفات التعريفية، مثل ISO-2022-JP، شروطًا إضافية، كإعادة ضبط مجموعة الأحرف الحالية إلى US-ASCII قبل نهاية السطر. علاوة على ذلك، قد تغيب تسلسلات الهروب التي تُحدد مجموعات الأحرف الوطنية إذا كان ترميز ISO-2022 يسمح بذلك أو يشترطه، ويُلزم باستخدام مجموعات أحرف وطنية مُعينة. على سبيل المثال، ينص معيار ISO-8859-1 على عدم الحاجة إلى تسلسل هروب مُحدد.

أحرف متعددة البايت

لتمثيل مجموعات الأحرف الكبيرة، يعتمد معيار ISO/IEC 2022 على خاصية معيار ISO/IEC 646 التي تنص على أن تمثيل الأحرف بسبعة بتات قادر عادةً على تمثيل 94 حرفًا رسوميًا (قابلًا للطباعة) (بالإضافة إلى المسافة و33 حرف تحكم)؛ وإذا استُثنيت رموز التحكم C0 (المحددة بدقة)، فيمكن توسيع هذا العدد إلى 96 حرفًا. باستخدام بايتين، يمكن تمثيل ما يصل إلى 8836 حرفًا (94×94)؛ وباستخدام ثلاثة بايتات، يمكن تمثيل ما يصل إلى 830584 حرفًا (94×94×94). على الرغم من أن المعيار يُعرّف ذلك، إلا أنه لا توجد مجموعة أحرف مسجلة تستخدم ثلاثة بايتات (مع أن مجموعة الأحرف G2 غير المسجلة في EUC-TW تستخدمها، وكذلك مجموعة الأحرف CCCII غير المسجلة أيضًا ).

بالنسبة لمجموعات الأحرف ثنائية البايت، يُحدد رمز كل حرف عادةً بصيغة تُسمى " صف-خلية" أو "كوتين" [ a ] ، والتي تتألف من رقمين بين 1 و94 (شاملين)، يُحددان صفًا [ b ] وخلية [ c ] لهذا الحرف ضمن النطاق. أما بالنسبة لمجموعة الأحرف ثلاثية البايت، فيُضاف رقم مستوى [ d ] في البداية. [ 20 ] لا تُحدد تسلسلات الهروب مجموعة الأحرف المستخدمة فحسب، بل تُحدد أيضًا ما إذا كانت المجموعة أحادية البايت أو متعددة البايت (مع أنها لا تُحدد عدد البايتات المستخدمة في حالة كونها متعددة البايت)، وما إذا كان لكل بايت 94 أو 96 قيمة مسموح بها.

بنية الكود

الترميز والتسمية

تحدد ترميز ISO/IEC 2022 عملية ربط ثنائية الطبقات بين رموز الأحرف والأحرف المعروضة. تسمح تسلسلات الهروب بتصنيف أي مجموعة من مجموعات الأحرف الرسومية المسجلة ضمن إحدى مجموعات العمل الأربع، المسماة من G0 إلى G3، وتحدد تسلسلات التحكم الأقصر مجموعة العمل التي يتم استدعاؤها لتفسير البايتات في التدفق .

غالبًا ما تُكتب قيم البايت المشفرة ("مجموعات البتات") باستخدام ترميز الأعمدة والأسطر ، حيث يُفصل بين رقمين عشريين في النطاق من 00 إلى 15 (يُقابل كل منهما رقمًا سداسيًا عشريًا واحدًا) [ 23 ] بشرطة مائلة. [ 24 ] وبالتالي، على سبيل المثال، يمكن الإشارة إلى الرموز من 2/0 (0x20) إلى 2/15 (0x2F) شاملةً بـ "العمود 02". هذا هو الترميز المستخدم في معيار ISO/IEC 2022 / ECMA-35 نفسه. [ 25 ] يمكن وصفها في مواضع أخرى باستخدام النظام السداسي العشري ، كما هو شائع في هذه المقالة، أو باستخدام أحرف ASCII المقابلة، [ 26 ] على الرغم من أن تسلسلات الهروب تُعرَّف في الواقع بدلالة قيم البايت، ويمكن تغيير الرسم المُخصص لقيمة البايت تلك دون التأثير على تسلسل التحكم.

تُعرف قيم البايتات من نطاق ASCII الرسومي ذي 7 بتات (0x20–0x7F بالنظام الست عشري)، الواقعة على الجانب الأيسر من جدول رموز الأحرف، باسم رموز "GL" (حيث يرمز "GL" إلى "الرسومات اليسرى")، بينما تُعرف البايتات من نطاق "ASCII العالي" (0xA0–0xFF)، إن وُجد (أي في بيئة 8 بتات)، باسم رموز "GR" ("الرسومات اليمنى") . [ 5 ] يُعرَّف المصطلحان "CL" (0x00–0x1F) و"CR" (0x80–0x9F) لنطاقات التحكم، ولكن نطاق CL يستدعي دائمًا عناصر التحكم الأساسية (C0)، بينما يستدعي نطاق CR دائمًا عناصر التحكم الثانوية (C1) أو يكون غير مستخدم. [ 5 ]

الأحرف المشفرة الثابتة

تُعتبر أحرف الحذف DEL (0x7F) وأحرف الهروب ESC (0x1B) وأحرف المسافة SP (0x20) أحرفًا ثابتة الترميز [ 27 ] ، وهي متاحة دائمًا عند استدعاء G0 على GL، بغض النظر عن مجموعات الأحرف المُحددة. قد لا تكون هذه الأحرف مُضمنة في مجموعات الأحرف الرسومية، على الرغم من إمكانية تضمين أحجام أو أنواع أخرى من أحرف المسافة البيضاء . [ 28 ]

الصيغة العامة لتسلسلات الهروب

تأخذ التسلسلات التي تستخدم حرف ESC (الهروب) الشكل التالي : ، حيث يتبع حرف ESC صفر أو أكثر من البايتات الوسيطة [ 29 ] ( I ) من النطاق 0x20–0x2F، وبايت نهائي واحد [ 30 ] ( F ) من النطاق 0x30–0x7E. [ 31 ]ESC [I...] F

يُحدد البايت الأول (I) ، أو عدم وجوده، نوع تسلسل الهروب؛ فقد يُشير، على سبيل المثال، إلى مجموعة عمل، أو يدل على وظيفة تحكم واحدة. في جميع أنواع تسلسلات الهروب، تُحجز البايتات F في النطاق 0x30–0x3F للاستخدامات الخاصة غير المسجلة والمحددة بموجب اتفاق مسبق بين الأطراف. [ 32 ]

قد تستخدم وظائف التحكم من بعض المجموعات بايتات إضافية تلي تسلسل الهروب. على سبيل المثال، وظيفة التحكم ISO 6429 " مُدخل تسلسل التحكم "، والتي يمكن تمثيلها باستخدام تسلسل هروب، يتبعها صفر أو أكثر من البايتات في النطاق 0x30–0x3F، ثم صفر أو أكثر من البايتات في النطاق 0x20–0x2F، ثم بايت واحد في النطاق 0x40–0x7E، ويُطلق على التسلسل بأكمله اسم "تسلسل التحكم". [ 33 ]

مجموعات الأحرف الرسومية

يمكن أن تكون كل مجموعة من مجموعات العمل الأربع من G0 إلى G3 مجموعةً مكونة من 94 حرفًا أو مجموعةً متعددة البايتات مكونة من 94 حرفًا من نوع n . بالإضافة إلى ذلك، يمكن أن تكون المجموعات من G1 إلى G3 مجموعةً مكونة من 96 حرفًا أو مجموعةً مكونة من 96 حرفًا من نوع n .

في مجموعة أحرف مكونة من 96 حرفًا أو 96 n حرفًا، تُخصص البايتات من 0x20 إلى 0x7F عند استدعاء GL، أو من 0xA0 إلى 0xFF عند استدعاء GR، ويمكن استخدامها من قِبل المجموعة. أما في مجموعة أحرف مكونة من 94 حرفًا أو 94 n حرفًا، فلا تُستخدم البايتات 0x20 و0x7F. [ 34 ] عند استدعاء مجموعة أحرف مكونة من 96 حرفًا أو 96 n حرفًا في منطقة GL، لا تتوفر أحرف المسافة والحذف (الرموز 0x20 و0x7F) إلا عند استدعاء مجموعة أحرف مكونة من 94 حرفًا أو 94 n حرفًا (مثل مجموعة G0) في GL. [ 5 ] لا يمكن تخصيص مجموعات الأحرف المكونة من 96 حرفًا لمجموعة G0.

لا يعني تسجيل مجموعة ما كمجموعة من 96 حرفًا بالضرورة أن البايتات 0x20/A0 و0x7F/FF مُخصصة فعليًا بواسطة هذه المجموعة؛ ومن أمثلة مجموعات الأحرف الرسومية المسجلة كمجموعات من 96 حرفًا ولكنها لا تستخدم هذه البايتات: مجموعة G1 من معيار IS 434 ، [ 35 ] ومجموعة رسم المربعات من معيار ISO/IEC 10367 ، [ 36 ] ومعيار ISO-IR-164 (وهو مجموعة فرعية من مجموعة G1 من معيار ISO-8859-8 تحتوي على الأحرف فقط، ويستخدمها مركز CCITT ). [ 37 ]

دمج الشخصيات

يُتوقع أن تكون الأحرف أحرف فاصلة، وليست أحرفًا مركبة، ما لم يُنص على خلاف ذلك في المجموعة الرسومية المعنية. [ 38 ] كما يعترف معيار ISO 2022 / ECMA-35 باستخدام أحرف التحكم في المسافة الخلفية وإرجاع السطر كوسيلة لدمج الأحرف الفاصلة، بالإضافة إلى تسلسل CSI "مجموعة الأحرف الرسومية" (GCC) [ 38 ] ( CSI 0x20 (SP) 0x5F (_)). [ 39 ]

يُسمح باستخدام مفتاحي المسافة الخلفية وإرجاع السطر بهذه الطريقة وفقًا لمعيار ISO/IEC 646، ولكنه محظور بموجب معيار ISO/IEC 4873 / ECMA-43 [ 40 ] ومعيار ISO/IEC 8859 [ 41 ] [ 42 ] ، وذلك لكونه يُبقي مجموعة الأحرف الرسومية غير مُحددة. مع ذلك، يسمح معيار ISO/IEC 4873 / ECMA-43 باستخدام دالة GCC شريطة الحفاظ على تسلسل الأحرف كما هو وعرضه في مساحة واحدة فقط، دون إعادة طباعته لتشكيل حرف ذي معنى مختلف. [ 43 ]

مجموعات الأحرف للتحكم

تُصنف مجموعات أحرف التحكم إلى مجموعات رموز تحكم "أساسية" أو "ثانوية"، [ 44 ] وتُسمى أيضًا مجموعات رموز تحكم "C0" و"C1" على التوالي. [ 45 ]

يجب أن تحتوي مجموعة التحكم C0 على حرف التحكم ESC (الهروب) في العنوان 0x1B [ 46 ] (تُسجّل مجموعة C0 التي تحتوي على ESC فقط كـ ISO-IR-104)، [ 47 ] بينما قد لا تحتوي مجموعة التحكم C1 على حرف التحكم ESC إطلاقًا. [ 34 ] وبالتالي، فهما تسجيلان منفصلان تمامًا، حيث تُعتبر مجموعة C0 مجموعة C0 فقط، ومجموعة C1 مجموعة C1 فقط. [ 45 ]

إذا ظهرت رموز من مجموعة C0 في معيار ISO 6429 / ECMA-48، أي رموز التحكم ASCII ، في مجموعة C0، فيجب أن تظهر في مواقعها المحددة في معيار ISO 6429 / ECMA-48. [ 46 ] كما يحظر معيار ISO/IEC 2022 / ECMA-35 تضمين أحرف تحكم الإرسال في مجموعة C0، بالإضافة إلى الأحرف العشرة المضمنة في معيار ISO 6429 / ECMA-48 (وهي SOH وSTX وETX وEOT وENQ وACK وDLE وNAK وSYN وETB)، [ 48 ] أو تضمين أي من هذه الأحرف العشرة في مجموعة C1. [ 46 ] [ 34 ]

يتم استدعاء مجموعة التحكم C0 على نطاق CL من 0x00 إلى 0x1F، [ 49 ] بينما يمكن استدعاء وظيفة التحكم C1 على نطاق CR من 0x80 إلى 0x9F (في بيئة 8 بت) أو باستخدام تسلسلات الهروب (في بيئة 7 بت أو 8 بت)، [ 44 ] ولكن ليس كليهما. يجب تحديد نمط استدعاء C1 المستخدم في تعريف إصدار الكود. [ 50 ] على سبيل المثال، يحدد معيار ISO/IEC 4873 بايتات CR لعناصر التحكم C1 التي يستخدمها (SS2 وSS3). [ 51 ] عند الضرورة، يمكن إبلاغ المستخدم بنمط الاستدعاء باستخدام تسلسلات الإعلان .

في الحالة الأخيرة، يتم استدعاء وظائف التحكم الفردية من مجموعة رموز التحكم C1 باستخدام تسلسلات الهروب من النوع Fe، [ 34 ] أي تلك التي يتبع فيها حرف التحكم ESC بايت من العمود 04 أو 05 (أي من ESC 0x40 (@)خلال ESC 0x5F (_)). [ 52 ]

وظائف تحكم أخرى

تُخصص وظائف تحكم إضافية لتسلسلات الهروب من النوع "Fs" (في النطاق من 0 ESC 0x60 (`)إلى 10 ESC 0x7E (~))؛ ولها معانٍ ثابتة لا تعتمد على تصنيفات C0 أو C1. [ 52 ] [ 53 ] يجب أن تُعتمد عملية تسجيل وظائف التحكم لتسلسلات النوع "Fs" من قِبل اللجنة الفنية المشتركة 1/اللجنة الفرعية 2 التابعة للمنظمة الدولية للمعايير/اللجنة الكهروتقنية الدولية . [ 53 ] يمكن تسجيل وظائف تحكم فردية أخرى لتسلسلات الهروب من النوع "3Ft" (في النطاق من 0 إلى 10 )، [ 54 ] على الرغم من عدم تخصيص أي تسلسلات "3Ft" حاليًا (حتى عام 2019). [ 55 ] بعض هذه التسلسلات مُحدد في معيار ECMA-35 (ISO 2022 / ANSI X3.41)، والبعض الآخر في معيار ECMA-48 (ISO 6429 / ANSI X3.64). [ 56 ] يشير معيار ECMA-48 إلى هذه التسلسلات باسم "وظائف التحكم المستقلة". [ 57 ]ESC 0x23 (#) [I...] 0x40 (@)ESC 0x23 (#) [I...] 0x7E (~)

شفرةعرافةاختصاراسمالتأثير [ 55 ]
ESC `1B 60دي إم آيتعطيل الإدخال اليدوييعطل بعض أو كل وظائف الإدخال اليدوي للجهاز.
ESC a1B 61داخليمقاطعةيقاطع العملية الحالية.
ESC b1B 62إي إم آيتفعيل الإدخال اليدوييُمكّن هذا الخيار من استخدام وظائف الإدخال اليدوي للجهاز.
ESC c1B 63RISإعادة الضبط إلى الحالة الأوليةتعود أنظمة العرض والإدخال في الجهاز إلى نفس الحالة التي كانت عليها عند تشغيله للتو. [ 58 ] لا تتأثر الاتصالات بالعملاء.
ESC d1B 64CMDمحدد طريقة الترميزيُستخدم عند التفاعل مع نظام ترميز/تمثيل خارجي، انظر أدناه.
ESC n1B 6ELS2قفل ناقل الحركة الثانيوظيفة التحويل، انظر أدناه.
ESC o1B 6FLS3قفل ناقل الحركة الثالثوظيفة التحويل، انظر أدناه.
ESC |1B 7CLS3Rقفل ناقل الحركة الثالث إلى اليمينوظيفة التحويل، انظر أدناه.
ESC }1B 7DLS2Rقفل ناقل الحركة الثاني إلى اليمينوظيفة التحويل، انظر أدناه.
ESC ~1B 7ELS1Rقفل ناقل الحركة إلى اليمينوظيفة التحويل، انظر أدناه.

تُخصَّص تسلسلات الهروب من النوع "Fp" ( ESC 0x30 (0)من خلال ESC 0x3F (?)) أو من النوع "3Fp" ( من خلال ) لرموز التحكم الخاصة ذات الاستخدام الفردي، وذلك بموجب اتفاق مسبق بين الأطراف. [ 59 ] تستخدم محطات DEC الطرفية ، مثل VT100 ، العديد من هذه التسلسلات من كلا النوعين، وبالتالي فهي مدعومة من قِبل برامج محاكاة المحطات الطرفية . [ 14 ]ESC 0x23 (#) [I...] 0x30 (0)ESC 0x23 (#) [I...] 0x3F (?)

وظائف التحويل

بشكل افتراضي، تحدد رموز GL أحرف G0، بينما تحدد رموز GR (إن وجدت) أحرف G1؛ ويمكن تحديد خلاف ذلك باتفاق مسبق. كما يمكن تعديل المجموعة المُستدعاة على كل منطقة باستخدام رموز تحكم تُعرف باسم "الإزاحات"، كما هو موضح في الجدول أدناه. [ 60 ]

قد يحتوي رمز 8 بت على رموز GR تحدد أحرف G1، أي مع رمز 7 بت المقابل له الذي يستخدم Shift In و Shift Out للتبديل بين المجموعات (مثل JIS X 0201[ 61 ] على الرغم من أن بعضها يحتوي بدلاً من ذلك على رموز GR تحدد أحرف G2، مع رمز 7 بت المقابل له الذي يستخدم رمز إزاحة واحد للوصول إلى المجموعة الثانية (مثل T.51 ). [ 62 ]

الرموز الموضحة في الجدول أدناه هي أكثر ترميزات رموز التحكم شيوعًا، وتتوافق مع معيار ISO/IEC 6429. تُسجّل إزاحات LS2 وLS3 وLS1R وLS2R وLS3R كوظائف تحكم فردية، ويتم ترميزها دائمًا باستخدام تسلسلات الهروب المذكورة أدناه، [ 55 ] بينما تُعدّ الإزاحات الأخرى جزءًا من مجموعة رموز تحكم C0 أو C1 (كما هو موضح أدناه، SI (LS0) وSO (LS1) هما تحكم C0، وSS2 وSS3 هما تحكم C1)، مما يعني أن ترميزها وتوافرها قد يختلفان تبعًا لمجموعات التحكم المُحددة: يجب أن تكون موجودة في مجموعات التحكم المُحددة لاستخدام وظائفها. [ 49 ] [ 50 ] يمكن تمثيل عناصر تحكم C1 نفسها، كما ذُكر أعلاه، باستخدام تسلسلات الهروب أو بايتات 8 بت، ولكن ليس كليهما.

تتوفر ترميزات بديلة للإزاحات الفردية كرموز تحكم C0 في بعض مجموعات رموز التحكم. على سبيل المثال، يتوفر SS2 وSS3 عادةً عند 0x19 و0x1D على التوالي في T.51 [ 62 ] و T.61 [ 63 ] . يوصي معيار ISO/IEC 2022 / ECMA-35 حاليًا بهذا الترميز للتطبيقات التي تتطلب تمثيلات أحادية البايت ذات 7 بت لـ SS2 وSS3 [ 64 ] ، ويمكن استخدامه أيضًا لـ SS2 فقط [ 65 ] ، على الرغم من وجود مجموعات رموز أقدم تحتوي على SS2 عند 0x1C [ 66 ] [ 67 ] [ 68 ] ، وقد ذُكرت على هذا النحو في إصدار سابق من المعيار [ 69 ] . يُعد ترميز 0x8E و0x8F للإزاحات الفردية، كما هو موضح أدناه، إلزاميًا لمستويي 2 و3 من معيار ISO/IEC 4873 [ 70 ].

شفرةعرافةاختصاراسمتأثير
SI0FSI LS0تغيير في قفل الإزاحة صفرGL تقوم بتشفير G0 من الآن فصاعدًا [ 71 ] [ 72 ]
SO0ESO LS1مفتاح التحويل للخارج، قفل مفتاح التحويل الأولGL تقوم بتشفير G1 من الآن فصاعدًا [ 71 ] [ 72 ]
ESC n1B 6ELS2قفل ناقل الحركة الثانيGL تقوم بتشفير G2 من الآن فصاعدًا [ 71 ] [ 72 ]
ESC o1B 6FLS3قفل ناقل الحركة الثالثGL تقوم بتشفير G3 من الآن فصاعدًا [ 71 ] [ 72 ]
منطقة CR: SS2رمز الهروب:ESC Nمنطقة CR: 8Eرمز الهروب:1B 4ESS2وردية واحدة اثنانGL أو GR (انظر أدناه) يشفر G2 للحرف التالي مباشرة فقط [ 73 ]
منطقة CR: SS3رمز الهروب:ESC Oمنطقة CR: 8Fرمز الهروب:1B 4FSS3ثلاث نوبات عمل فرديةGL أو GR (انظر أدناه) يشفر G3 للحرف التالي مباشرة فقط [ 73 ]
ESC ~1B 7ELS1Rقفل ناقل الحركة إلى اليمينGR تقوم بتشفير G1 من الآن فصاعدًا [ 74 ]
ESC }1B 7DLS2Rقفل ناقل الحركة الثاني إلى اليمينGR تقوم بتشفير G2 من الآن فصاعدًا [ 74 ]
ESC |1B 7CLS3Rقفل ناقل الحركة الثالث إلى اليمينGR تقوم بتشفير G3 من الآن فصاعدًا [ 74 ]

على الرغم من اعتبارها رسميًا رموز إزاحة وتسميتها وفقًا لذلك، لا تُعتبر رموز الإزاحة الفردية دائمًا إزاحات، [ 12 ] ويمكن اعتبارها ببساطة بايتات بادئة (أي البايتات الأولى في تسلسل متعدد البايتات)، [ 11 ] نظرًا لأنها لا تتطلب من المُشفِّر الاحتفاظ بالمجموعة النشطة حاليًا كحالة ، على عكس رموز الإزاحة المُقفلة. في بيئات 8 بت، يمكن استخدام إما GL أو GR، وليس كليهما، كمنطقة إزاحة فردية. يجب تحديد ذلك في تعريف إصدار الرمز. [ 73 ] على سبيل المثال، يحدد معيار ISO/IEC 4873 منطقة GL، بينما يحدد معيار EUC المُعبأ منطقة GR. في بيئات 7 بت، تُستخدم منطقة GL فقط كمنطقة إزاحة فردية. [ 75 ] [ 76 ] عند الضرورة، يمكن إبلاغ منطقة الإزاحة الفردية المستخدمة باستخدام تسلسلات المُذيع .

يشير مصطلحا "قفل الإزاحة صفر" (LS0) و"قفل الإزاحة واحد" (LS1) إلى نفس زوج أحرف التحكم C0 (0x0F و0x0E) كما هو الحال مع مصطلحي "الإزاحة للداخل" (SI) و"الإزاحة للخارج" (SO). مع ذلك، يشير المعيار إليهما بـ LS0 وLS1 عند استخدامهما في بيئات 8 بت، وبـ SI وSO عند استخدامهما في بيئات 7 بت. [ 60 ]

يسمح معيار ISO/IEC 2022 / ECMA-35، ولكنه لا يشجع، على استخدام G1 أو G2 أو G3 في كل من GL وGR في آن واحد. [ 77 ]

تسجيل مجموعات الرموز الرسومية ورموز التحكم

يُدرج سجل ISO الدولي لمجموعات الأحرف المشفرة المستخدمة مع تسلسلات الهروب (ISO-IR) مجموعات الأحرف الرسومية، ومجموعات رموز التحكم، ورموز التحكم الفردية، وما إلى ذلك، المسجلة للاستخدام مع معيار ISO/IEC 2022. وتُحدد إجراءات تسجيل الرموز والمجموعات في سجل ISO-IR بموجب معيار ISO/IEC 2375. ويحصل كل تسجيل على تسلسل هروب فريد، ورقم إدخال فريد في السجل لتمييزه. [ 78 ] [ 79 ] على سبيل المثال، تُعرف مجموعة أحرف CCITT للغة الصينية المبسطة باسم ISO-IR-165 .

يُحدد تسجيل مجموعات الأحرف المشفرة في سجل ISO-IR الوثائق التي تُحدد مجموعة الأحرف أو وظيفة التحكم المرتبطة بتسلسل الهروب غير المخصص للاستخدام الخاص وفقًا لمعيار ISO/IEC 2022. قد تكون هذه وثيقة قياسية؛ ومع ذلك، فإن التسجيل لا يُنشئ معيارًا جديدًا لمنظمة ISO، ولا يُلزم منظمة ISO أو IEC باعتماده كمعيار دولي، ولا يُلزم منظمة ISO أو IEC بإضافة أي من أحرفه إلى مجموعة الأحرف المشفرة العالمية . [ 80 ]

تُستخدم تسلسلات الهروب المسجلة في معيار ISO-IR، والمُضمنة في مُعرّف عام رسمي، لتحديد مجموعات الأحرف المستخدمة في مراجع الأحرف الرقمية في لغة SGML (ISO 8879). على سبيل المثال، يمكن استخدام السلسلة النصية ISO 646-1983//CHARSET International Reference Version (IRV)//ESC 2/5 4/0لتحديد الإصدار المرجعي الدولي لمعيار ISO 646-1983 ، [ 81 ] وتستخدمها مواصفات HTML 4.01 ISO Registration Number 177//CHARSET ISO/IEC 10646-1:1993 UCS-4 with implementation level 3//ESC 2/5 2/15 4/6لتحديد Unicode. [ 82 ] سيتم التعرف على التمثيل النصي لتسلسل الهروب، المُضمن في العنصر الثالث من المُعرّف العام الرسمي، بواسطة تطبيقات SGML لمجموعات الأحرف المدعومة. [ 81 ]

تحديدات مجموعة الأحرف

تأخذ تسلسلات الهروب لتحديد مجموعات الأحرف الشكل التالي : . كما ذُكر أعلاه، تقع البايتات الوسيطة ( I ) ضمن النطاق 0x20–0x2F، بينما يقع البايت الأخير ( F ) ضمن النطاق 0x30–0x7E. يُحدد البايت الأول من I (أو أول بايتين في حالة مجموعة متعددة البايتات) نوع مجموعة الأحرف ومجموعة العمل التي سيتم تعيينها لها، بينما يُحدد البايت F (وأي بايتات I إضافية ) مجموعة الأحرف نفسها، كما هو مُحدد في سجل ISO-IR (أو، بالنسبة لتسلسلات الهروب الخاصة، بموجب اتفاق مسبق).ESC I [I...] F

يمكن إضافة بايتات I إضافية قبل بايت F لتوسيع نطاق بايت F. يُستخدم هذا حاليًا فقط مع مجموعات الأحرف المكونة من 94 حرفًا، حيث تم تخصيص رموز من هذا الشكل. [ 83 ] في المقابل، لم يتم تسجيل أي مجموعات أحرف متعددة البايتات مكونة من 96 حرفًا، لذا فإن التسلسلات أدناه نظرية بحتة.ESC ( ! F

كما هو الحال مع أنواع تسلسلات الهروب الأخرى، فإن النطاق 0x30–0x3F محجوز لبايتات F للاستخدام الخاص ، [ 32 ] وفي هذه الحالة لتعريفات مجموعات الأحرف للاستخدام الخاص (والتي قد تشمل مجموعات غير مسجلة مُعرَّفة بواسطة بروتوكولات مثل ARIB STD-B24 [ 84 ] أو MARC-8 ، [ 3 ] أو مجموعات خاصة بالبائع مثل DEC Special Graphics ). [ 85 ] ومع ذلك، في تسلسل تعيين مجموعة رسومية، إذا كان بايت I الثاني (لمجموعة أحادية البايت) أو بايت I الثالث (لمجموعة ثنائية البايت) هو 0x20 (مسافة)، فإن المجموعة المشار إليها هي " مجموعة أحرف قابلة لإعادة التعريف ديناميكيًا " (DRCS) مُعرَّفة باتفاق مسبق، [ 86 ] والتي تُعتبر أيضًا للاستخدام الخاص. [ 32 ] إن اعتبار مجموعة رسومية DRCS يعني أنها تُمثل خطًا من الرموز الرسومية الدقيقة، بدلاً من مجموعة من الأحرف المجردة. [ 87 ] لم يحدد معيار ISO/IEC 2022 / ECMA-35 نفسه طريقة نقل مجموعات DRCS والخطوط المرتبطة بها وتخصيصها وإدارتها، على الرغم من أنه يوصي بتخصيصها بالتسلسل بدءًا من البايت F 0x40 ( @[ 88 ] ومع ذلك، تم تحديد طريقة لنقل خطوط DRCS ضمن بعض بروتوكولات الاتصالات مثل World System Teletext . [ 89 ]

توجد أيضًا ثلاث حالات خاصة للرموز متعددة البايت. تم تسجيل تسلسلات الرموز ESC $ @، ESC $ Aو ، و ESC $ Bعندما كانت النسخة المعاصرة من المعيار تسمح بمجموعات متعددة البايت فقط في G0، لذلك يجب قبولها بدلاً من التسلسلات ESC $ ( @من ESC $ ( Bإلى للإشارة إلى مجموعة أحرف G0. [ 90 ]

توجد ميزات إضافية (نادرة الاستخدام) لتبديل مجموعات أحرف التحكم، ولكن هذا بحث أحادي المستوى، حيث (كما ذُكر أعلاه) يتم استدعاء المجموعة C0 دائمًا عبر CL، ويتم استدعاء المجموعة C1 دائمًا عبر CR أو باستخدام رموز الهروب. وكما ذُكر أعلاه، يُشترط أن تتضمن أي مجموعة أحرف C0 حرف ESC في الموضع 0x1B، حتى يتسنى إجراء تغييرات إضافية. يمكن أيضًا استخدام تسلسلات تعيين مجموعة التحكم (بدلاً من تسلسلات المجموعة الرسومية) من داخل ISO/IEC 10646 (UCS/Unicode)، في السياقات التي يكون فيها معالجة رموز الهروب ANSI مناسبًا، شريطة أن يتم حشو كل بايت في التسلسل إلى حجم وحدة الترميز. [ 91 ]

فيما يلي جدول يوضح تسلسل الهروب (بايتات I) والوظيفة التي تؤديها. [ 92 ]

شفرةعرافةاختصاراسمتأثيرمثال
ESC SP F1B 20 FACSهيكل الإعلان عن الكوديحدد ميزات الكود المستخدمة، على سبيل المثال مجموعات العمل (انظر أدناه ). [ 93 ]ESC SP L ( ISO 4873 المستوى 1)
ESC ! F1B 21 FCZDC0-تعيينيحدد المفتاح F مجموعة أحرف التحكم C0 المراد استخدامها. [ 94 ]ESC ! @ ( رموز ASCII C0 )
ESC " F1B 22 FC1DC1- مُصنَّفيحدد المفتاح F مجموعة أحرف التحكم C1 المراد استخدامها. [ 95 ]ESC " C ( رموز ISO 6429 C1 )
ESC # F1B 23 F-(وظيفة تحكم واحدة)(مخصصة لتسلسلات وظائف التحكم، انظر أعلاه .)ESC # 6 (للاستخدام الخاص: خط DEC مزدوج العرض ) [ 96 ]
GZDM4G0-تعيين متعدد البايتات 94-مجموعةيختار F مجموعة أحرف مكونة من 94 حرفًا لاستخدامها في G0. [ 90 ]ESC $ ( C ( KS X 1001 في G0)
ESC $ ) F1B 24 29 FG1DM4مجموعة G1-designate متعددة البايتات 94يختار F مجموعة أحرف مكونة من 94 حرفًا لاستخدامها في G1. [ 90 ]ESC $ ) A ( GB 2312 في G1)
ESC $ * F1B 24 2A FG2DM4مجموعة G2-designate متعددة البايتات 94يختار F مجموعة أحرف مكونة من 94 حرفًا لاستخدامها في G2. [ 90 ]ESC $ * B ( JIS X 0208 في G2)
ESC $ + F1B 24 2B FG3DM4مجموعة G3-designate متعددة البايتات 94يختار F مجموعة أحرف مكونة من 94 حرفًا لاستخدامها في G3. [ 90 ]ESC $ + D ( JIS X 0212 في G3)
ESC $ , F1B 24 2C F-(غير مستخدم)(غير مستخدم) [ f ]-
ESC $ - F1B 24 2D FG1DM6مجموعة G1-designate متعددة البايتات 96يختار F مجموعة من 96 حرفًا لاستخدامها في G1. [ 90 ]ESC $ - 1 (للاستخدام الشخصي)
ESC $ . F1B 24 2E FG2DM6مجموعة G2-designate متعددة البايتات 96يختار F مجموعة من 96 حرفًا لاستخدامها في G2. [ 90 ]ESC $ . 2 (للاستخدام الشخصي)
ESC $ / F1B 24 2F FG3DM6مجموعة G3-designate متعددة البايتات 96يختار F مجموعة من 96 حرفًا لاستخدامها في G3. [ 90 ]ESC $ / 3 (للاستخدام الشخصي)
ESC % F1B 25 Fالوثائقتحديد نظام ترميز آخرنظام ترميز المفاتيح، انظر أدناه .ESC % G ( UTF-8 )
ESC & F1B 26 Fمعدل العائد الداخليتحديد التسجيل المعدلتُستخدم البادئات للإشارة إلى المراجعة. [ g ]ESC & @ ESC $ B ( JIS X 0208:1990 في G0)
ESC ' F1B 27 F-(غير مستخدم)(غير مستخدم)-
ESC ( F1B 28 FGZD4G0-تعيين 94-مجموعةيختار F مجموعة من 94 حرفًا لاستخدامها في G0. [ 90 ]ESC ( B ( ASCII في G0)
ESC ) F1B 29 FG1D4مجموعة G1-designate 94يختار F مجموعة من 94 حرفًا لاستخدامها في G1. [ 90 ]ESC ) I ( JIS X 0201 Kana in G1)
ESC * F1B 2A FG2D4مجموعة G2-designate 94يختار F مجموعة من 94 حرفًا لاستخدامها في G2. [ 90 ]ESC * v ( ITU T.61 RHS في G2)
ESC + F1B 2B FG3D4مجموعة G3-designate 94يختار F مجموعة من 94 حرفًا لاستخدامها في G3. [ 90 ]ESC + D ( NATS-SEFI-ADD في G3)
ESC , F1B 2C F-(غير مستخدم)(غير مستخدم) [ h ]-
ESC - F1B 2D FG1D6مجموعة G1-designate 96يختار F مجموعة من 96 حرفًا لاستخدامها في G1. [ 90 ]ESC - A ( ISO 8859-1 RHS في G1)
ESC . F1B 2E FG2D6مجموعة G2-designate 96يختار F مجموعة من 96 حرفًا لاستخدامها في G2. [ 90 ]ESC . B ( ISO 8859-2 RHS في G2)
ESC / F1B 2F FG3D6مجموعة G3-designate 96يختار F مجموعة من 96 حرفًا لاستخدامها في G3. [ 90 ]ESC / b ( ISO 8859-15 RHS في G3)

لاحظ أن سجل بايتات F مستقلٌّ للأنواع المختلفة. فمجموعة الأحرف الرسومية المكونة من 94 حرفًا، والمُشار إليها ESC ( Aبـ ، ESC + Aلا ترتبط بأي شكل من الأشكال بمجموعة الأحرف المكونة من 96 حرفًا، والمُشار إليها ESC - Aبـ ESC / A. ولا ترتبط أيٌّ منهما بمجموعة الأحرف المكونة من 94 حرفًا، والمُشار إليها ESC $ ( Aبـ ESC $ + A، وهكذا؛ إذ يجب تفسير البايتات الأخيرة في سياقها. (في الواقع، يُعدّ ، بدون أي بايتات وسيطة، ESC Aطريقةً لتحديد رمز التحكم C1، وهو 0x81).

لاحظ أيضًا أن مجموعات أحرف التحكم C0 و C1 مستقلة؛ فمجموعة أحرف التحكم C0 المحددة بواسطة (والتي تصادف أنها مجموعة التحكم NATS لنقل نص الصحيفة) ليست هي نفسها مجموعة أحرف التحكم C1 المحددة بواسطة ( مجموعة التحكم في سمات CCITT لـ Videotex ).ESC ! AESC " A

التفاعل مع أنظمة الترميز الأخرى

يحدد المعيار أيضًا طريقة لتحديد أنظمة الترميز التي لا تتبع هيكله الخاص.

تم تعريف تسلسل للعودة إلى معيار ISO/IEC 2022؛ وتشمل التسجيلات التي تدعم هذا التسلسل كما هو مُشفّر في معيار ISO/IEC 2022 (حتى عام 2019) تنسيقات Videotex المختلفة، وUTF-8 ، و UTF-1 . [ 100 ] يتم تضمين بايت I ثانٍ بقيمة 0x2F /في تسلسلات تسمية الرموز التي لا تستخدم تسلسل البايت هذا للعودة إلى معيار ISO 2022؛ وقد يكون لديها وسائلها الخاصة للعودة إلى معيار ISO 2022 (مثل تسلسل مختلف أو مُضاف إليه بايت) أو لا يوجد لديها أي وسيلة على الإطلاق. [ 101 ] جميع التسجيلات الموجودة من النوع الأخير (حتى عام 2019) هي إما بيانات خام شفافة، أو تنسيقات Unicode/UCS ، أو مجموعات فرعية منها. [ 102 ]

شفرةعرافةاختصاراسمتأثير
ESC % @1B 25 40الوثائقحدد نظام ترميز آخر ("إرجاع قياسي")العودة إلى معيار ISO/IEC 2022 من ترميز آخر. [ 101 ]
ESC % F1B 25 Fتحديد نظام ترميز آخر ("مع إرجاع قياسي") [ 100 ]يُستخدم المفتاح F لاختيار رمز مكون من 8 بتات؛ ويُستخدم للعودة. [ 101 ]ESC % @
ESC % / F1B 25 2F Fتحديد نظام ترميز آخر ("بدون إرجاع قياسي") [ 102 ]يختار F رمزًا مكونًا من 8 بتات؛ ولا توجد طريقة قياسية للإرجاع. [ 101 ]
ESC d1B 64CMDمحدد طريقة الترميزيشير إلى نهاية تسلسل مشفر وفقًا لمعيار ISO/IEC 2022. [ 103 ]

تُعدّ التسلسلات التي تتحول إلى تنسيقات ISO/IEC 10646 ( يونيكود ) والتي لا تتبع بنية ISO/IEC 2022 ذات أهمية خاصة. وتشمل هذه التسلسلات UTF-8 (الذي لا يحجز النطاق 0x80–0x9F لأحرف التحكم)، وسلفه UTF-1 (الذي يمزج بايتات GR وGL في رموز متعددة البايتات)، وUTF-16 وUTF-32 (اللذان يستخدمان وحدات ترميز أوسع). [ 100 ] [ 102 ]

تم تسجيل العديد من الرموز أيضًا لمجموعات فرعية (المستويين 1 و2) من UTF-8 وUTF-16 وUTF-32، بالإضافة إلى ثلاثة مستويات من UCS-2 . [ 102 ] ومع ذلك، فإن الرموز الوحيدة المحددة حاليًا في معيار ISO/IEC 10646 هي رموز المستوى 3 لـ UTF-8 وUTF-16 وUTF-32، ورمز المستوى غير المحدد لـ UTF-8، بينما تُصنف بقية الرموز على أنها مهملة. [ 104 ] وينص معيار ISO/IEC 10646 على أن تنسيقات Big-Endian لـ UTF-16 وUTF-32 تُحدد بواسطة تسلسلات الهروب الخاصة بها. [ 105 ]

تنسيق يونيكودالرمز(ات)Hex [ 104 ]الرموز المهملةhex مهمل [ 100 ] [ 102 ] [ 104 ]
UTF-1(UTF-1 غير موجود في معيار ISO/IEC 10646 الحالي.)ESC % B1B 25 42
UTF-8ESC % G،ESC % / I1B 25 47, [ 13 ] 1B 25 2F 49[ 106 ]ESC % / G،ESC % / H1B 25 2F 47،1B 25 2F 48
UTF-16ESC % / L1B 25 2F 4C[ 107 ]ESC % / @، ، ، ،ESC % / CESC % / EESC % / JESC % / K1B 25 2F 40، 1B 25 2F 43، 1B 25 2F 45، 1B 25 2F 4A،1B 25 2F 4B
UTF-32ESC % / F1B 25 2F 46ESC % / A،ESC % / D1B 25 2F 41،1B 25 2F 44

من بين التسلسلات التي تتحول إلى UTF-8، هناك تسلسل مدعوم من قبل، على سبيل المثال، xterm . [ 14 ]ESC % G

على الرغم من السماح باستخدام صيغة معدلة من تسلسل الإرجاع القياسي من UTF-16 وUTF-32، إلا أنه يجب إضافة بايتات إلى تسلسل الهروب لتتناسب مع حجم وحدة الترميز (أي 001B 0025 0040UTF-16)، أي أن ترميز تسلسل الإرجاع القياسي لا يتوافق تمامًا مع معيار ISO/IEC 2022. ولهذا السبب، تستخدم تسميات UTF-16 وUTF-32 صيغةً بدون إرجاع قياسي. [ 108 ]

لتحديد الترميزات بواسطة التسميات، يحدد تنسيق النص المركب الخاص بـ X Consortium خمسة تسلسلات DOCS للاستخدام الخاص. [ 109 ]

إعلانات هيكل الكود

تُستخدم سلسلة "إعلان بنية الكود" ( ) للإعلان عن بنية كود محددة، أو مجموعة محددة من خصائص معيار ISO 2022 المستخدمة في إصدار معين من الكود. على الرغم من إمكانية دمج الإعلانات، إلا أن بعض التركيبات المتناقضة (وتحديدًا، استخدام إعلانات إزاحة القفل من 16 إلى 23 مع الإعلانات 1 و3 و4) محظورة بموجب المعيار، وكذلك استخدام إعلانات إضافية فوق إعلانات المستوى 12-14 من معيار ISO/IEC 4873 [ 93 ] (التي تحدد بالكامل السمات الهيكلية المسموح بها). تسلسلات الإعلانات هي كما يلي:ESC SP (0x20) F

رقمشفرةعرافةتم الإعلان عن ميزة إصدار الكود [ 93 ]
1ESC SP A1B 20 41G0 في GL، GR غائب أو غير مستخدم، لا توجد عمليات قفل للتحويلات.
2ESC SP B1B 20 42يتم استدعاء G0 و G1 إلى GL عن طريق قفل الإزاحات، GR غائب أو غير مستخدم.
3ESC SP C1B 20 43G0 في GL، G1 في GR، لا توجد عمليات إزاحة قفل، يتطلب بيئة 8 بت.
4ESC SP D1B 20 44G0 في GL، G1 في GR إذا كانت 8 بت، لا توجد عمليات إزاحة قفل إلا في بيئة 7 بت.
5ESC SP E1B 20 45وظائف الإزاحة محفوظة أثناء التحويل من 7 بت إلى 8 بت.
6ESC SP F1B 20 46يتحكم C1 باستخدام تسلسلات الهروب.
7ESC SP G1B 20 47تتحكم C1 في منطقة CR في بيئات 8 بت، كما في تسلسلات الهروب بخلاف ذلك.
8ESC SP H1B 20 48مجموعات رسومية مكونة من 94 حرفًا فقط.
9ESC SP I1B 20 49مجموعات رسومية مكونة من 94 حرفًا و/أو 96 حرفًا.
10ESC SP J1B 20 4Aيستخدم رمزًا مكونًا من 7 بتات، حتى لو كان هناك بت ثامن متاح للاستخدام.
11ESC SP K1B 20 4Bيتطلب رمزًا مكونًا من 8 بت.
12ESC SP L1B 20 4Cيتوافق مع معيار ISO/IEC 4873 (ECMA-43) المستوى 1.
13ESC SP M1B 20 4Dيتوافق مع معيار ISO/IEC 4873 (ECMA-43) المستوى 2.
14ESC SP N1B 20 4Eيتوافق مع معيار ISO/IEC 4873 (ECMA-43) المستوى 3.
16ESC SP P1B 20 50تم استخدام SI / LS0.
18ESC SP R1B 20 52تم استخدام SO / LS1.
19ESC SP S1B 20 53يستخدم LS1R في بيئات 8 بت، بينما يستخدم SO في بيئات 7 بت.
20ESC SP T1B 20 54تم استخدام LS2.
21ESC SP U1B 20 55يستخدم LS2R في بيئات 8 بت، ويستخدم LS2 في بيئات 7 بت.
22ESC SP V1B 20 56تم استخدام LS3.
23ESC SP W1B 20 57يستخدم LS3R في بيئات 8 بت، ويستخدم LS3 في بيئات 7 بت.
26ESC SP Z1B 20 5Aتم استخدام SS2.
27ESC SP [1B 20 5Bتم استخدام SS3.
28ESC SP \1B 20 5Cيتم استدعاء التحويلات الفردية على GR.

إصدارات كود ISO/IEC 2022

(لقطة شاشة لإصدار قديم من متصفح فايرفوكس تُظهر Big5 وGB 2312 وGBK وGB 18030 وHZ وISO-2022-CN وBig5-HKSCS وEUC-TW وEUC-JP وISO-2022-JP وShift_JIS وEUC-KR وUHC وJohab وISO-2022-KR كترميزات متاحة ضمن القائمة الفرعية CJK.)
يدعم متصفح موزيلا فايرفوكس منذ عام 2004 العديد من ترميزات ISO 2022 وغيرها من ترميزات CJK. (تم تقليل هذا الدعم في الإصدارات اللاحقة لتجنب بعض هجمات البرمجة النصية عبر المواقع .)

تُعرّف معايير IETF RFC ستة إصدارات من معيار ISO 2022 ذي 7 بت (ISO-2022-CN، وISO-2022-CN-EXT، وISO-2022-JP، وISO-2022-JP-1، وISO-2022-JP-2، وISO-2022-KR) ، وقد استُخدم الإصداران ISO-2022-JP وISO-2022-KR على نطاق واسع في السابق. [ 110 ] كما تُعرّف الشركات المصنّعة، بما فيها IBM ، عددًا من المتغيرات الأخرى . [ 111 ] على الرغم من أن ترميز UTF-8 هو الترميز المفضل في HTML5 ، إلا أن المحتوى القديم بتنسيق ISO-2022-JP لا يزال منتشرًا على نطاق واسع لدرجة أن معيار ترميز WHATWG لا يزال يدعمه، [ 112 ] على عكس ربط ISO-2022-KR وISO-2022-CN وISO-2022-CN-EXT [ 113 ] بالكامل بحرف الاستبدال ، [ 114 ] نظرًا للمخاوف بشأن هجمات حقن التعليمات البرمجية مثل البرمجة النصية عبر المواقع . [ 112 ] [ 114 ]

تتضمن إصدارات الشفرة ذات 8 بت شفرة يونكس الموسعة . [ 11 ] [ 12 ] كما تتبع ترميزات ISO/IEC 8859 معيار ISO 2022، في مجموعة فرعية منصوص عليها في ISO/IEC 4873. [ 9 ] [ 10 ]

نسخ البريد الإلكتروني اليابانية

ISO-2022-JP

يُعدّ ترميز ISO-2022-JP ترميزًا شائع الاستخدام للغة اليابانية، وخاصةً فيالبريد الإلكتروني. وقد طُرح للاستخدام على شبكة JUNET، ثمّ تمّ تقنينه لاحقًا فيمعيار IETF RFC1468 الصادر عام 1993. [ 115 ] يتميّز هذا الترميز عن غيره منترميزات اللغة اليابانيةبأنه لا يتطلّبنظيفًا من 8 بت. تُطلق عليه مايكروسوفتاسم صفحة الترميز 50220.[ 116 ] يبدأ الترميز بنظام ASCII، ويتضمّن تسلسلات الهروب التالية:

  • ESC ( Bللتحويل إلى ASCII (بايت واحد لكل حرف)
  • ESC ( Jللتبديل إلى JIS X 0201-1976 (ISO/IEC 646:JP) مجموعة الأحرف الرومانية (بايت واحد لكل حرف)
  • ESC $ @للتبديل إلى JIS X 0208-1978 (بايتان لكل حرف)
  • ESC $ Bللتبديل إلى JIS X 0208-1983 (بايتان لكل حرف)

يُسمح باستخدام الحرفين المُضافين في معيار JIS X 0208-1990، ولكن دون تضمين تسلسل IRR، أي باستخدام تسلسل الهروب نفسه المستخدم في معيار JIS X 0208-1983. [ 115 ] كذلك، نظرًا لتسجيله قبل إمكانية تحديد مجموعات متعددة البايتات باستثناء G0، فإن تسلسلات الهروب لمعيار JIS X 0208 لا تتضمن البايت الثاني I. [ 90( ]

تشير وثيقة RFC إلى أن بعض الأنظمة الحالية لم تُميّز ESC ( Bبين و ESC ( J، أو لم تُميّز ESC $ @بين ESC $ B، لكنها تنص على أنه لا ينبغي تغيير تسلسلات الهروب بواسطة الأنظمة التي تنقل الرسائل ببساطة، مثل رسائل البريد الإلكتروني. [115] يتعامل معيار ترميز WHATWG المُشار إليه في HTML5 مع و بشكلٍ مُختلف ، لكنه يُعامل بنفس طريقة عند فك التشفير، ويستخدم فقط لـ JIS X 0208 عند الترميز. [ 117 ] كما تُشير وثيقة RFC إلى أن بعض الأنظمة السابقة استخدمت التسلسل بشكلٍ خاطئ للتبديل من JIS X 0208، المُسجل في الواقع لـ ISO-IR-11 (وهو مُتغير سويدي من ISO 646 و World System Teletext ). [ 115 ] [ i ]ESC ( BESC ( JESC $ @ESC $ BESC $ BESC ( H

نسخ بكاتاكانا نصف العرض

لا يُعد استخدام الأمر ` ESC ( Ifl` للتبديل إلى مجموعة كانا JIS X 0201-1976 (بايت واحد لكل حرف) جزءًا من ملف تعريف ISO-2022-JP، [ 115 ] ولكنه يُستخدم أحيانًا. يسمح بايثون بذلك في صيغة تُسمى ISO-2022-JP-EXT (والتي تتضمن أيضًا JIS X 0212 كما هو موضح أدناه، مُكملةً بذلك تغطية EUC-JP[ 118 ] [ 119 ] وهي قريبة في الاسم والبنية من ترميز يُشار إليه بـ ISO-2022-JPext بواسطة DEC ، والذي يُضيف أيضًا منطقة مُعرّفة من قِبل المستخدم بحجم بايتين يتم الوصول إليها باستخدام الأمر `fl` ESC $ ( 0لإكمال تغطية Super DEC Kanji . [ 120 ] تسمح صيغة WHATWG/HTML5 بفك ترميز كاتاكانا JIS X 0201 في مُدخلات ISO-2022-JP، ولكنها تُحوّل الأحرف إلى مُكافئاتها في JIS X 0208 عند الترميز. [ 117 ] صفحة ترميز مايكروسوفت لمعيار ISO-2022-JP مع السماح أيضًا باستخدام JIS X 0201 kana هي صفحة الترميز 50221. [ 116 ]

تعتمد إصدارات أخرى أقدم، تُعرف باسم JIS7 ​​و JIS8 ، مباشرةً على ترميز 7 بت و8 بت المُحدد في JIS X 0201، وتتيح استخدام حروف الكانا JIS X 0201 من G1 دون الحاجة إلى تسلسلات هروب، وذلك باستخدام Shift Out وShift In أو بتعيين البت الثامن (باستخدام GR)، على التوالي. [ 121 ] وهي ليست شائعة الاستخدام؛ [ 121 ] ويتم تحقيق دعم JIS X 0208 في JIS X 0201 الموسع ذي 8 بت بشكل أكثر شيوعًا عبر Shift JIS . صفحة ترميز مايكروسوفت لـ JIS X 0201-based ISO 2022 مع كاتاكانا أحادية البايت عبر Shift Out وShift In هي صفحة الترميز 50222. [ 116 ]

ISO-2022-JP-2

ISO-2022-JP-2 هو امتداد متعدد اللغات لـ ISO-2022-JP، مُعرَّف فيRFC 1554(المؤرخ عام 1993)، والذي يسمح بتسلسلات الهروب التالية بالإضافة إلى تسلسلات ISO-2022-JP.ISO/IEC 8859هي مجموعات من 96 حرفًا لا يمكن تعيينها لـ G0، ويتم الوصول إليها من G2 باستخدام شكل تسلسل الهروب ذي 7 بتات لرمز الإزاحة الأحادية SS2: [ 122 ]

  • ESC $ Aللتحويل إلى GB 2312-1980 (بايتان لكل حرف)
  • ESC $ ( Cللتبديل إلى KS X 1001-1992 (بايتان لكل حرف)
  • ESC $ ( Dللتحويل إلى JIS X 0212-1990 (بايتان لكل حرف)
  • ESC . Aللتحويل إلى الجزء العالي من معيار ISO/IEC 8859-1 ، مجموعة Extended Latin 1 (بايت واحد لكل حرف) [مخصص لـ G2]
  • ESC . Fللتحويل إلى الجزء العالي من معيار ISO/IEC 8859-7 ، مجموعة الأحرف اليونانية الأساسية (بايت واحد لكل حرف) [مخصص لـ G2]

تمت تسمية ISO-2022-JP مع تمثيل ISO-2022-JP-2 لـ JIS X 0212، ولكن ليس الامتدادات الأخرى، لاحقًا بـ ISO-2022-JP-1 بواسطة RFC 2237 ، بتاريخ 1997. [ 123 ]

بروتوكول TCP الياباني من IBM

تُطبّق شركة IBM تسعة ترميزات للغة اليابانية تعتمد على معيار ISO 2022 ذي 7 بتات، يستخدم كل منها مجموعة مختلفة من تسلسلات الهروب: IBM-956، وIBM-957، وIBM-958، وIBM-959، وIBM-5052، وIBM-5053، وIBM-5054، وIBM-5055، وISO-2022-JP، والتي تُعرف مجتمعةً باسم "مجموعات الأحرف المُرمّزة للغة اليابانية في TCP/IP". [ 124 ] يُعدّ CCSID 9148 هو المعيار (RFC 1468) ISO-2022-JP. [ 125 ]

إصدارات IBM من معيار ISO-2022-JP
صفحة الترميز / CCSIDرقم تعريف ACRIتسلسلات الهروب لـ ACRI [ 111 ]
956 [ 126 ]TCP-01
  • ESC ( J(JIS X 0201 Roman)
  • ESC $ ( B(JIS X 0208، 1983+، تسلسل هروب طويل)
  • ESC $ I(JIS X 0201 كاتاكانا)
  • ESC $ ( D
957 [ 127 ]TCP-02
  • ESC ( J(JIS X 0201 Roman)
  • ESC $ ( @(JIS X 0208، 1978، تسلسل هروب طويل)
  • ESC $ I(JIS X 0201 كاتاكانا)
  • ESC $ ( D(JIS X 0212)
958 [ 128 ]TCP-03
  • ESC ( A(ASCII)
  • ESC $ ( B(JIS X 0208، 1983+، تسلسل هروب طويل)
  • ESC $ I(JIS X 0201 كاتاكانا)
  • ESC $ ( D(JIS X 0212)
959 [ 129 ]TCP-04
  • ESC ( A(ASCII)
  • ESC $ ( @(JIS X 0208، 1978، تسلسل هروب طويل)
  • ESC $ I(JIS X 0201 كاتاكانا)
  • ESC $ ( D(JIS X 0212)
5052 [ 130 ]TCP-05
  • ESC ( J(JIS X 0201 Roman)
  • ESC $ B(JIS X 0208، 1983+)
  • ESC $ I(JIS X 0201 كاتاكانا)
  • ESC $ ( D(JIS X 0212)
5053 [ 131 ]TCP-06
  • ESC ( J(JIS X 0201 Roman)
  • ESC $ @(JIS X 0208، 1978)
  • ESC $ I(JIS X 0201 كاتاكانا)
  • ESC $ ( D(JIS X 0212)
5054 [ 132 ]TCP-07
  • ESC ( A(ASCII)
  • ESC $ B(JIS X 0208، 1983+)
  • ESC $ I(JIS X 0201 كاتاكانا)
  • ESC $ ( D(JIS X 0212)
5055 [ 133 ]TCP-08
  • ESC ( A(ASCII)
  • ESC $ @(JIS X 0208، 1978)
  • ESC $ I(JIS X 0201 كاتاكانا)
  • ESC $ ( D(JIS X 0212)
9148 [ 125 ]TCP-16
  • ESC ( A(ASCII)
  • ESC ( J(JIS X 0201 Roman)
  • ESC $ @(JIS X 0208، 1978)
  • ESC $ B(JIS X 0208، 1983+)

JIS X 0213

يُعرّف معيار JIS X 0213 ، الذي نُشر لأول مرة عام 2000، نسخةً مُحدّثة من معيار ISO-2022-JP، بدون امتدادات ISO-2022-JP-2، ويُسمى ISO-2022-JP-3 . أدت الإضافات التي أدخلها معيار JIS X 0213 مقارنةً بمعيار JIS X 0208 الأساسي إلى تسجيل جديد للمستوى 1 الموسّع من معيار JIS، بينما حصل المستوى 2 الجديد على تسجيل خاص به. أدت الإضافات الأخرى إلى المستوى 1 في إصدار 2004 من المعيار إلى إضافة تسجيل إضافي إلى مراجعة لاحقة للملف التعريفي، يُطلق عليها اسم ISO-2022-JP-2004 . بالإضافة إلى رموز التسمية الأساسية لمعيار ISO-2022-JP، تُعتمد التسميات التالية:

  • ESC ( Iللتبديل إلى مجموعة JIS X 0201-1976 Kana (بايت واحد لكل حرف)
  • ESC $ ( Oللتبديل إلى JIS X 0213-2000 المستوى 1 (بايتان لكل حرف)
  • ESC $ ( Pللتبديل إلى JIS X 0213-2000 المستوى 2 (بايتان لكل حرف)
  • ESC $ ( Qللتبديل إلى JIS X 0213-2004 المستوى 1 (بايتان لكل حرف، ISO-2022-JP-2004 فقط)

إصدارات أخرى من 7 بت

تم تعريف معيار ISO-2022-KR في RFC 1557، بتاريخ 1993. [ 134 ] وهو يشفر ASCII والترميز الكوري ثنائي البايتKS X 1001-1992، [ 135 ] [ 136 ] والذي كان يُسمى سابقًا KS C 5601-1987. على عكس معيار ISO-2022-JP-2، يستخدم هذا المعيارحرفي Shift Out وShift Inللتبديل بينهما، بعد تضمينهماESC $ ) Cمرة واحدة في بداية السطر لتعيين KS X 1001 إلى G1. [ 134 ]

ISO-2022-CN وتم تعريف ترميز ISO-2022-CN-EXT فيRFC 1922، الصادر عام 1996. وهو ترميز ذو 7 بتات، يستخدم دالتي Shift Out وShift In (للانتقال بين G0 وG1)، بالإضافة إلى رموز الهروب ذات 7 بتات الخاصة بدالتي الإزاحة الفردية SS2 وSS3 (للوصول إلى G2 وG3). [ 137 ] وهو يدعم مجموعتي الأحرفGB 2312(للصينية المبسطة) وCNS 11643(للصينية التقليدية).

يستخدم ملف تعريف ISO-2022-CN الأساسي ASCII كمجموعة G0 (الإزاحة للداخل)، ويتضمن أيضًا GB 2312 والمستويين الأولين من CNS 11643 (نظرًا لأن هذين المستويين كافيان لتمثيل جميع الأحرف الصينية التقليدية من Big5 الشائعة ، والتي يوفر RFC لها تطابقًا في ملحق): [ 137 ]

  • ESC $ ) Aللتحويل إلى GB 2312-1980 (بايتان لكل حرف) [مخصص لـ G1]
  • ESC $ ) Gللتحويل إلى CNS 11643-1992 المستوى 1 (بايتان لكل حرف) [مخصص لـ G1]
  • ESC $ * Hللتحويل إلى CNS 11643-1992 المستوى 2 (بايتين لكل حرف) [مخصص لـ G2]

يسمح ملف تعريف ISO-2022-CN-EXT بالمجموعات والمستويات الإضافية التالية. [ 137 ]

  • ESC $ ) Eللتبديل إلى ISO-IR-165 (بايتان لكل حرف) [مخصص لـ G1]
  • ESC $ + Iللتحويل إلى CNS 11643-1992 المستوى 3 (بايتان لكل حرف) [مخصص لـ G3]
  • ESC $ + Jللتحويل إلى CNS 11643-1992 المستوى 4 (بايتان لكل حرف) [مخصص لـ G3]
  • ESC $ + Kللتحويل إلى CNS 11643-1992 المستوى 5 (بايتين لكل حرف) [مخصص لـ G3]
  • ESC $ + Lللتحويل إلى CNS 11643-1992 المستوى 6 (بايتان لكل حرف) [مخصص لـ G3]
  • ESC $ + Mللتحويل إلى CNS 11643-1992 المستوى 7 (بايتين لكل حرف) [مخصص لـ G3]

يسرد ملف تعريف ISO-2022-CN-EXT أيضًا مجموعات رسومية قياسية إضافية من Guobiao على أنها مسموح بها، ولكن بشرط تعيين تسلسلات الهروب المسجلة ISO 2022 لها: [ 137 ]

  • GB 12345 في G1
  • GB 7589 أو GB 13131 في G2
  • GB 7590 أو GB 13132 في G3

يُحدد الحرف الذي يلي ESC(لمجموعات الأحرف أحادية البايت) أو ESC $(لمجموعات الأحرف متعددة البايت) نوع مجموعة الأحرف ومجموعة العمل المُخصصة لها. في الأمثلة أعلاه، (يُشير الحرف (0x28) إلى مجموعة أحرف G0 مكونة من 94 حرفًا، بينما )تُشير *الأحرف +(0x29–0x2B) إلى مجموعات الأحرف G1–G3.

يُستخدم ترميز ISO-2022-KR وISO-2022-CN بشكل أقل تكرارًا من ترميز ISO-2022-JP، وأحيانًا لا يُدعمان عمدًا لأسباب أمنية. والجدير بالذكر أن معيار ترميز WHATWG المستخدم في HTML5 يربط ترميز ISO-2022-KR وISO-2022-CN وISO-2022-CN-EXT (بالإضافة إلى HZ-GB-2312 ) بوحدة فك التشفير "الاستبدالية" [ 113 ] ، التي تربط جميع المدخلات بحرف الاستبدال ( ¬) ، وذلك لمنع بعض هجمات البرمجة النصية عبر المواقع (XSS ) والهجمات ذات الصلة، التي تستغل اختلاف دعم الترميز بين العميل والخادم. [ 114 ] على الرغم من أن نفس المخاوف الأمنية (السماح بتفسير تسلسلات بايتات ASCII بشكل مختلف) تنطبق أيضًا على ترميز ISO-2022-JP و UTF-16 ، إلا أنه لم يكن من الممكن تطبيق هذا النهج عليهما نظرًا لاستخدامهما بشكل أكبر في المحتوى المنشور. [ 112 ]

في أبريل 2024، تم اكتشاف ثغرة أمنية [ 138 ] في تطبيق معيار ISO-2022-CN-EXT في مكتبة glibc ، مما أدى إلى توصيات بتعطيل التشفير تمامًا على أنظمة لينكس. [ 139 ]

ISO/IEC 4873

العلاقة بين إصدارات ومستويات ECMA-43 (ISO/IEC 4873) و EUC .

تُعرّف المواصفة القياسية ISO/IEC 4873 ، التي نشرتها أيضًا منظمة Ecma الدولية تحت اسم ECMA-43، مجموعة فرعية من معيار ISO 2022 المطبق على ترميزات البايت الواحد ذات 8 بت. وتُعرّف المواصفة القياسية ISO/IEC 8859 رموزًا ذات 8 بت لمستوى 1 من معيار ISO/IEC 4873 (أو ECMA-43) . [ 9 ] [ 10 ]

تحدد المواصفة القياسية ISO/IEC 4873 / ECMA-43 ثلاثة مستويات من التشفير: [ 140 ]

  • المستوى 1، الذي يتضمن مجموعة C0، ومجموعة ASCII G0، ومجموعة C1 اختيارية، ومجموعة G1 اختيارية أحادية البايت (94 أو 96 حرفًا). يتم استدعاء G0 على GL، ويتم استدعاء G1 على GR. لا يُسمح باستخدام دوال الإزاحة.
  • المستوى 2، الذي يتضمن مجموعة G2 و/أو G3 أحادية البايت (94 أو 96 حرفًا) بالإضافة إلى مجموعة G1 الإلزامية. يُسمح فقط بوظيفتي الإزاحة الفردية SS2 وSS3 (أي أن عمليات الإزاحة المُقفلة ممنوعة)، ويتم استدعاؤهما على منطقة GL (بما في ذلك 0x20 و0x7F في حالة المجموعة 96). يجب أن تكون SS2 وSS3 متاحتين في C1 عند 0x8E و0x8F على التوالي. هذه المجموعة الدنيا المطلوبة من C1 لمعيار ISO 4873 مسجلة باسم ISO-IR-105. [ 70 ]
  • المستوى 3، الذي يسمح بوظائف قفل ناقل الحركة GR LS1R وLS2R وLS3R بالإضافة إلى عمليات النقل الفردية، ولكنه بخلاف ذلك له نفس القيود الموجودة في المستوى 2.

سمحت الإصدارات السابقة من المعيار بتعيينات غير ASCII في مجموعة G0، شريطة الحفاظ على المواضع الثابتة في معيار ISO/IEC 646 ، وتخصيص المواضع الأخرى لأحرف التباعد (وليس التجميع)، وتخصيص 0x23 إما لـ £ أو # ، وتخصيص 0x24 إما لـ $ أو ¤ . [ 141 ] على سبيل المثال، يتوافق ترميز JIS X 0201 ذو 8 بتات مع الإصدارات السابقة. وقد تم تغيير ذلك لاحقًا لتحديد مجموعة ISO/IEC 646:1991 IRV / ISO-IR رقم 6 (ASCII) بشكل كامل. [ 142 ] [ 143 ] [ 144 ]

يُعرف استخدام معيار ISO/IEC 646 IRV (المتزامن مع ASCII منذ عام 1991) في المستوى 1 من معيار ISO/IEC 4873 بدون تعيين C1 أو G1، أي استخدام IRV في بيئة 8 بت لا تُستخدم فيها رموز الإزاحة ويكون البت الأعلى دائمًا صفرًا، باسم ISO 4873 DV ، حيث يرمز DV إلى "الإصدار الافتراضي". [ 145 ]

في حال وجود أحرف مكررة في مجموعات مختلفة، فإن الإصدار الحالي من معيار ISO/IEC 4873 / ECMA-43 لا يسمح إلا باستخدام هذه الأحرف في مجموعة العمل ذات الرقم الأدنى التي تظهر فيها. [ 146 ] على سبيل المثال، إذا ظهر حرف في كل من المجموعة G1 والمجموعة G3، فيجب استخدامه من المجموعة G1. مع ذلك، يُشار إلى أنه كان مسموحًا باستخدامه من مجموعات أخرى في الإصدارات السابقة. [ 144 ]

يُحدد معيار ISO/IEC 8859 ترميزات كاملة في المستوى 1 من معيار ISO/IEC 4873، ولا يسمح باستخدام أجزاء متعددة من معيار ISO/IEC 8859 معًا. وينص على استخدام معيار ISO/IEC 10367 بدلاً من ذلك للمستويين 2 و3 من معيار ISO/IEC 4873. [ 9 ] [ 10 ] يتضمن معيار ISO/IEC 10367:1991 مجموعات G0 وG1 المطابقة لتلك المستخدمة في الأجزاء التسعة الأولى من معيار ISO/IEC 8859 (أي تلك التي كانت موجودة في عام 1991، تاريخ نشره)، وبعض المجموعات التكميلية. [ 147 ]

تُستخدم تسلسلات الهروب الخاصة بتسمية مجموعة الأحرف لتحديد الإصدارات أو التبديل بينها أثناء تبادل المعلومات فقط إذا اقتضى ذلك بروتوكول آخر، وفي هذه الحالة، يتطلب المعيار تسلسل مُعلن ISO/IEC 2022 يُحدد مستوى ISO/IEC 4873، متبوعًا بمجموعة كاملة من رموز الهروب التي تُحدد تسميات مجموعة الأحرف لـ C0 وC1 وG0 وG1 وG2 وG3 على التوالي (مع حذف تسميتي G2 وG3 للمستوى 1)، مع بايت F بقيمة 0x7E للدلالة على مجموعة فارغة. لكل مستوى من مستويات ISO/IEC 4873 تسلسل مُعلن ISO/IEC 2022 خاص به، وهو كما يلي: [ 148 ]

شفرةعرافةإعلان
ESC SP L1B 20 4Cالمستوى 1 من معيار ISO 4873
ESC SP M1B 20 4Dالمستوى الثاني من معيار ISO 4873
ESC SP N1B 20 4Eالمستوى 3 من معيار ISO 4873

شفرة يونكس الموسعة

نظام ترميز الأحرف الموسع (EUC) هو نظام ترميز أحرف متغير العرض ذو 8 بت، يُستخدم بشكل أساسي للغات اليابانية والكورية والصينية المبسطة . وهو مبني على معيار ISO 2022، ولا يمكن أن تتخذ أشكال EUC إلا مجموعات الأحرف التي تتوافق مع بنية ISO 2022. يمكن تمثيل ما يصل إلى أربع مجموعات أحرف مُرمّزة (في G0 وG1 وG2 وG3). يتم استدعاء مجموعة G0 عبر GL، ومجموعة G1 عبر GR، أما مجموعتا G2 وG3 (إن وُجدتا) فتُستدعيان باستخدام الإزاحتين الفرديتين SS2 وSS3، اللتين تُستخدمان كبايتات CR (أي 0x8E و0x8F على التوالي) ويتم استدعاؤهما عبر GR (وليس GL). [ 11 ] لا تُستخدم رموز إزاحة القفل. [ 12 ]

الرمز المخصص لمجموعة G0 هو ASCII، أو مجموعة الأحرف الوطنية ISO 646 الخاصة بالبلد ، مثل KS-Roman (KS X 1003) أو JIS-Roman (النصف السفلي من JIS X 0201 ). [ 11 ] لذا، يُستخدم الرمز 0x5C ( الشرطة المائلة العكسية في US-ASCII) لتمثيل رمز الين في بعض إصدارات EUC-JP، ورمز الوون في بعض إصدارات EUC-KR.

يُستخدم الرمز G1 لمجموعة أحرف مُرمّزة بحجم 94×94، مُمثلة في بايتين. يُعدّ كلٌّ من EUC-CN و EUC-KR مثالين على رموز EUC ثنائية البايت. يتضمن EUC-JP أحرفًا مُمثلة بما يصل إلى ثلاثة بايتات (أي SS3 بالإضافة إلى بايتين)، بينما قد يشغل الحرف الواحد في EUC-TW ما يصل إلى أربعة بايتات (أي SS2 بالإضافة إلى ثلاثة بايتات).

لا يستخدم رمز EUC نفسه تسلسلات المذيع أو التسمية من ISO 2022؛ ومع ذلك، فإنه يتوافق مع التسلسل التالي المكون من أربعة تسلسلات للمذيع، مع تفصيل المعاني على النحو التالي. [ 149 ]

تسلسل فرديالنظام الست عشريميزة من ميزات EUC المشار إليها
ESC SP C1B 20 43ISO-8 (8 بت، G0 في GL، G1 في GR)
ESC SP Z1B 20 5Aتم الوصول إلى G2 باستخدام SS2
ESC SP [1B 20 5Bتم الوصول إلى G3 باستخدام SS3
ESC SP \1B 20 5Cاستدعاءات الإزاحة الفردية على GR

نص مركب (X11)

عرّف اتحاد X ملف تعريف ISO 2022 باسم النص المركب كصيغة تبادل في عام 1989. [ 150 ] يستخدم هذا الملف أربعة رموز تحكم فقط: HT ( وNL (سطر جديد، مُرمّز كـ LF ) ، و ESC ( و CSI (بتمثيله ذي 8 بتات )، [ 151 ] حيث تُستخدم متتالية CSI المسماة SDS ( ) للتحكم ثنائي الاتجاه في النص. [ 152 ] وهو رمز ذو 8 بتات يستخدم G0 وG1 لـ GL وGR، ويتبع معيار ISO-8859-1 في حالته الأولية. [ 153 ] تُستخدم البايتات F التالية:0x090x0A0x1B0x9BCSI … ]

تسلسلات التسمية ISO 2022 المستخدمة في X11 Compound Text [ 154 ]
نوع تسلسل الهروبالبايت الأخيرمجموعة رسومية
GZD4، G1D4 (للمجموعات المكونة من 94 حرفًا)B( 0x42)ASCII
I( 0x49)JIS X 0201 كاتاكانا
J( 0x4A)JIS X 0201 Roman
G1D6 (للمجموعات المكونة من 96 حرفًا)A( 0x41)ISO-8859-1 جزء عالي
B( 0x42)ISO-8859-2 جزء عالي
C( 0x43)ISO-8859-3 جزء عالي
D( 0x44)ISO-8859-4 جزء عالي
F( 0x46)ISO-8859-7 جزء عالي
G( 0x47)ISO-8859-6 جزء عالي
H( 0x48)ISO-8859-8 جزء عالي
L( 0x4C)ISO-8859-5 جزء عالي
M( 0x4D)ISO-8859-9 جزء عالي
GZDM4، G1DM4 (للمجموعات المكونة من 2 بايت)A( 0x41)GB 2312
B( 0x42)JIS X 0208
C( 0x43)KS C 5601

لتحديد الترميزات باستخدام التسميات، يُعرّف X11 Compound Text خمسة تسلسلات DOCS للاستخدام الخاص: ( ) للترميزات ذات الطول المتغير، و من خلال للترميزات ذات الطول الثابت باستخدام بايت واحد إلى أربعة بايتات على التوالي. بدلاً من استخدام تسلسل هروب آخر للعودة إلى ISO 2022 ، يُحدد البايتان التاليان لتسلسل الهروب الأولي الطول المتبقي بالبايتات، مُرمّزًا بالأساس 128 باستخدام بايتات . يتم تضمين تسمية الترميز في ISO 8859-1 قبل النص المُرمّز، وتنتهي بـ STX ( ). [ 109 ]ESC % / 01B 25 2F 30ESC % / 1ESC % / 40x80–FF0x02

مقارنة مع التشفيرات الأخرى

المزايا

  • بما أن معيار ISO/IEC 2022 يدعم جميع ترميزات الأحرف الرسومية عبر GL، فإن الرموز الرسومية المتاحة لا تتأثر بشكل كبير بعدم القدرة على تمثيل GR وC1، كما هو الحال في الأنظمة التي تقتصر على ترميزات 7 بت. وبالتالي، يُمكّن هذا من تمثيل مجموعة كبيرة من الأحرف في مثل هذه الأنظمة. عمومًا، لا تُعدّ هذه الميزة، المتمثلة في التوافق مع 7 بت، ميزة حقيقية، باستثناء التوافق مع الأنظمة القديمة. إذ تستخدم الغالبية العظمى من الحواسيب الحديثة 8 بت لكل بايت.
  • بالمقارنة مع يونيكود، يتجنب معيار ISO/IEC 2022 توحيد الأحرف الصينية (هان) باستخدام رموز تسلسلية للتبديل بين ترميزات منفصلة للغات شرق آسيا المختلفة. وهذا يتجنب المشكلات المرتبطة بالتوحيد، مثل صعوبة دعم لغات الصين واليابان وكوريا المتعددة مع متغيرات الأحرف الخاصة بها في مستند واحد وخط واحد.

العيوب

  • بما أن معيار ISO/IEC 2022 يعتمد على ترميز الحالة، فلا يمكن للبرنامج الانتقال إلى منتصف كتلة نصية للبحث عن أحرف أو إدراجها أو حذفها. وهذا يجعل معالجة النص عملية معقدة وبطيئة للغاية مقارنةً بترميزات الحالة. وقد يتطلب أي انتقال إلى منتصف النص الرجوع إلى تسلسل الهروب السابق قبل تفسير البايتات التي تليه.
  • نظراً لطبيعة معيار ISO/IEC 2022 التي تعتمد على الحالة، يمكن ترميز حرف متطابق ومتكافئ في مجموعات أحرف مختلفة، والتي يمكن تعيينها لأي من المجموعات G0 إلى G3، والتي يمكن استدعاؤها باستخدام عمليات إزاحة فردية أو باستخدام عمليات إزاحة قفل إلى GL أو GR. ونتيجة لذلك، يمكن تمثيل الأحرف بطرق متعددة، مما يعني أنه لا يمكن مقارنة سلسلتين متطابقتين ومتكافئتين بصرياً بشكل موثوق لتحديد التساوي.
  • تستخدم بعض الأنظمة، مثل DICOM والعديد من برامج البريد الإلكتروني، صيغةً معدلةً من معيار ISO-2022 (مثل "ISO 2022 IR 100" [ 155 ] )، بالإضافة إلى دعمها لعدة ترميزات أخرى. [ 156 ] هذا النوع من التباين يجعل نقل النصوص بين أنظمة الحاسوب أمرًا صعبًا.
  • UTF-1 ، وهو تنسيق تحويل Unicode متعدد البايت المتوافق مع تمثيل ISO/IEC 2022 لأحرف التحكم ذات 8 بت، له عيوب مختلفة مقارنة بـ UTF-8 ، وعادة ما يكون التبديل من أو إلى مجموعات الأحرف الأخرى، كما هو مدعوم من ISO/IEC 2022، غير ضروري في مستندات Unicode.
  • بسبب تسلسلات الهروب الخاصة بها، يُمكن إنشاء تسلسلات بايت هجومية تُخفي سلسلة نصية خبيثة (مثل البرمجة النصية عبر المواقع ) حتى يتم فك تشفيرها إلى يونيكود، مما قد يسمح لها بتجاوز عمليات التنظيف. [ 157 ] ولذلك، تُعامل برامج مكافحة البرمجيات الخبيثة استخدام هذا الترميز على أنه مشبوه، [ 158 ] ويتم تعيين بيانات ISO 2022 ذات 7 بت (باستثناء ISO-2022-JP) بالكامل إلى حرف الاستبدال في HTML5 لمنع الهجمات. [ 113 ] [ 114 ] أما إصدارات رمز ISO 2022 المقيدة ذات 8 بت، والتي لا تستخدم تسلسلات الهروب الخاصة بالتسمية أو رموز إزاحة القفل، مثل Extended Unix Code ، فلا تُعاني من هذه المشكلة.
  • قد تُسبب عملية دمج النصوص مشاكل. تُحدد ملفات تعريف مثل ISO-2022-JP أن يبدأ التدفق في حالة ASCII وينتهي بها. [ 115 ] هذا ضروري لضمان تفسير الأحرف في تدفقات ISO-2022-JP و/أو ASCII المدمجة ضمن المجموعة الصحيحة. ويترتب على ذلك أنه إذا تم دمج تدفق ينتهي بحرف متعدد البايتات مع تدفق يبدأ بحرف متعدد البايتات، فسيتم إنشاء زوج من رموز الهروب، أحدهما ينتقل إلى ASCII والآخر يخرج منه فورًا. مع ذلك، وكما هو منصوص عليه في التقرير الفني رقم 36 من Unicode ("اعتبارات أمان Unicode")، يجب أن تُولّد أزواج تسلسلات الهروب ISO 2022 التي لا تفصل بينها أحرف حرفًا بديلًا ( "�" ) لمنع استخدامها لإخفاء تسلسلات ضارة مثل تسلسلات البرمجة النصية عبر المواقع (XSS ). [ 159 ] أدى تطبيق هذا الإجراء، على سبيل المثال في موزيلا ثندربيرد ، إلى مشاكل في التوافق، حيث تم إنشاء أحرف "�" غير متوقعة عند دمج دفقين من نوع ISO-2022-JP. [ 157 ]

انظر أيضاً

الحواشي

  1. اليابانية :区点، بالحروف اللاتينية :  kuten ؛ الصينية المبسطة :区位؛ الصينية التقليدية :區位; بينيين : qūwèi ; الكورية : 행렬 ; هانجا :行列; RR : هاينغ نيول   
  2. الصينية التقليدية :; الصينية المبسطة :; بينيين : ; النطق الياباني : كو ; مضاءة. 'منطقة'؛ الكورية : ; هانجا :; ر : هاينغ   
  3. اليابانية :، بالحروف اللاتينية :  عشرة ، مضاءة. ' نقطة ' ؛ الصينية :; بينيين : وي ; مضاءة. ' موضع ' ؛ الكورية : ; هانجا :; ر : يول   
  4. اليابانية :، بالحروف اللاتينية :  men ، وتعني حرفيًا " وجه "
  5. 1 2 مُحددة للبايتات F 0x40 (@) و0x41 (A) و0x42 (B) فقط، لأسباب تاريخية. [ 90 ] تستخدم بعض التطبيقات، مثل ترميز رموز الإيموجي SoftBank 2G، رموز هروب إضافية من هذا الشكل لأغراض لا تتوافق مع معيار ISO-2022. [ 97 ]
  6. مُدرج بواسطة MARC-8 . [ 3 ] انظر الحاشيةأدناه للاطلاع على الخلفية.ESC , F
  7. يشير الرمز ↑ F ، المعدل ضمن النطاق 1-63، إلى أي مراجعة (متوافقة مع الإصدارات الأحدث) من التسجيل التالي مباشرة مطلوبة، حتى تعرف الأنظمة القديمة أنها قديمة. [ 98 ]
  8. في الإصدارات السابقة، لم تكن مجموعات الأحرف المكونة من 96 حرفًا موجودة، وكانت رموز الهروب المستخدمة حاليًا لهذه المجموعات محجوزة كمساحة لمجموعات إضافية مكونة من 94 حرفًا. وبناءً على ذلك،ESC 0x1B 0x2Cتم تعريف التسلسل في الإصدارات الأولى من المعيار على أنه يُخصص مجموعات إضافية مكونة من 94 حرفًا للوحدة G0. [ 99 ] ولأن مجموعات الأحرف المكونة من 96 حرفًا لا يمكن تخصيصها للوحدة G0، فإن البايت الأول I هذا غير مستخدم في الإصدار الحالي من المعيار. ومع ذلك، لا يزال مدرجًا في MARC-8 . [ 3 ]
  9. انظر أيضًا، على سبيل المثال، Printronix (2012)، دليل مبرمج OKI® المرجعي (ملف PDF) ، صفحة  26، مؤرشف من النسخة الأصلية (ملف PDF) بتاريخ 25-09-2019 ، تم استرجاعه بتاريخ 25-09-2019بالنسبة لنظام أحدث يستخدم ESC ( Hللتحويل إلى ASCII من DBCS.

مراجع

  1. ECMA-35 (1994) ، تاريخ موجز
  2. ECMA-35 (1994) ، ص 51، الملحق د 
  3. 1 2 3 4 5 "التقنية 2: استخدام مجموعات الأحرف الرسومية البديلة القياسية" . مواصفات MARC 21 لبنية السجلات ومجموعات الأحرف ووسائط التبادل . مكتبة الكونغرس . 2007-12-05. مؤرشف من الأصل في 2020-07-22 . تم الاسترجاع في 2020-07-19 .
  4. "ECMA-35: بنية رموز الأحرف وتقنيات التوسيع (صفحة ويب)" . إيكما الدولية . مؤرشف من الأصل بتاريخ 25 أبريل 2022. تم الاطلاع عليه بتاريخ 27 أبريل 2022 .
  5. 1 2 3 4 ECMA-35 (1994) ، الصفحات 15-16، الفصل 8.1 
  6. 1 2 ECMA-35 (1994) ، الفصل 13
  7. 1 2 ECMA-35 (1994) ، الفصلان 12 و14
  8. 1 2 ECMA-35 (1994) ، الفصل 11
  9. 1 2 3 4 5 ISO/IEC FDIS 8859-10 (1998) ، ص 1، الفصل 1 ("النطاق") 
  10. 1 2 3 4 5 ECMA-144 (2000) ، ص 1، الفصل 1 ("النطاق") 
  11. 1 2 3 4 5 6 Lunde (2008) ، الصفحات من 242 إلى 245، الفصل 4 ("طرق التشفير")، القسم "ترميز EUC" 
  12. 1 2 3 4 Lunde (2008) ، ص 253-255 ، الفصل 4 ("طرق التشفير") ، القسم "تشفير EUC مقابل ISO-2022" . 
  13. 1 2 ISO-IR-196 (1996)
  14. 1 2 3 موي، إدوارد؛ جيلديا، ستيفن؛ ديكي، توماس. "عناصر التحكم التي تبدأ بـ ESC" . تسلسلات التحكم في XTerm . مؤرشف من الأصل بتاريخ 10-10-2019 . تم الاسترجاع بتاريخ 04-10-2019 .
  15. ECMA-35 (1994) ، الفصلان 6 و7
  16. ECMA-35 (1994) ، الفصل 8
  17. ECMA-35 (1994) ، الفصل 9
  18. 1 2 ECMA-35 (1994) ، الفصل 15
  19. لوندي (2008) ، الصفحات 228-234، الفصل 4 ("طرق التشفير")، القسم "تشفير ISO-2022" 
  20. لوندي (2008) ، الصفحات 19-20، الفصل 1 ("نظرة عامة على معالجة المعلومات CJKV")، القسم "ما هي خلايا الصف وخلايا الصف المستوية؟" 
  21. ECMA-35 (1994) ، ص 4، التعريف 4.11 
  22. ECMA-35 (1994) ، ص 5، التعريف 4.18 
  23. ISO/IEC JTC1/SC2/WG2 (2025). "الملحق ك (معلوماتي): رموز تمثيل قيم الثمانيات". تكنولوجيا المعلومات - مجموعة الأحرف المشفرة العالمية (UCS) (مسودة اللجنة). ص 3463. ISO/IEC CD.3 10646:2025، JTC1/SC2 /WG2 N5347. بالتالي، يمكن تحويل رمز قيمة الثمانيات في معيار ISO/IEC 2022 (وغيره من معايير ترميز الأحرف) إلى رمز قيمة الثمانيات المستخدم في هذه الوثيقة عن طريق تحويل قيمة x و y إلى النظام الست عشري. على سبيل المثال؛ 04/15 يكافئ 4F. {{citation}}: صيانة CS1: الأسماء الرقمية: قائمة المؤلفين ( رابط )
  24. انظر، على سبيل المثال، ISO-IR-14 (1975) ، الذي يحدد تسمية G0 لمجموعة JIS X 0201 الرومانية على النحو التاليESC 2/8 4/10.
  25. ECMA-35 (1994) ، ص 5، الفصل 5.1 
  26. انظر، على سبيل المثال، RFC 1468 (1993) ، الذي يحدد تسمية G0 لمجموعة JIS X 0201 الرومانية على النحو التاليESC ( J.
  27. ECMA-35 (1994) ، ص 7، الفصل 6.2 
  28. ECMA-35 (1994) ، ص 10، الفصل 6.3.2 
  29. ECMA-35 (1994) ، ص 4، التعريف 4.17 
  30. ECMA-35 (1994) ، ص 4، التعريف 4.14 
  31. ECMA-35 (1994) ، ص 28، الفصل 13.1 
  32. 1 2 3 ECMA-35 (1994) ، ص 33، الفصل 13.3.3 
  33. ECMA-48 (1991) ، الصفحات 24-26، الفصل 5.4 
  34. 1 2 3 4 ECMA-35 (1994) ، ص 11، الفصل 6.4.3 
  35. ISO-IR-208 (1999)
  36. ISO-IR-155 (1990)
  37. ISO-IR-164 (1992)
  38. 1 2 ECMA-35 (1994) ، ص 10، الفصل 6.3.3 
  39. جوجل (2014). "ansi.go، السطر 134" . مكتبة تسلسل الهروب ANSI للغة Go . مؤرشف من الأصل بتاريخ 30 أبريل 2022. تم الاطلاع عليه بتاريخ 14 سبتمبر 2019 .
  40. ECMA-43 (1991) ، ص 5، الفصل 7 ("تحديد أحرف رمز 8 بت") 
  41. ISO/IEC FDIS 8859-10 (1998) ، ص 3، الفصل 6 ("مواصفات مجموعة الأحرف المشفرة") 
  42. ECMA-144 (2000) ، ص 3، الفصل 6 ("تحديد مجموعة الأحرف المشفرة") 
  43. ECMA-43 (1991) ، ص 19، الملحق ج ("الأحرف الرسومية المركبة") 
  44. 1 2 ECMA-35 (1994) ، ص 10، الفصل 6.4.1 
  45. 1 2 ECMA-35 (1994) ، ص 11، الفصل 6.4.4 
  46. 1 2 3 ECMA-35 (1994) ، ص 11، الفصل 6.4.2 
  47. ISO-IR-104 (1985)
  48. ISO-IR-1 (1975)
  49. 1 2 ECMA-35 (1994) ، ص 19، الفصل 8.5.1 
  50. 1 2 ECMA-35 (1994) ، ص 19، الفصل 8.5.2 
  51. ECMA-43 (1991) ، ص 8، الفصل 7.6 ("مجموعة C1") 
  52. 1 2 ECMA-35 (1994) ، ص 29، الفصل 13.2.1 
  53. 1 2 ECMA-35 (1994) ، ص 12، الفصل 6.5.1 
  54. ECMA-35 (1994) ، ص 12، الفصل 6.5.2 
  55. 1 2 3 ISO-IR ، صفحة 19، الفصل 2.7 ("وظائف التحكم الفردية") 
  56. ECMA-35 (1994) ، ص 12، الفصل 6.5.4 
  57. ECMA-48 (1991) ، الفصل 5.5
  58. ISO/TC 97/SC 2 (30-12-1976). إعادة الضبط إلى الحالة الأولية (RIS) (ملف PDF) . ITSCJ/ IPSJ . ISO-IR -35.{{citation}}: صيانة CS1: الأسماء الرقمية: قائمة المؤلفين ( رابط )
  59. ECMA-35 (1994) ، ص 12، الفصل 6.5.3 
  60. 1 2 ECMA-35 (1994) ، ص 14، الفصل 7.3، الجدول 2 
  61. ISO-IR-14 (1975)
  62. 1 2 الاتحاد الدولي للاتصالات - تقييس الاتصالات (11 أغسطس 1995). التوصية T.51 (1992) التعديل 1. مؤرشف من الأصل بتاريخ 2 أغسطس 2020. تم الاطلاع عليه بتاريخ 25 ديسمبر 2019 .
  63. ISO-IR-106 (1985)
  64. ECMA-35 (1994) ، ص 15، الفصل 7.3، الحاشية 23 
  65. ISO-IR-140 (1987)
  66. ISO-IR-7 (1975)
  67. ISO-IR-26 (1976)
  68. ISO-IR-36 (1977)
  69. ECMA-35 (1980) ، ص 8، الفصل 5.1.7 
  70. 1 2 ISO-IR-105 (1985)
  71. 1 2 3 4 ECMA-35 (1994) ، ص 17، الفصل 8.3.1 
  72. 1 2 3 4 ECMA-35 (1994) ، ص 23، الفصل 9.3.1 
  73. 1 2 3 ECMA-35 (1994) ، ص 19، الفصل 8.4 
  74. 1 2 3 ECMA-35 (1994) ، ص 17، الفصل 8.3.2 
  75. ECMA-35 (1994) ، الصفحات 23-24، الفصل 9.4 
  76. ECMA-35 (1994) ، ص 27، الفصل 11.1 
  77. ECMA-35 (1994) ، ص 17، الفصل 8.3.3 
  78. ECMA-35 (1994) ، ص 47، الملحق ب 
  79. ISO-IR ، صفحة 2، الفصل 1 ("مقدمة") 
  80. ISO/IEC 2375 (2003)
  81. 1 2 "معالجة إعلان SGML في SP" . SP: نظام SGML متوافق مع المعيار الدولي ISO 8879 .
  82. "20: إعلان SGML لـ HTML 4" . مواصفات HTML 4.01 . W3C .
  83. ISO-IR ، صفحة 10، الفصل 2.2 ("مجموعة أحرف رسومية مكونة من 94 حرفًا مع بايت وسيط ثانٍ") 
  84. ARIB STD-B24 (2008) ، ص 39، الجزء 2، الجدول 7-3 
  85. ماشيك، سفين؛ لو بريتون، ستيفان؛ هاميلتون، ريتشارد ل. "حول 'مجموعة أحرف الرسم الخطي البديلة'"" . ~sven_mascheck/ . مؤرشف من الأصل بتاريخ 29-12-2019 . تم الاطلاع عليه بتاريخ 08-01-2020 .
  86. ECMA-35 (1994) ، ص 36، الفصل 14.4 
  87. ECMA-35 (1994) ، ص 36، الفصل 14.4.2، الحاشية 48 
  88. ECMA-35 (1994) ، ص 36، الفصل 14.4.2، الحاشية 47 
  89. ETS 300 706 (1997) ، ص 103، الفصل 14 ("الشخصيات القابلة لإعادة التعريف ديناميكيًا") 
  90. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ECMA-35 (1994) ، الصفحات 35-36، الفصل 14.3.2 
  91. ISO/IEC 10646 (2017) ، الصفحات 19-20، الفصل 12.4 ("تحديد مجموعة وظائف التحكم") 
  92. ECMA-35 (1994) ، ص 32، الجدول 5 
  93. 1 2 3 ECMA-35 (1994) ، الصفحات 37-41، الفصل 15.2 
  94. ECMA-35 (1994) ، ص 34، الفصل 14.2.2 
  95. ECMA-35 (1994) ، ص 34، الفصل 14.2.3 
  96. رقمي . "DECDWL - خط مزدوج العرض، أحادي الارتفاع" . معلومات مبرمج محطة الفيديو VT510 . مؤرشف من الأصل بتاريخ 2020-08-02 . تم الاسترجاع بتاريخ 2020-01-17 .
  97. كاواساكي، يوسوكي (2010). "Encode::JP::Emoji::Encoding" . Encode-JP-Emoji . السطر 268. مؤرشف من الأصل بتاريخ 30 أبريل 2022. تم الاطلاع عليه بتاريخ 28 مايو 2020 .
  98. ECMA-35 (1994) ، الصفحات 36-37، الفصل 14.5
  99. ECMA-35 (1980) ، الصفحات 14-15، الفصل 5.3.7
  100. 1 2 3 4 ISO-IR ، صفحة 20، الفصل 2.8.1 ("أنظمة الترميز ذات الإرجاع القياسي") 
  101. 1 2 3 4 ECMA-35 (1994) ، الصفحات 41-42، الفصل 15.4 
  102. 1 2 3 4 5 ISO-IR ، صفحة 21، الفصل 2.8.2 ("أنظمة الترميز بدون إرجاع قياسي") 
  103. ECMA-35 (1994) ، ص 41، الفصل 15.3 
  104. 1 2 3 ISO/IEC 10646 (2017) ، ص 19، الفصل 12.2 ("تحديد مخطط ترميز UCS") 
  105. ISO/IEC 10646 (2017) ، الصفحات 18-19، الفصل 12.1 ("الغرض من التعريف وسياقه") 
  106. ISO-IR-192 (1996)
  107. ISO-IR-195 (1996)
  108. ISO/IEC 10646 (2017) ، ص 20، الفصل 12.5 ("تحديد نظام الترميز الخاص بـ ISO/IEC 2022") 
  109. 1 2 شيفلر (1989) § ترميزات مجموعة الأحرف غير القياسية
  110. لوندي (2008) ، الصفحات 229-230، الفصل 4 ("طرق التشفير")، القسم "تشفير ISO-2022" "تم تسليط الضوء على تلك التشفيرات التي تم استخدامها على نطاق واسع في الماضي، أو لا تزال تستخدم اليوم لبعض الأغراض". 
  111. 1 2 "معلومات إضافية مطلوبة متعلقة بالترميز" . عولمة IBM - معرّفات مجموعة الأحرف المشفرة . IBM . مؤرشف من الأصل بتاريخ 2015-01-07.
  112. 1 2 3 معيار ترميز WHATWG ، القسم 2 ("الخلفية الأمنية")
  113. 1 2 3 معيار ترميز WHATWG ، الفصل 4.2 ("الأسماء والتسميات")، استبدال المرساة
  114. 1 2 3 4 معيار ترميز WHATWG ، القسم 14.1 ("الاستبدال")
  115. 1 2 3 4 5 6 RFC 1468 (1993)
  116. 1 2 3 "معرفات صفحة الترميز" . مركز مطوري ويندوز . مايكروسوفت. مؤرشف من الأصل بتاريخ 16-06-2019 . تم الاطلاع عليه بتاريخ 16-09-2019 .
  117. 1 2 معيار ترميز WHATWG ، القسم 12.2 ("ISO-2022-JP")
  118. تشانغ، هاي-شيك. "Modules/cjkcodecs/_codecs_iso2022.c، السطر 1122" . شجرة مصدر cPython . مؤسسة برمجيات بايثون. مؤرشف من الأصل بتاريخ 30 أبريل 2022. تم الاطلاع عليه بتاريخ 15 سبتمبر 2019 .
  119. "برامج الترميز - سجل برامج الترميز والفئات الأساسية § الترميزات القياسية" . وثائق بايثون 3.7.4 . مؤسسة برمجيات بايثون. مؤرشف من الأصل بتاريخ 28 يوليو 2019. تم الاطلاع عليه بتاريخ 16 سبتمبر 2019 .
  120. "2: مجموعات الرموز وتحويل مجموعات الرموز" . المرجع التقني لنظام يونكس الرقمي لاستخدام الميزات اليابانية . شركة المعدات الرقمية ، كومباك .
  121. 1 2 لوندي (2008) ، الصفحات 236-238، الفصل 4 ("طرق التشفير")، القسم "سلف تشفير ISO-2022-JP - تشفير JIS" 
  122. RFC 1554 (1993)
  123. RFC 2237 (1997)
  124. "PQ02042: وظيفة جديدة لتوفير دعم C/370 iconv() لمعيار ISO-2022-JP الياباني" . IBM . 19 يناير 2021. مؤرشف من الأصل في 4 يناير 2022. تم الاطلاع عليه في 4 يناير 2022 .
  125. 1 2 "CCSID 9148" . IBM Globalization - معرّفات مجموعات الأحرف المشفرة . IBM . مؤرشف من الأصل بتاريخ 29-11-2014.
  126. "CCSID 956" . عولمة IBM - معرّفات مجموعات الأحرف المشفرة . IBM . مؤرشف من الأصل بتاريخ 2014-12-02.
  127. "CCSID 957" . عولمة IBM - معرّفات مجموعات الأحرف المشفرة . IBM . مؤرشف من الأصل بتاريخ 30-11-2014.
  128. "CCSID 958" . IBM Globalization - معرّفات مجموعات الأحرف المشفرة . IBM . مؤرشف من الأصل بتاريخ 2014-12-01.
  129. "CCSID 959" . عولمة IBM - معرّفات مجموعات الأحرف المشفرة . IBM . مؤرشف من الأصل بتاريخ 2014-12-02.
  130. "CCSID 5052" . IBM Globalization - معرّفات مجموعات الأحرف المشفرة . IBM . مؤرشف من الأصل بتاريخ 29-11-2014.
  131. "CCSID 5053" . IBM Globalization - معرّفات مجموعات الأحرف المشفرة . IBM . مؤرشف من الأصل بتاريخ 29-11-2014.
  132. "CCSID 5054" . IBM Globalization - معرّفات مجموعات الأحرف المشفرة . IBM . مؤرشف من الأصل بتاريخ 29-11-2014.
  133. "CCSID 5055" . IBM Globalization - معرّفات مجموعات الأحرف المشفرة . IBM . مؤرشف من الأصل بتاريخ 29-11-2014.
  134. 1 2 RFC 1557 (1993)
  135. "KS X 1001:1992" (ملف PDF) . مؤرشف (ملف PDF) من الأصل بتاريخ 26-09-2007 . تم الاطلاع عليه بتاريخ 12-07-2007 .
  136. ISO-IR-149 (1988)
  137. 1 2 3 4 RFC 1922 (1996)
  138. "CVE-2024-2961" .
  139. "ثغرة GLIBC على الخوادم التي تقدم PHP" .
  140. ECMA-43 (1991) ، الصفحات 9-10، الفصل 8 ("المستويات") 
  141. ECMA-43 (1985) ، الصفحات 7-11، الفصل 7.3 ("مجموعة G0") 
  142. ECMA-43 (1991) ، الصفحات 6-8، الفصل 7.4 ("مجموعة G0") 
  143. ECMA-43 (1991) ، ص 11، الفصل 10.3 ("تحديد الإصدار") 
  144. 1 2 ECMA-43 (1991) ، ص 23، الملحق هـ ("الاختلافات الرئيسية بين الطبعة الثانية (1985) والطبعة الحالية (الثالثة) من معيار ECMA هذا") 
  145. IPTC (1995). تنسيق الرسائل الموصى به من قبل IPTC (ملف PDF) (الطبعة الخامسة ). IPTC TEC 7901. مؤرشف (ملف PDF) من الأصل بتاريخ 25 يناير 2022. تم الاطلاع عليه بتاريخ 14 يناير 2020 . 
  146. ECMA-43 (1991) ، ص 10، الفصل 9.2 ("الترميز الفريد للأحرف") 
  147. فان وينجن، يوهان دبليو (1999). "8. امتداد الترميز، ISO 2022 و2375، ISO 4873 و10367" . مجموعات الأحرف. الحروف والرموز والرموز . تيرينا. مؤرشف من الأصل في 1 أغسطس 2020. تم الاسترجاع في 2 أكتوبر 2019 .
  148. ECMA-43 (1991) ، الصفحات 10-11، الفصل 10 ("تحديد الإصدار والمستوى") 
  149. آي بي إم . "بنية تمثيل بيانات الأحرف (CDRA)" . آي بي إم . الصفحات 157-162 . مؤرشف من الأصل بتاريخ 23-06-2019 . تم الاطلاع عليه بتاريخ 18-06-2020 . 
  150. شيفلر (1989)
  151. ^ شيفلر (1989) ، § شخصيات التحكم
  152. ^ شيفلر (1989) ، § الاتجاهية
  153. ^ شيفلر (1989) ، § ترميزات مجموعة الأحرف القياسية
  154. ^ شيفلر (1989) ، § الترميزات القياسية المعتمدة
  155. "DICOM PS3.2 2016d - التوافق؛ D.6.2 مجموعات الأحرف؛ D.6 دعم مجموعات الأحرف" . مؤرشف من الأصل بتاريخ 16 فبراير 2020. تم الاطلاع عليه بتاريخ 21 مايو 2020 .
  156. "تعديل DICOM ISO 2022" . مؤرشف من الأصل بتاريخ 30 أبريل 2013. تم الاطلاع عليه بتاريخ 25 يوليو 2009 .
  157. 1 2 سيفونين، هنري (17-12-2018). "(مسودة غير مُقدَّمة) لا توليد U+FFFD لمحتوى ASCII-State ذي الطول الصفري بين تسلسلات الهروب ISO-2022-JP" (ملف PDF) . مؤرشف (PDF) من الأصل بتاريخ 21-02-2019 . تم الاسترجاع بتاريخ 21-02-2019 .
  158. "935453 - جمع بيانات القياس عن بُعد حول HZ وغيرها من التشفيرات التي قد نحاول إزالتها" . مؤرشف من الأصل بتاريخ 19-05-2017 . تم الاطلاع عليه بتاريخ 18-06-2018 .
  159. ديفيس، مارك؛ سويجنارد، ميشيل (19 سبتمبر 2014). "3.6.2 بعض المخرجات لجميع المدخلات" . التقرير الفني رقم 36 من يونيكود: اعتبارات أمان يونيكود (مراجعة 15) . اتحاد يونيكود. مؤرشف من الأصل في 22 فبراير 2019. تم الاطلاع عليه في 21 فبراير 2019 .

المعايير ومؤشرات التسجيل المذكورة

مجموعات الرموز المسجلة المذكورة

تم الاستشهاد بطلبات التعليق عبر الإنترنت

الأعمال المنشورة الأخرى المذكورة

للمزيد من القراءة

  • ISO/IEC 2022:1994
  • ISO/IEC 2022:1994/Cor 1:1999
  • ECMA-35 ، وهو مكافئ لـ ISO/IEC 2022 ويمكن تنزيله مجانًا.
  • السجل الدولي لمجموعات الأحرف المشفرة المستخدمة مع تسلسلات الهروب ، وهو قائمة كاملة بمجموعات الأحرف المخصصة وتسلسلات الهروب الخاصة بها.
  • تاريخ رموز الأحرف في أمريكا الشمالية وأوروبا وشرق آسيا منذ عام 1999، تم تنقيحه عام 2004
  • ملف CJK.INF الخاص بـ Ken Lunde مؤرشف بتاريخ 2021-05-15 في Wayback Machine : وثيقة حول ترميز اللغات الصينية واليابانية والكورية (CJK)، بما في ذلك مناقشة المتغيرات المختلفة لـ ISO/IEC 2022.