كود يونكس الممتد

Extended Unix Code ( EUC ) هو نظام ترميز أحرف متعدد البايتات يستخدم في المقام الأول للغة اليابانية والكورية والصينية المبسطة (الأحرف) .

أكثر رموز EUC استخدامًا هي ترميزات ذات طول متغير حيث يأخذ الحرف الذي ينتمي إلى مجموعة أحرف مشفرة متوافقة مع ISO/IEC 646 (مثل ASCII ) بايتًا واحدًا، والحرف الذي ينتمي إلى مجموعة أحرف مشفرة 94×94 (مثل GB 2312 ) يتم تمثيله في بايتين. نموذج EUC-CN من GB 2312 و EUC-KR هما مثالان على رموز EUC ذات البايتين. يتضمن EUC-JP أحرفًا يتم تمثيلها بما يصل إلى ثلاثة بايتات، بما في ذلك رمز التحويل الأولي ، بينما يمكن أن يستغرق حرف واحد في EUC-TW ما يصل إلى أربعة بايتات.

من المرجح أن تستخدم التطبيقات الحديثة UTF-8 ، الذي يدعم جميع رموز رموز EUC، وأكثر من ذلك، وهو أكثر قابلية للنقل بشكل عام مع انحرافات وأخطاء أقل من البائعين. ومع ذلك، لا يزال EUC شائعًا للغاية، وخاصة EUC-KR لكوريا الجنوبية.

هيكل الترميز

العلاقة بين EUC المعبأة وملفات تعريف ISO 2022 الأخرى ذات 8 بت

يعتمد هيكل EUC على معيار ISO/IEC 2022 ، الذي يحدد نظامًا لمجموعات الأحرف الرسومية التي يمكن تمثيلها بتسلسل من 94 بايتًا مكونًا من 7 بتات 0x 21–7E، أو بدلاً من ذلك 0xA1–FE إذا كان البت الثامن متاحًا. يسمح هذا بمجموعات من 94 حرفًا رسوميًا، أو 8836 (94 2 ) حرفًا، أو 830584 (94 3 ) حرفًا. على الرغم من أن 0x20 و0x7F في البداية كانا دائمًا حرف المسافة والحذف وكان 0xA0 و0xFF غير مستخدمين، إلا أن الإصدارات اللاحقة من ISO/IEC 2022 سمحت باستخدام البايتات 0xA0 و0xFF (أو 0x20 و0x7F) داخل مجموعات في ظل ظروف معينة، مما يسمح بإدراج مجموعات مكونة من 96 حرفًا. يتم استخدام النطاقات 0x00–1F و0x80–9F لرموز التحكم C0 وC1 .

EUC هي عائلة من ملفات تعريف 8 بت من ISO/IEC 2022 ، على عكس ملفات التعريف 7 بت مثل ISO-2022-JP . وعلى هذا النحو، يمكن فقط لمجموعات الأحرف المتوافقة مع ISO 2022 أن تحتوي على نماذج EUC. ويمكن تمثيل ما يصل إلى أربع مجموعات أحرف مشفرة (يشار إليها باسم G0 وG1 وG2 وG3 أو كمجموعات رموز 0 و1 و2 و3) باستخدام مخطط EUC. يتم تعيين مجموعة G0 على مجموعة أحرف مشفرة متوافقة مع ISO/IEC 646 مثل ASCII أو ISO 646:KR ( KS X 1003 ) أو ISO 646:JP (النصف السفلي من JIS X 0201 ) ويتم استدعاؤها عبر GL (أي 0x21–0x7E، مع مسح البت الأكثر أهمية). [1] إذا تم استخدام ASCII، فإن هذا يجعل الكود ترميز ASCII ممتدًا ؛ الانحراف الأكثر شيوعًا عن ASCII هو أن 0x5C ( الشرطة المائلة للخلف في ASCII) تُستخدم غالبًا لتمثيل علامة الين في EUC-JP (انظر أدناه) وعلامة الوون في EUC-KR.

يتم استدعاء مجموعات الرموز الأخرى عبر GR (أي مع مجموعة البت الأكثر أهمية). وبالتالي، للحصول على شكل EUC لحرف ما، يتم تعيين البت الأكثر أهمية لكل بايت ترميز (ما يعادل إضافة 128 إلى كل بايت ترميز مكون من 7 بتات، أو إضافة 160 إلى كل رقم في كود kuten )؛ وهذا يسمح للبرنامج بالتمييز بسهولة بين ما إذا كان بايت معين في سلسلة أحرف ينتمي إلى كود ISO 646 أو الكود الموسع. يتم وضع بادئة للأحرف في مجموعات الرموز 2 و3 برموز التحكم SS2 (0x8E) و SS3 (0x8F) على التوالي، ويتم استدعاؤها عبر GR. بالإضافة إلى كود التحويل الأولي، فإن أي بايت خارج النطاق 0xA0–0xFF يظهر في حرف من مجموعات الرموز من 1 إلى 3 ليس كود EUC صالحًا. [1]

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

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

تنسيق الطول الثابت

تخطيط تنسيق الطول الثابت للغة اليابانية

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

  • تم تعيين الكود على أنه 0 بايتين في النطاق 0x21–0x7E (باستثناء أن الأول قد يكون 0x00).
  • يتم تعيين الكود 1 على شكل بايتين في النطاق 0xA0–0xFF (باستثناء أن الأول قد يكون 0x80).
  • مجموعة التعليمات البرمجية 2 عبارة عن بايت في النطاق 0x21–0x7E (أو 0x00) متبوعًا ببايت في النطاق 0xA0–0xFF.
  • مجموعة التعليمات البرمجية 3 عبارة عن بايت في النطاق 0xA0–0xFF (أو 0x80) متبوعًا ببايت في النطاق 0x21–0x7E.

تُستخدم البايتات الأولية 0x00 و0x80 في الحالات التي تستخدم فيها مجموعة التعليمات البرمجية بايتًا واحدًا فقط. يوجد أيضًا تنسيق ثابت الطول مكون من أربعة بايتات. [2] تُعد تنسيقات الترميز ذات الطول الثابت هذه مناسبة للمعالجة الداخلية ولا يتم مواجهتها عادةً في التبادل.

تم تسجيل EUC-JP لدى IANA في كلا التنسيقين، التنسيق المضغوط باسم "EUC-JP" أو "csEUCPkdFmtJapanese" والتنسيق ذو العرض الثابت باسم "csEUCFixWidJapanese". [3] يتم تضمين التنسيق المضغوط فقط في معيار ترميز WHATWG المستخدم بواسطة HTML5 . [4]

الاتحاد الأوروبي-CN

الاتحاد الأوروبي-CN
الميم / اياناجي بي 2312
الاسم المستعارcsGB2312، CN-GB [5]
اللغة(اللغات)الصينية المبسطة ، الإنجليزية ، الروسية
معيارجي بي 2312 (1980)
تصنيفترميز ASCII الممتد ، ترميز بطول متغير ، ترميز CJK ، EUC
يمتدأسكي
الإضافات748، GBK ، GB 18030 ، x-mac-chinesesimp
تحويلات / ترميزجي بي 2312
نجح من قبلجي بي كيه ، جي بي 18030

EUC-CN [6] هو الشكل المشفر المعتاد لمعيار GB 2312 للأحرف الصينية المبسطة . وعلى عكس حالة JIS X 0208 اليابانية و ISO-2022-JP ، لا يتم استخدام GB 2312 عادةً في إصدار رمز ISO 2022 ذي السبعة بتات ، [a] على الرغم من استخدام شكل مختلف يسمى HZ (الذي يحدد نص GB 2312 بتسلسلات ASCII) في بعض الأحيان على USENET .

يتم تمثيل حرف ASCII بالترميز المعتاد. يتم تمثيل حرف من GB 2312 بواسطة بايتين، كلاهما من النطاق 0xA1–0xFE.

كود 748

إن الترميز المرتبط بـ EUC-CN هو الكود "748" المستخدم في نظام تنضيد WITS الذي طورته شركة Founder Technology في بكين (والتي عفا عليها الزمن الآن بسبب نظام تنضيد FITS الأحدث). يحتوي الكود 748 على GB 2312 بالكامل ، ولكنه غير متوافق مع ISO 2022 وبالتالي فهو ليس كود EUC حقيقيًا. (إنه يستخدم بايتًا أوليًا مكونًا من 8 بتات ولكنه يميز بين بايت ثانٍ مع تعيين البت الأكثر أهمية فيه والآخر مع مسح البت الأكثر أهمية فيه، وبالتالي فهو أكثر تشابهًا في البنية مع Big5 وأنظمة ترميز DBCS الأخرى غير المتوافقة مع ISO 2022. ) يحتوي الجزء غير GB2312 من الكود 748 على أحرف تقليدية وهونج كونجية ورموز أخرى تستخدم في تنضيد الصحف.

صفحات أكواد IBM 1380 و1381 و1382 و1383

تتضمن صفحة ترميز IBM 1381 ( CCSID 1381) صفحة الترميز أحادية البايت 1115 (CPGID 1115 مثل CCSID 1115) وصفحة الترميز مزدوجة البايت 1380 (CPGID 1380 مثل CCSID 1380)، [7] والتي تشفر GB 2312 بنفس طريقة EUC-CN، لكنها تنحرف عن بنية EUC عن طريق تمديد نطاق البايت الرئيسي مرة أخرى إلى 0x8C، وإضافة 31 حرفًا محددًا بواسطة IBM في 0x8CE0 حتى 0x8CFE وإضافة 1880 حرفًا محددًا من قبل المستخدم مع بايتات رئيسية من 0x8D حتى 0xA0. [8]

تتضمن صفحة رموز IBM 1383 (CCSID 1383) صفحة رموز أحادية البايت 367 وصفحة رموز مزدوجة البايت 1382 (CPGID 1382 كـ CCSID 1382)، [9] والتي تختلف عن طريق التوافق مع بنية EUC، وإضافة 31 حرفًا محددًا بواسطة IBM في 0xFEE0 حتى 0xFEFE بدلاً من ذلك، وتضمين 1360 حرفًا محددًا بواسطة المستخدم فقط، موزعة في المواضع التي لا تستخدمها GB 2312. [10] يتم استخدام CCSID 5479 البديل [11] لصفحة رموز EUC-CN النقية: فهي تستخدم CCSID 9574 كمجموعة مزدوجة البايت، والتي تستخدم CPGID 1382 ولكنها تستبعد الأحرف المحددة بواسطة IBM والمحددة بواسطة المستخدم. [12]

GBK وGB 18030

GBK هو امتداد لـ GB 2312. وهو يحدد شكلًا ممتدًا من ترميز EUC-CN القادر على تمثيل مجموعة أكبر من أحرف CJK المستمدة إلى حد كبير من Unicode 1.1 ، بما في ذلك الأحرف الصينية التقليدية والأحرف المستخدمة فقط في اللغة اليابانية . ومع ذلك، فهو ليس رمز EUC حقيقيًا، لأن بايتات ASCII قد تظهر كبايتات لاحقة (وبايتات C1 ، وليس مقتصرة على التحولات الفردية، قد تظهر كبايتات تمهيدية أو لاحقة)، بسبب الحاجة إلى مساحة ترميز أكبر.

يتم تنفيذ متغيرات GBK بواسطة صفحة رموز Windows 936 ( صفحة رموز Microsoft Windows للغة الصينية المبسطة)، وصفحة رموز IBM 1386.

يحدد ترميز الأحرف GB 18030 المستند إلى Unicode امتدادًا لـ GBK قادرًا على ترميز Unicode بالكامل . ومع ذلك، فإن Unicode المشفر كـ GB 18030 هو ترميز بطول متغير قد يستخدم ما يصل إلى أربعة بايتات لكل حرف، نظرًا لأنه يتطلب مساحة ترميز أكبر. وباعتباره امتدادًا لـ GBK، فهو عبارة عن مجموعة فرعية من EUC-CN ولكنه ليس في حد ذاته رمز EUC حقيقيًا. وباعتباره ترميز Unicode، فإن ذخيرته مطابقة لتلك الخاصة بتنسيقات تحويل Unicode الأخرى مثل UTF-8 .

نظام التشغيل Mac OS باللغة الصينية المبسطة

تتضمن متغيرات EUC-CN الأخرى التي تنحرف عن آلية EUC نص Mac OS الصيني المبسط (المعروف باسم صفحة التعليمات البرمجية 10008 أو x-mac-chinesesimp). [13] يستخدم البايتات 0x80 و0x81 و0x82 و0xA0 و0xFD و0xFE و0xFF لحرف U مع علامة umlaut (ü)، وحرفين خاصين لقياس الخط، والمسافة غير القابلة للكسر ، وعلامة حقوق النشر (©)، وعلامة العلامة التجارية (™) والنقاط الثلاث (...) على التوالي. [6] يختلف هذا فيما يُعتبر حرفًا أحادي البايت مقابل البايت الأول من حرف مكون من بايتين من كل من EUC (حيث يتم تعريف 0xFD و0xFE من بينهما على أنهما بايتات أولية) وGBK (حيث يتم تعريف 0x81 و0x82 و0xFD و0xFE من بينهما على أنها بايتات أولية).

يتطابق هذا الاستخدام لـ 0xA0 و0xFD و0xFE و0xFF مع متغير Shift_JIS الخاص بـ Apple .

بالإضافة إلى هذه التغييرات التي طرأت على نطاق البايت الرئيسي، فإن السمة المميزة الأخرى للجزء ذي البايت المزدوج من نظام التشغيل Mac OS Chinese Simplified هي تضمين امتدادين لمجموعة GB 2312-80 الأساسية في الصفين 6 و8. [6] تعتبر هذه "امتدادات قياسية لـ GB 2312"، ولا يعتبر أي منهما مملوكًا لشركة Apple: تم أخذ امتداد الصف 8 من GB 6345.1 ، [6] تم تضمين كلا الامتدادين بواسطة GB/T 12345 (المتغير الصيني التقليدي لـ GB 2312)، [14] وتم تضمين كلا الامتدادين بواسطة GB 18030 (خليفة GB 2312). [15]

EUC-JP

EUC-JP
الميم / اياناEUC-JP
الاسم المستعارUnixized JIS (UJIS)، csEUCPkdFmtاليابانية
اللغة(اللغات)اليابانية ، الإنجليزية ، الروسية
تصنيف ISO 646 ممتد ، ترميز بطول متغير ، ترميز CJK ، EUC
يمتدASCII أو ISO 646:JP
تحويلات / ترميزجيس X 0208 ، جيس X 0212 ، جيس X 0201
نجح من قبلEUC-JISx0213
EUC-JIS-2004
الاسم المستعارEUC-JISx0213
اللغة(اللغات)اليابانية ، الآينو ، الإنجليزية ، الروسية
معيارجيس اكس 0213
تصنيفترميز ASCII الممتد ، ترميز بطول متغير ، ترميز CJK ، EUC
يمتدأسكي
تحويلات / ترميزJIS X 0213 ، JIS X 0201 (كانا)
سبقهEUC-JP

EUC-JP هو ترميز بطول متغير يستخدم لتمثيل عناصر ثلاثة معايير لمجموعة الأحرف اليابانية ، وهي JIS X 0208 و JIS X 0212 و JIS X 0201. تشمل الأسماء الأخرى لهذا الترميز Unixized JIS (أو UJIS ) و AT&T JIS . [2] تستخدم 0.1٪ من جميع صفحات الويب EUC-JP منذ سبتمبر 2022، [16] بينما تستخدم 2.6٪ من مواقع الويب المكتوبة باللغة اليابانية هذا الترميز الثاني الأكثر شيوعًا (بالنسبة لليابانية) [17] (وهو أكثر من Shift JIS وكلاهما أقل استخدامًا بكثير من UTF-8 ). يطلق عليه IBM اسم صفحة الرموز 954. [18] [19] لدى Microsoft رقمان لصفحة الرموز لهذا الترميز (51932 و 20932).

يتيح مخطط الترميز هذا المزج السهل بين ASCII 7 بت واليابانية 8 بت دون الحاجة إلى أحرف الإفلات المستخدمة بواسطة ISO-2022-JP ، والتي تستند إلى معايير مجموعة الأحرف نفسها، ودون ظهور بايتات ASCII كبايتات تتبع (على عكس Shift JIS ).

يقوم ترميز مرتبط ومتوافق جزئيًا، يسمى EUC-JISx0213 أو EUC-JIS-2004 ، بترميز JIS X 0201 و JIS X 0213 [20] (على نحو مماثل لـ Shift_JISx0213 ، نظيره المستند إلى Shift_JIS).

بالمقارنة مع EUC-CN أو EUC-KR، لم يتم اعتماد EUC-JP على نطاق واسع على أنظمة الكمبيوتر الشخصي وماكنتوش في اليابان، والتي تستخدم Shift JIS أو ملحقاتها ( صفحة رموز Windows 932 على Microsoft Windows ، و MacJapanese على نظام التشغيل Mac OS الكلاسيكي )، على الرغم من استخدامها بكثافة بواسطة أنظمة التشغيل Unix أو أنظمة التشغيل الشبيهة بـ Unix (باستثناء HP-UX ). لذلك، غالبًا ما يعتمد استخدام مواقع الويب اليابانية لـ EUC-JP أو Shift_JIS على نظام التشغيل الذي يستخدمه المؤلف.

يتم ترميز الأحرف على النحو التالي:

  • باعتبارها ترميزًا متوافقًا مع EUC/ ISO 2022 ، يتم تمثيل أحرف التحكم C0 والمسافة وDEL كما هو الحال في ASCII.
  • يتم تمثيل حرف رسومي من ASCII (مجموعة الرموز 0) على أنه تمثيله المعتاد المكون من بايت واحد، في النطاق 0x21 - 0x7E. بينما تقوم بعض المتغيرات من EUC-JP بترميز النصف السفلي من JIS X 0201 هنا، فإن معظمها يشفر ASCII، [21] بما في ذلك معيار ترميز W3C/WHATWG المستخدم بواسطة HTML5 ، [22] وكذلك EUC-JIS-2004. [20] في حين أن هذا يعني أن 0x5C يتم تعيينه عادةً إلى Unicode كـ U+005C REVERSE SOLIDUS (الشرطة المائلة للخلف ASCII )، فقد يتم عرض U+005C كعلامة ين بواسطة بعض الخطوط المحلية اليابانية، على سبيل المثال على Microsoft Windows، للتوافق مع النصف السفلي من JIS X 0201. [ 23] [24]
  • يتم تمثيل حرف من JIS X 0208 (مجموعة التعليمات البرمجية 1) بواسطة بايتين، كلاهما في النطاق 0xA1 – 0xFE. ويختلف هذا عن تمثيل ISO-2022-JP من خلال تعيين البت العالي. قد تحتوي مجموعة التعليمات البرمجية هذه أيضًا على ملحقات البائع في بعض متغيرات EUC-JP. في EUC-JIS-2004، يتم ترميز المستوى الأول من JIS X 0213 هنا، وهو في الواقع مجموعة فرعية من JIS X 0208 القياسي . [20]
  • يتم تمثيل حرف من النصف العلوي من JIS X 0201 ( كانا نصف العرض ، مجموعة التعليمات البرمجية 2) بواسطة بايتين، الأول هو 0x8E، والثاني هو التمثيل المعتاد لـ JIS X 0201 في النطاق 0xA1 – 0xDF. قد تحتوي هذه المجموعة على ملحقات بائع IBM في بعض المتغيرات.
  • يتم تمثيل حرف من JIS X 0212 (مجموعة التعليمات البرمجية 3) في EUC-JP بثلاثة بايتات، الأول هو 0x8F، والبايتان التاليان يقعان في النطاق 0xA1–0xFE، أي مع مجموعة البتات العالية. بالإضافة إلى JIS X 0212 القياسي ، قد تحتوي مجموعة التعليمات البرمجية 3 لبعض متغيرات EUC-JP أيضًا على امتدادات في الصفين 83 و84 لتمثيل الأحرف من امتدادات Shift JIS من IBM والتي تفتقر إلى تعيينات JIS X 0212 القياسية، والتي قد يتم ترميزها في أي من التخطيطين، أحدهما تحدده IBM نفسها والآخر تحدده OSF . [25] [26] في EUC-JIS-2004، يتم ترميز المستوى الثاني من JIS X 0213 هنا، [20] والذي لا يتعارض مع الصفوف المخصصة في JIS X 0212 القياسي . [27] تسمح بعض تنفيذات EUC-JIS-2004، مثل تلك المستخدمة بواسطة Python ، بكل من أحرف المستوى 2 JIS X 0212 و JIS X 0213 في هذه المجموعة. [27]

غالبًا ما تم تخصيص ملحقات البائعين لـ EUC-JP (من، على سبيل المثال، مؤسسة البرمجيات المفتوحة أو IBM أو NEC ) داخل مجموعات التعليمات البرمجية الفردية، [25] [26] على عكس استخدام تسلسلات EUC غير الصالحة (كما هو الحال في الملحقات الشائعة لـ EUC-CN و EUC-KR).

ومع ذلك، فإن بعض الترميزات الخاصة بالبائعين متوافقة جزئيًا مع EUC-JP، بسبب ترميز JIS X 0208 عبر GR، لكنها لا تتبع بنية EUC المعبأة. غالبًا، لا تتضمن هذه الترميزات استخدام التحولات الفردية من EUC-JP، وبالتالي فهي ليست امتدادات مباشرة لـ EUC-JP، باستثناء Super DEC Kanji.

كانجي DEC

تحدد شركة Digital Equipment Corporation نوعين مختلفين من EUC-JP يتوافقان جزئيًا فقط مع تنسيق EUC المعبأ، ولكنهما يحملان أيضًا بعض التشابه مع تنسيق البايتين الكامل. يتوافق التنسيق العام لترميز "DEC Kanji" في الغالب مع EUC بطول ثابت (بايتين كاملين)؛ ومع ذلك، لا يلزم أن تكون مجموعة التعليمات البرمجية 0 مبطنة إلى اليسار ببايتات فارغة (على غرار التنسيق المعبأ). [28] يتم استخدام JIS X 0208، كالمعتاد، لمجموعة التعليمات البرمجية 1؛ مجموعة التعليمات البرمجية 2 (الكاتاكانا نصف العرض) غائبة؛ يتم ترميز مجموعة التعليمات البرمجية 3 مثل تنسيق العرض الثابت المكون من بايتين (أي بدون بايت تحويل ومع مجموعة البتات العالية الأولى فقط)، ولكن يتم استخدامها للأحرف المحددة من قبل المستخدم المكونة من بايتين بدلاً من تحديدها لـ JIS X 0212. [28] في ترميز "DEC Kanji" الأساسي، يتم استخدام أول 31 صفًا فقط من مجموعة التعليمات البرمجية 3 للأحرف المحددة من قبل المستخدم: يتم حجز الصفوف من 32 إلى 94، على غرار الصفوف غير المستخدمة في مجموعة التعليمات البرمجية 1. [29]

يقبل ترميز "Super DEC Kanji" الرموز من كل من ترميز "DEC Kanji" ومن EUC بتنسيق مضغوط، بإجمالي خمس مجموعات رموز. [28] كما يسمح أيضًا باستخدام مجموعة الرموز المحددة من قبل المستخدم بالكامل، والصفوف غير المستخدمة في نهايات مجموعات رموز JIS X 0208 وJIS X 0212 (الصفوف 85-94 و78-94 على التوالي)، للأحرف المحددة من قبل المستخدم. [29]

إتش بي-16

تحدد شركة Hewlett-Packard ترميزًا يُشار إليه باسم "HP-16". ويصاحب هذا الترميز ترميز "HP-15"، وهو أحد أشكال ترميز Shift JIS . يشفر HP-16 ترميز JIS X 0208 باستخدام نفس البايتات كما في EUC-JP، ولكنه لا يستخدم أكواد التحويل المفردة (وبالتالي يحذف مجموعتي الكود 2 و3)، ويضيف ثلاث مناطق محددة من قبل المستخدم لا تتبع بنية EUC بتنسيق مضغوط: [28]

  • بايتات الرصاص 0xA1–C2، بايتات النهاية 0x21–7E
  • بايتات الرصاص 0xC3–E3، بايتات النهاية 0x21–3F
  • بايتات الرصاص 0xC3–E1، بايتات النهاية 0x40–64

إيكيس

يشبه ترميز IKIS (نظام معلومات كانجي التفاعلي) الذي تستخدمه شركة Data General ترميز EUC-JP بدون تحولات مفردة، أي مع مجموعات التعليمات البرمجية 0 و1 فقط. بدلاً من ذلك، يتم تضمين أحرف الكاتكانا ذات العرض النصفي في الصف 8 من JIS X 0208 (متعارضة مع أحرف رسم المربع المضافة إلى المعيار في عام 1983). تُستخدم صفوف JIS X 0208 من 9 إلى 12 للأحرف التي يحددها المستخدم. [28] [29]

تعديلات EUC-JP لـ EBCDIC

KEIS (نظام المعلومات الموسع لمعالجة الكانجي) هو ترميز EBCDIC يستخدمه Hitachi ، [29] مع أحرف مزدوجة البايت (ترميز DBCS-Host) متضمنًا باستخدام تسلسلات تحويل، مما يجعله ترميزًا بحالة . على وجه التحديد، يتحول التسلسل 0x0A 0x41إلى وضع البايت الفردي ويتحول التسلسل 0x0A 0x42إلى وضع البايت المزدوج. [ب] ومع ذلك، يتم ترميز أحرف JIS X 0208 باستخدام نفس تسلسلات البايت المستخدمة لترميزها في EUC-JP. يؤدي هذا إلى ترميزات مكررة للمساحة الأيديوغرافية -0x4040 وفقًا لبنية رمز DBCS-Host، و0xA1A1 كما هو الحال في EUC-JP. يختلف هذا عن ترميز DBCS-Host الخاص بـ IBM للغة اليابانية، والذي يعتمد تخطيطه على إصدارات تسبق JIS X 0208 تمامًا. يمتد نطاق البايت الرئيسي إلى 0x59، حيث يتم تخصيص البايتات الرئيسية 0x81–A0 للأحرف التي يحددها المستخدم، [28] ويتم استخدام الباقي للأحرف التي تحددها الشركة، بما في ذلك الكانجي وغير الكانجي. [29]

JEF (Japanese-processing Extended Feature) [29] هو ترميز EBCDIC المستخدم في أجهزة الكمبيوتر المركزية Fujitsu FACOM، على النقيض من FMR (نوع من Shift JIS) المستخدم في أجهزة الكمبيوتر الشخصية Fujitsu. مثل KEIS، JEF هو ترميز حالة، يتحول إلى وضع DBCS-Host ثنائي البايت باستخدام تسلسلات التحويل (حيث 0x29يتحول إلى وضع البايت الفردي ويتحول 0x28إلى وضع البايت المزدوج). [30] وبالمثل أيضًا KEIS، يتم تمثيل أكواد JIS X 0208 بنفس الطريقة كما في EUC-JP. [28] يتم تمديد نطاق البايت الرئيسي مرة أخرى إلى 0x41، مع تخصيص 0x80–0xA0 لتعريف المستخدم؛ يتم تعيين أرقام الصفوف من 101 إلى 163 للبايتات الرئيسية 0x41–0x7F لأغراض kuten ، على الرغم من عدم استخدام الصف 162 (البايت الرئيسي 0x7E). [28] [29] تُستخدم الصفوف من 101 إلى 148 للكانجي الممتد، بينما تُستخدم الصفوف من 149 إلى 163 للكانجي غير الممتد. [29]

EUC-KR

EUC-KR
هيكل رمز EUC-KR
الميم / اياناEUC-KR
الاسم المستعاروانسونج، IBM-970
اللغة(اللغات)الكورية والإنجليزية والروسية
معيارKS X 2901 (KS C 5861)
تصنيف ISO 646 ممتد ، ترميز بطول متغير ، ترميز CJK ، EUC
يمتدASCII أو ISO 646:KR
الإضافاتنظام التشغيل Mac OS الكوري ، IBM-949 ، الكود الموحد للغة الهانغول (Windows-949)
تحويلات / ترميزكيه إس إكس 1001
نجح من قبلكود الهانغول الموحد (معايير الويب)

EUC-KR هو ترميز بطول متغير لتمثيل النص الكوري باستخدام مجموعتين من الأحرف المشفرة، KS X 1001 (سابقًا KS C 5601) [31] [32] وإما ISO 646 : KR ( KS X 1003 ، سابقًا KS C 5636 ) أو ASCII ، اعتمادًا على المتغير. ينص KS X 2901 (سابقًا KS C 5861 ) على الترميز وأطلق عليه RFC  1557 اسم EUC-KR.

يتم ترميز حرف مأخوذ من KS X 1001 (G1، مجموعة الرموز 1) على هيئة بايتين في GR (0xA1–0xFE) ويأخذ حرف من KS X 1003 أو ASCII (G0، مجموعة الرموز 0) بايتًا واحدًا في GL (0x21–0x7E).

يُشار إليه عادةً باسم Wansung ( بالكورية완성 ؛ RRWanseong ؛ حرفيًا  مُركب مسبقًا [33] ) في جمهورية كوريا . تشير شركة IBM إلى المكون ذي البايت المزدوج باسم صفحة التعليمات البرمجية 971 ، [34] وإلى EUC-KR مع ASCII باسم صفحة التعليمات البرمجية 970. [35] [36] [37] يتم تنفيذه باسم صفحة التعليمات البرمجية 20949 ("Wansung الكورية") [38] [ 39] وصفحة التعليمات البرمجية 51949 ("EUC الكورية") بواسطة Microsoft. [38]

اعتبارًا من ديسمبر 2024 ، أعلن أقل من 0.07% من جميع صفحات الويب على مستوى العالم استخدام EUC-KR، [40] ولكن 5.2% من صفحات الويب في كوريا الجنوبية تستخدم EUC-KR. [41] بما في ذلك الامتدادات، فهو ترميز الأحرف القديم الأكثر استخدامًا في كوريا على جميع الأنظمة الأساسية الثلاثة الرئيسية ( macOS وأنظمة تشغيل أخرى شبيهة بـ Unix وWindows)، ولكن استخدامه تحول ببطء شديد إلى UTF-8 مع اكتسابه شعبية، خاصة على Linux وmacOS.

كما هو الحال مع معظم الترميزات الأخرى، أصبح UTF-8 الآن مفضلًا للاستخدامات الجديدة، حيث يعمل على حل مشكلات الاتساق بين المنصات والبائعين.

كود الهانغول الموحد

الامتداد الشائع لـ EUC-KR هو رمز الهانغول الموحد ( 통합형 한글 코드 ؛ Tonghabhyeong Hangeul Kodeu ، [42] أو 통합 완성형 ؛ Tonghab Wansunghyung )، وهو صفحة الرموز الكورية الافتراضية على Microsoft Windows. تم منحها رقم صفحة الرموز 949 بواسطة Microsoft، و1261 [43] أو 1363 [44] بواسطة IBM. صفحة رموز IBM 949 هي امتداد EUC-KR مختلف وغير ذي صلة.

يمتد رمز الهانغول الموحد إلى EUC-KR باستخدام أكواد لا تتوافق مع بنية EUC لدمج كتل مقاطع لفظية إضافية، مما يكمل تغطية كتل المقاطع اللفظية المركبة المتوفرة في Johab وUnicode. يدمج معيار ترميز W3C / WHATWG المستخدم بواسطة HTML5 امتدادات رمز الهانغول الموحد في تعريفه لـ EUC-KR. [45]

نظام التشغيل Mac OS الكوري (HangulTalk)

تتضمن الترميزات الأخرى التي تتضمن EUC-KR كمجموعة فرعية النص الكوري لنظام التشغيل Mac OS (المعروف باسم صفحة التعليمات البرمجية 10003 أو x-mac-korean[13] والذي تم استخدامه بواسطة HangulTalk (MacOS-KH)، الترجمة الكورية لنظام التشغيل Mac OS الكلاسيكي . تم تطويره بواسطة Elex Computer ( 일렉스 )، الذي كان في ذلك الوقت الموزع المعتمد لأجهزة كمبيوتر Apple Macintosh في كوريا الجنوبية. [46] [29]

يضيف HangulTalk أحرف امتداد مع بايتات رئيسية بين 0xA1 و0xAD، سواء في مساحة غير مستخدمة داخل مستوى EUC-KR GR (بايتات التتبع 0xA1–0xFE)، أو باستخدام أكواد غير EUC خارجها (بايتات التتبع 0x41–0xA0). بعض هذه الأحرف هي أحرف منمقة مستقلة عن نمط الخط . [29] لا تحتوي العديد من هذه الأحرف على تعيينات Unicode دقيقة، وتقوم برامج Apple بتعيين هذه الحالات بشكل مختلف لدمج التسلسلات ، لتقريب التعيينات باستخدام حرف خاص مُلحق كعامل تعديل لأغراض الرحلة ذهابًا وإيابًا، أو لأحرف خاصة. [47]

تستخدم Apple أيضًا بعض رموز البايت الفردي خارج مستوى EUC-KR للأحرف الإضافية: 0x80 للمسافة المطلوبة ، و0x81 لعلامة الفوز (₩)، و0x82 لشرطة النهاية (–)، و0x83 لعلامة حقوق الطبع والنشر (©)، و0x84 لشرطة سفلية عريضة (_) و0xFF لعلامة الحذف (...). [47] على الرغم من عدم وجود أي من رموز البايت الفردي الإضافية هذه ضمن نطاق البايت الرئيسي لـ EUC-KR العادي (على عكس ملحقات Apple لـ EUC-CN، انظر أعلاه)، فإن بعضها يقع ضمن نطاق البايت الرئيسي لـ Unified Hangul Code (على وجه التحديد، 0x81 و0x82 و0x83 و0x84).

EUC-KP

على غرار KS X 1001، يستخدم معيار كوريا الشمالية KPS 9566 عادةً في شكل EUC؛ وفي هذه السياقات، يُشار إليه أحيانًا باسم EUC-KP. [48] تعمل الإصدارات الأحدث من المعيار على توسيع تمثيل EUC بأحرف تستخدم أكواد ثنائية البايت غير EUC، بطريقة مماثلة لكود الهانغول الموحد. [49]

EUC-TH

على الرغم من أن بعض ترميزات البايت الواحد مثل سلسلة ISO/IEC 8859 تتوافق تقنيًا مع بنية EUC، إلا أنها نادرًا ما يتم تصنيفها على أنها EUC. ومع ذلك، eucTHيتم استخدامها على Solaris كعلامة لـ TIS-620 . [50]

الاتحاد الأوروبي-TW

EUC-TW هو ترميز بطول متغير يدعم ASCII و16 مستوى من CNS 11643 ، كل منها 94×94. وهو ترميز نادر الاستخدام للأحرف الصينية التقليدية كما هو مستخدم في تايوان . تعد متغيرات Big5 أكثر شيوعًا من EUC-TW، على الرغم من أن Big5 يشفر فقط المستويين الأولين من CNS 11643 hanzi ، بينما أصبح UTF-8 أكثر شيوعًا.

  • باعتبارها ترميز EUC/ ISO 2022 ، يتم ترميز أحرف التحكم C0 ومسافة ASCII وDEL كما هو الحال في ASCII.
  • يتم ترميز حرف رسومي من ASCII (G0، مجموعة التعليمات البرمجية 0) في GL كتمثيله المعتاد المكون من بايت واحد (0x21–0x7E).
  • يتم ترميز حرف من المستوى 1 لـ CNS 11643 (مجموعة الرموز 1) على هيئة بايتين في GR (0xA1–0xFE).
  • يتم ترميز أحد الأحرف في المستويات من 1 إلى 16 من CNS 11643 (مجموعة الرموز 2) على هيئة أربعة بايتات:
    • البايت الأول يكون دائمًا 0x8E (Single Shift 2).
    • يشير البايت الثاني (0xA1–0xB0) إلى المستوى، والذي يتم الحصول على رقمه عن طريق طرح 0xA0 من هذا البايت.
    • البايتات الثالثة والرابعة موجودة في GR (0xA1–0xFE).

لاحظ أن المستوى 1 من CNS 11643 مشفر مرتين كمجموعة رموز 1 وجزء من مجموعة الرموز 2.

انظر أيضا

ملحوظات

  1. ^ تتضمن إصدارات الكود ISO 2022 ذات السبعة بتات والتي تدعم GB 2312 ISO-2022-CN (مع رموز التحويل) و ISO-2022-JP-2 (بدون رموز التحويل)، وكلاهما يدعم أيضًا مجموعات أخرى غير ASCII.
  2. ^ تتطابق هذه التسلسلات مع الأشكال السداسية العشرية التي أظهرها DEC [30] والأشكال العشرية ( 10 65و 10 66) التي أدرجها لوند. [28] يسرد لوند الأشكال السداسية العشرية لكليهما على أنها 0xA0 0x42، على ما يبدو أنها خاطئة.

مراجع

  1. ^ abcd IBM . "Character Data Representation Architecture (CDRA)". IBM . ص 157-162.
  2. ^ abc Lunde, Ken (2008). معالجة المعلومات الصينية واليابانية والكورية والفيتنامية: الحوسبة الصينية واليابانية والكورية والفيتنامية. أوريلي. ص 242-244. ISBN 9780596800925.
  3. ^ "مجموعات الأحرف". IANA.
  4. ^ "4.2. الأسماء والعلامات". معيار الترميز . WHATWG.
  5. ^ تشو، هايفنغ؛ هو، داويوان؛ وانغ، تشيغوان. كاو، تيان تشيو؛ تشانغ، ون تشونغ. كريسبين، مارك (مارس 1996). ترميز الأحرف الصينية لرسائل الإنترنت. مجموعة عمل الشبكة. دوى : 10.17487/RFC1922 . آر إف سي 1922. إعلامي. القسم 2.1: CN-GB).
  6. ^ abcd "الخريطة (الإصدار الخارجي) من ترميز Mac OS الصيني المبسط إلى Unicode 3.0 والإصدارات الأحدث". Apple, Inc.
  7. ^ "بيانات الكمبيوتر S-Ch المختلطة (IBM GB) بما في ذلك 1880 UDC و31 حرفًا محددًا من IBM و5 أحرف SAA SB". IBM Globalization: معرفات مجموعة الأحرف المشفرة . IBM . مؤرشف من الأصل في 2016-03-26.
  8. ^ "مجموعة الأحرف الرسومية الصينية المبسطة من IBM" (PDF) . IBM . 1993. CH 3-3220-130 1993-11.
  9. ^ "CCSID 1383: مجموعة S-Ch EUC G0، مجموعة ASCII G1، مجموعة GB 2312-80 (1382)". IBM Globalization: معرفات مجموعة الأحرف المشفرة . IBM . مؤرشف من الأصل في 2016-03-28.
  10. ^ "مجموعة الأحرف الرسومية الصينية المبسطة من IBM لرمز UNIX الموسع (EUC)" (PDF) . IBM . 1994. CH 3-3220-132 1994-06.
  11. ^ "CCSID 5479: مجموعة S-Ch EUC G0، مجموعة ASCII G1، مجموعة GB 2312-80 (5478)". IBM Globalization: معرفات مجموعة الأحرف المشفرة . IBM . مؤرشف من الأصل في 2016-03-27.
  12. ^ "CCSID 9574: مجموعة S-Ch DBCS PC GB 2312-80، باستثناء 31 IBM المحددة و1360 UDC. تستخدم أيضًا في T-Ch 2022-CN TCP". IBM Globalization: معرفات مجموعة الأحرف المشفرة . IBM . مؤرشف من الأصل في 2016-03-27.
  13. ^ ab "Encoding.WindowsCodePage Property – .NET Framework (الإصدار الحالي)". MSDN . Microsoft.
  14. ^ لوندي ، كين (1998). “معالجة معلومات CJKV”. الملحق و: GB/T 12345 (PDF) . أورايلي وسائل الإعلام . رقم ISBN 9781565922242.
  15. ^ إدارة التقييس الصينية (SAC) (2005-11-18). GB 18030-2005: تكنولوجيا المعلومات - مجموعة الأحرف المشفرة الصينية.
  16. ^ "الاتجاهات التاريخية في استخدام ترميزات الأحرف لمواقع الويب". W3Techs.
  17. ^ "توزيع ترميزات الأحرف بين المواقع الإلكترونية التي تستخدم اللغة اليابانية". w3techs.com . تم الاسترجاع في 2023-11-01 .
  18. ^ "وثيقة معلومات CCSID 954". مؤرشفة من الأصل في 2016-03-27.
  19. ^ المكونات الدولية لليونيكود (ICU)، ibm-954_P101-2007.ucm، 2002-12-03
  20. ^ abcd "جداول تعيين أكواد JIS X 0213". x0213.org.
  21. ^ "الغموض في التحويل من EUC الياباني إلى Unicode (غير معياري)". ملف تعريف XML الياباني . W3C.
  22. ^ "فك تشفير EUC-JP". معيار الترميز . WHATWG."إذا كان البايت عبارة عن بايت ASCII، قم بإرجاع نقطة رمز تكون قيمتها عبارة عن بايت."
  23. ^ "3.1.1 تفاصيل المشاكل". مشاكل وحلول لـ Unicode والأحرف التي يحددها المستخدم/البائع . مجموعة Open Group Japan. مؤرشف من الأصل في 1999-02-03 . تم الاسترجاع في 2019-08-14 .
  24. ^ كابلان، مايكل س. (2005-09-17). "متى لا تكون الشرطة المائلة للخلف شرطة مائلة للخلف؟".
  25. ^ ab "4.2 عملية مراجعة قواعد تحويل مجموعة التعليمات البرمجية بين eucJP-open وUCS". مشاكل وحلول لـ Unicode والأحرف المحددة من قبل المستخدم/البائع . مجموعة Open Group Japan. مؤرشف من الأصل في 1999-02-03 . تم الاسترجاع في 2019-08-14 .
  26. ^ ab Lunde, Ken (13 January 2009). "Appendix J: Japanese Character Sets" (PDF) . CJKV Information Processing (الطبعة الثانية). ISBN 978-0-596-51447-1.
  27. ^ ab Chang, Hyeshik (8 ديسمبر 2021). "Readme for CJKCodecs". cPython . Python Software Foundation.
  28. ^ abcdefghi Lunde, Ken (13 January 2009). "Appendix F: Vendor Encoding Methods" (PDF) . CJKV Information Processing (2nd ed.). ISBN 978-0-596-51447-1.
  29. ^ abcdefghij Lunde, Ken (2009). "Appendix E: Vendor Character Set Standards" (PDF) . CJKV Information Processing: Chinese, Japanese, Korean & Vietnamese Computing (2nd ed.). Sebastopol, CA : O'Reilly . ISBN 978-0-596-51447-1.
  30. ^ ab "2: مجموعات الرموز وتحويل مجموعات الرموز". المرجع الفني لنظام DIGITAL UNIX لاستخدام الميزات اليابانية . شركة Digital Equipment Corporation ، Compaq .[ رابط معطل ‍ ]
  31. ^ "KS X 1001:1992" (PDF) .
  32. ^ مكتب كوريا للمعايير (1988-10-01). KS C 5601:1987 (PDF) . ITSCJ/ IPSJ . ISO-IR -149.
  33. ^ لوند، كين (2009). "الفصل 3: معايير مجموعة الأحرف". معالجة معلومات CJKV . "O'Reilly Media, Inc." ص. 146. ISBN 978-0596514471.
  34. ^ "IBM Globalization – Coded character set identifiers – CCSID 971". مؤرشف من الأصل في 2014-11-30 . تم الاسترجاع في 2021-09-03 .
  35. ^ "CCSID 970". IBM Globalization . IBM. مؤرشف من الأصل في 2014-12-01.
  36. ^ "ibm-970_P110_P110-2006_U2 (alias euc-kr)". مستكشف المحولات – عرض توضيحي لـ ICU . المكونات الدولية لـ Unicode.
  37. ^ المكونات الدولية لليونيكود (ICU)، ibm-970_P110_P110-2006_U2.ucm، 2002-12-03
  38. ^ "معرفات صفحة التعليمات البرمجية". مركز تطوير Windows. Microsoft. 7 يناير 2021.
  39. ^ Julliard, Alexandre (11 مارس 2021). "dump_krwansung_codepage: إنشاء جدول Wansung الكوري من ملف KSX1001". make_unicode: إنشاء ملفات صفحة التعليمات البرمجية .c من أوصاف ftp.unicode.org . مشروع Wine .
  40. ^ "إحصائيات الاستخدام والحصة السوقية لـ EUC-KR لمواقع الويب، ديسمبر 2024". w3techs.com . تم الاسترجاع في 2024-12-10 .
  41. ^ "توزيع ترميزات الأحرف بين المواقع التي تستخدم .kr". w3techs.com . تم الاسترجاع في 2024-12-10 .
  42. ^ “한글 코드에 대하여” (في الكورية). W3C. مؤرشفة من الأصلي بتاريخ 24-05-2013 . تم الاسترجاع 2019-01-07 .
  43. ^ في ucnv_lmb.cpp، وهو ملف نشأ من IBM ومضمن في شجرة مصدر المكونات الدولية لـ Unicode ، تم التعليق على البايت الرئيسي 0x11 على أنه يشير إلى "الكورية: ibm-1261" بعد تعريف ULMBCS_GRP_KO، ويتم تعيينه إلى "windows-949"برنامج ترميز ICU في OptGroupByteToCPNameالمصفوفة لاحقًا في الملف.
  44. ^ "معرفات مجموعة الأحرف المشفرة – CCSID 1363"، IBM Globalization ، IBM، مؤرشف من الأصل في 2014-11-29
  45. ^ "5. الفهارس (§ فهرس EUC-KR)"، معيار الترميز ، WHATWG
  46. ^ جيل، هوجين. "HangulTalk: بيئة Hangul القياسية الفعلية لنظام Mac". دليل استخدام Hangul على Macintosh .
  47. ^ ab Apple (2005-04-05). "Map (external version) from Mac OS Korean encoding to Unicode 3.2 and later". Unicode Consortium .
  48. ^ كيم، كيونج سوك (2002-11-30). "جداول مرجعية متقاطعة ثلاثية الاتجاهات – KS X 1001، وKPS 9566، وUCS" (PDF) . ISO/IEC JTC 1/SC 2 /WG 2 N2564.[ملاحظة: تم تحديث الروابط الخاصة بالجداول المرفقة بالوثيقة: [1] [2]]
  49. ^ تشونغ، جايمين (2018-01-05). "معلومات عن أحدث إصدار من KPS 9566 (KPS 9566-2011؟)" (PDF) . UTC L2/18-011.
  50. ^ IBM (2001-05-07). "solaris-eucTH-2.7". icu-data . اتحاد يونيكود / المكونات الدولية لـ يونيكود .
  • جدول مجموعة رموز EUC-JP (باستثناء أجزاء ASCII ونصف العرض )
  • معرفات صفحة التعليمات البرمجية
  • GB18030-2000 – المعيار الوطني الصيني الجديد (تم تحديثه إلى GB18030 -2022، وهو غير متوافق (قليلاً)
  • الجيل الجديد من برامج ما قبل الطباعة في الصين – يذكر الكود 748
  • وصف رمز EUC-TW (باللغة الصينية)
  • صفحة دليل EUC-JISX0213 في وحدة Perl Encode
  • السجل الدولي لمجموعات الأحرف المشفرة التي سيتم استخدامها مع تسلسلات الإفلات - القسم 2.4 (ص 14ف) مع مجموعات الأحرف المشفرة للصين واليابان وكوريا الجنوبية وكوريا الشمالية وتايوان (ISO/IEC)
  • معايير مجموعات الأحرف الصينية واليابانية والكورية وأنظمة الترميز
تم الاسترجاع من "https://en.wikipedia.org/w/index.php?title=Extended_Unix_Code&oldid=1262274303"
Original text
Rate this translation
Your feedback will be used to help improve Google Translate