مجموعة أحرف مشفرة عالمية
This article needs additional citations for verification. (April 2020) |
| الاسم المستعار | UCS، يونيكود |
|---|---|
| اللغة(اللغات) | دولي |
| معيار | ايزو/اي اي سي 10646 |
| تنسيقات الترميز | UTF-8 ، UTF-16 ، GB 18030 أقل شيوعًا : UTF-32 ، BOCU ، SCSU ، UTF-7 |
| سبقه | ISO/IEC 8859 ، ISO/IEC 2022 ، والعديد من المعايير الأخرى |
مجموعة الأحرف المشفرة العالمية ( UCS ، Unicode ) هي مجموعة قياسية من الأحرف التي حددها المعيار الدولي ISO / IEC 10646، تكنولوجيا المعلومات - مجموعة الأحرف المشفرة العالمية (UCS) (بالإضافة إلى التعديلات على هذا المعيار)، والتي تشكل أساس العديد من ترميزات الأحرف ، والتي تتحسن مع إضافة أحرف من أنظمة الكتابة غير الممثلة سابقًا.
يحتوي نظام UCS على أكثر من 1.1 مليون نقطة رمز ممكنة متاحة للاستخدام/التخصيص، ولكن فقط أول 65536 نقطة، والتي تمثل المستوى الأساسي متعدد اللغات (BMP)، دخلت حيز الاستخدام الشائع قبل عام 2000. بدأ هذا الوضع يتغير عندما حكمت جمهورية الصين الشعبية في عام 2006 بأن جميع البرامج المباعة في ولايتها القضائية يجب أن تدعم GB 18030. وهذا يتطلب أن تتجاوز البرامج المخصصة للبيع في جمهورية الصين الشعبية المستوى الأساسي متعدد اللغات (BMP). [ بحاجة لتوضيح ]
يترك النظام عمدًا العديد من نقاط الترميز غير المخصصة للأحرف، حتى في BMP. ويفعل ذلك للسماح بالتوسع في المستقبل أو لتقليل التعارضات مع أشكال الترميز الأخرى.
حددت النسخة الأصلية من UCS UTF-16 ، وهو امتداد لـ UCS-2، لتمثيل نقاط الترميز خارج BMP. تظل مجموعة من نقاط الترميز في المنطقة S (الخاصة) من BMP غير مخصصة للأحرف. لا يسمح UCS-2 باستخدام قيم الترميز لهذه النقاط، لكن UTF-16 يسمح باستخدامها في أزواج. كما تبنى Unicode UTF-16، لكن في مصطلحات Unicode، تصبح عناصر منطقة النصف العالي "بدائل عالية" وتصبح عناصر منطقة النصف المنخفض "بدائل منخفضة". [ بحاجة لتوضيح ]
يستخدم ترميز آخر، UTF-32 (المسمى سابقًا UCS-4)، أربعة بايتات (إجمالي 32 بت) لترميز حرف واحد من مساحة الكود. وبالتالي يسمح UTF-32 بتمثيل ثنائي لكل نقطة كود (اعتبارًا من عام 2024) في واجهات برمجة التطبيقات وتطبيقات البرامج.
تاريخ
بدأت المنظمة الدولية للمعايير (ISO) في تأليف مجموعة الأحرف العالمية في عام 1989، ونشرت مسودة ISO 10646 في عام 1990. وكان هيو ماكجريجور روس أحد المهندسين الرئيسيين لهذه المسودة.
تم إنجاز هذا العمل بشكل مستقل عن تطوير معيار Unicode ، والذي كان قيد التطوير منذ عام 1987 بواسطة Xerox و Apple .
اختلف مشروع ISO 10646 الأصلي بشكل ملحوظ عن المعيار الحالي. فقد حدد:
- 128 مجموعة من
- 256 طائرة من
- 256 صفًا من
- 256 خلية،
بالنسبة لإجمالي ظاهري يبلغ 2,147,483,648 حرفًا، ولكن في الواقع، لا يمكن للمعيار ترميز سوى 679,477,248 حرفًا، حيث منعت السياسة قيم البايتات الخاصة برموز التحكم C0 وC1 (من 0x00 إلى 0x1F ومن 0x80 إلى 0x9F، في تدوين سداسي عشري ) في أي من البايتات الأربعة التي تحدد المجموعة والمستوى والصف والخلية. على سبيل المثال، كان للحرف اللاتيني الكبير A موقع في المجموعة 0x20 والمستوى 0x20 والصف 0x20 والخلية 0x41.
من الممكن ترميز أحرف معيار ISO/IEC 10646 الأساسي بإحدى الطرق الثلاث التالية:
- UCS-4، أربعة بايتات لكل حرف، مما يتيح الترميز البسيط لجميع الأحرف؛
- UCS-2، بايتين لكل حرف، مما يتيح ترميز المستوى الأول، 0x20، المستوى متعدد اللغات الأساسي، الذي يحتوي على أول 36864 نقطة رمز، بشكل مباشر، والمستويات والمجموعات الأخرى عن طريق التبديل إليها باستخدام تسلسلات الهروب ISO/IEC 2022 ؛
- UTF-1 ، الذي يقوم بترميز كافة الأحرف في تسلسلات من البايتات ذات الطول المتفاوت (من 1 إلى 5 بايتات، لا يحتوي كل منها على أكواد تحكم).
في عام 1990، كان هناك مبادرتان لمجموعة أحرف عالمية: Unicode ، مع 16 بت لكل حرف (65536 حرفًا ممكنًا)، وISO/IEC 10646. رفضت شركات البرمجيات قبول متطلبات التعقيد والحجم لمعيار ISO وتمكنت من إقناع عدد من الهيئات الوطنية التابعة لـ ISO بالتصويت ضده. [ بحاجة لمصدر ] أدرك مسؤولو ISO أنهم لا يستطيعون الاستمرار في دعم المعيار في حالته الحالية وتفاوضوا على توحيد معيارهم مع Unicode. حدث تغييران: رفع القيد المفروض على الأحرف (حظر قيم رمز التحكم)، وبالتالي فتح نقاط الرمز للتخصيص؛ ومزامنة ذخيرة المستوى متعدد اللغات الأساسي مع ذخيرة Unicode.
في غضون ذلك، ومع مرور الوقت، تغير الوضع في معيار Unicode نفسه: فقد أصبح 65536 حرفًا غير كافٍ، ويدعم المعيار من الإصدار 2.0 وما بعده ترميز 1112064 نقطة رمز من 17 مستوى عن طريق آلية بديلة لـ UTF-16 . ولهذا السبب، تم تقييد ISO/IEC 10646 بحيث يحتوي على أكبر عدد ممكن من الأحرف التي يمكن ترميزها بواسطة UTF-16 وليس أكثر، أي ما يزيد قليلاً عن مليون حرف بدلاً من أكثر من 679 مليونًا. تم دمج ترميز UCS-4 الخاص بـ ISO/IEC 10646 في معيار Unicode مع الحد من نطاق UTF-16 وتحت اسم UTF-32 ، على الرغم من أنه لا يستخدم تقريبًا خارج البيانات الداخلية للبرامج.
قام روب بايك وكين تومسون ، مصمما نظام التشغيل Plan 9 ، بتصميم ترميز جديد وسريع ومصمم جيدًا بعرض مختلط ومتوافق أيضًا مع ترميز ASCII المكون من 7 بتات ، والذي أطلق عليه اسم UTF-8 ، [1] وهو حاليًا ترميز UCS الأكثر شيوعًا.
الاختلافات عن Unicode
يحتوي معيار ISO/IEC 10646 وUnicode على ذخيرة وأرقام متطابقة - توجد نفس الأحرف بنفس الأرقام في كلا المعيارين، على الرغم من أن Unicode يصدر إصدارات جديدة ويضيف أحرفًا جديدة بشكل متكرر. يحتوي Unicode على قواعد ومواصفات خارج نطاق ISO/IEC 10646. ISO/IEC 10646 عبارة عن خريطة أحرف بسيطة، وهي امتداد للمعايير السابقة مثل ISO/IEC 8859. على النقيض من ذلك، يضيف Unicode قواعد للترتيب وتطبيع النماذج وخوارزمية ثنائية الاتجاه للنصوص من اليمين إلى اليسار مثل العربية والعبرية. من أجل التوافق بين المنصات، وخاصةً إذا تم استخدام النصوص ثنائية الاتجاه، لا يكفي دعم ISO/IEC 10646؛ يجب تنفيذ Unicode.
لدعم هذه القواعد والخوارزميات، يضيف Unicode العديد من الخصائص لكل حرف في المجموعة مثل الخصائص التي تحدد فئة ثنائية الاتجاه الافتراضية للحرف والخصائص التي تحدد كيفية دمج الحرف مع الأحرف الأخرى. إذا كان الحرف يمثل قيمة رقمية مثل الرقم الأوروبي "8" أو الكسر الشائع "¼"، تتم إضافة هذه القيمة الرقمية أيضًا كخاصية للحرف. يهدف Unicode إلى دعم هذه الخصائص للتعامل مع النصوص المتداخلة مع مزيج من اللغات.
تدعم بعض التطبيقات أحرف ISO/IEC 10646 ولكنها لا تدعم Unicode بشكل كامل. يمكن لتطبيق مثل هذا، Xterm ، عرض جميع أحرف ISO/IEC 10646 التي لها تعيين حرف إلى رمز واحد لواحد [ يحتاج إلى توضيح ] واتجاه واحد. يمكنه التعامل مع بعض علامات الجمع من خلال طرق الشطب البسيطة، لكنه لا يمكنه عرض العبرية (ثنائية الاتجاه)، أو الديفاناغارية (حرف واحد إلى العديد من الرموز) أو العربية (كلاهما ميزتان). تستخدم معظم تطبيقات واجهة المستخدم الرسومية روتينات رسم النصوص القياسية لنظام التشغيل والتي تتعامل مع مثل هذه البرامج النصية، على الرغم من أن التطبيقات نفسها لا تزال لا تتعامل معها بشكل صحيح دائمًا.
الاستشهاد بمجموعة الأحرف المشفرة العالمية
ISO/IEC 10646 ، وهو اقتباس عام غير رسمي لعائلة معايير ISO/IEC 10646، مقبول في أغلب النثر. وعلى الرغم من أنه معيار منفصل، فإن مصطلح Unicode يُستخدم بنفس القدر من التكرار، بشكل غير رسمي، عند مناقشة UCS. ومع ذلك، يجب أن تستشهد أي مراجع معيارية لـ UCS كمنشور بسنة الإصدار في شكل ISO/IEC 10646:{year} ، على سبيل المثال: ISO/IEC 10646:2014 .
العلاقة مع Unicode
منذ عام 1991، طور اتحاد Unicode ومنظمة ISO / IEC معيار Unicode ("Unicode") ومعيار ISO/IEC 10646 بالترادف. وتتطابق ذخيرة وأسماء الأحرف ونقاط الترميز في Unicode Version 2.0 تمامًا مع تلك الموجودة في ISO/IEC 10646-1:1993 مع أول سبعة تعديلات منشورة لها. وبعد نشر Unicode 3.0 في فبراير 2000، دخلت الأحرف الجديدة والمحدثة المقابلة إلى UCS عبر ISO/IEC 10646-1:2000. وفي عام 2003، تم دمج الجزأين 1 و2 من ISO/IEC 10646 في جزء واحد، والذي شهد منذ ذلك الحين عددًا من التعديلات التي أضافت أحرفًا إلى المعيار في تزامن تقريبي مع معيار Unicode.
- ISO/IEC 10646-1:1993 = Unicode 1.1
- ISO/IEC 10646-1:1993 بالإضافة إلى التعديلات من 5 إلى 7 = Unicode 2.0
- ISO/IEC 10646-1:1993 بالإضافة إلى التعديلات من 5 إلى 7 = Unicode 2.1 باستثناء علامة اليورو وحرف استبدال الكائن ، والتي تم تضمينها في التعديل 18
- ISO/IEC 10646-1:2000 = Unicode 3.0
- ISO/IEC 10646-1:2000 وISO/IEC 10646-2:2001 = Unicode 3.1
- ISO/IEC 10646-1:2000 بالإضافة إلى التعديل 1 وISO/IEC 10646-2:2001 = Unicode 3.2
- ISO/IEC 10646:2003 = Unicode 4.0
- ISO/IEC 10646:2003 بالإضافة إلى التعديل 1 = Unicode 4.1
- ISO/IEC 10646:2003 بالإضافة إلى التعديلات من 1 إلى 2 = Unicode 5.0 باستثناء أحرف الديفاناغارية GGA وJJA وDDDA وBBA، والتي تم تضمينها في التعديل 3
- ISO/IEC 10646:2003 بالإضافة إلى التعديلات من 1 إلى 4 = Unicode 5.1
- ISO/IEC 10646:2003 بالإضافة إلى التعديلات من 1 إلى 6 = Unicode 5.2
- ISO/IEC 10646:2003 بالإضافة إلى التعديلات من 1 إلى 8 = ISO/IEC 10646:2011 = Unicode 6.0 باستثناء علامة الروبية الهندية
- ISO/IEC 10646:2012 = Unicode 6.1
- ISO/IEC 10646:2012 = Unicode 6.2 باستثناء علامة الليرة التركية ، والتي تم تضمينها في التعديل 1
- ISO/IEC 10646:2012 = Unicode 6.3 باستثناء علامة الليرة التركية، والتي تم تضمينها في التعديل 1، وخمسة أحرف تحكم ثنائية الاتجاه (علامة الحرف العربي، والعزل من اليسار إلى اليمين، والعزل من اليمين إلى اليسار، والعزل القوي الأول، والعزل الاتجاهي البوب)، والتي تم تضمينها في التعديل 2
- ISO/IEC 10646:2012 بالإضافة إلى التعديلات 1 و2 = Unicode 7.0 باستثناء علامة الروبل
- ISO/IEC 10646:2014 بالإضافة إلى التعديل 1 = Unicode 8.0 باستثناء علامة Lari ، وتسعة رموز تعبيرية موحدة للغة CJK، و41 رمز تعبيري
- ISO/IEC 10646:2014 بالإضافة إلى التعديلات 1 و2 = Unicode 9.0 باستثناء Adlam و Newa ورموز التلفزيون الياباني و74 رمزًا تعبيريًا ورمزًا
- ISO/IEC 10646:2017 = Unicode 10.0 باستثناء 285 حرفًا من Hentaigana و3 أحرف من Zanabazar Square و56 رمزًا تعبيريًا
- ISO/IEC 10646:2017 بالإضافة إلى التعديل 1 = Unicode 11.0 باستثناء 46 حرفًا كبيرًا من الحروف الجورجية Mtavruli ، و5 أحرف موحدة CJK، و66 حرفًا تعبيريًا
- ISO/IEC 10646:2017 بالإضافة إلى التعديلات 1 و2 = Unicode 12.0 باستثناء 62 حرفًا إضافيًا
- ISO/IEC 10646:2020 = Unicode 13.0
- ISO/IEC 10646:2020 بالإضافة إلى التعديلات 1 = Unicode 15.0
- ISO/IEC 10646:2020 بالإضافة إلى التعديلات 1 و2 = Unicode 16.0
انظر أيضا
المعايير ذات الصلة:
- ISO/IEC 646 (المواقع من 0 إلى 127 هي نفسها الموجودة في ISO/IEC 10646 وUnicode، والأرقام 646 و10646 متشابهة)
- ISO/IEC 2022 تكنولوجيا المعلومات - بنية رمز الحرف وتقنيات التمديد
- رموز التحكم C0 وC1 وفقًا لمعيار ISO/IEC 6429
- ISO/IEC 8859 (المواقع من 0 إلى 255 في UCS وUnicode هي نفسها الموجودة في ISO/IEC 8859-1، المعروفة أيضًا باسم ISO Latin 1)
- ISO/IEC 14651 تكنولوجيا المعلومات – ترتيب ومقارنة السلاسل الدولية
- رموز ISO 15924 لتمثيل أسماء البرامج النصية (كل حرف مرتبط بأحد تلك البرامج النصية)
- مقارنة ترميزات Unicode
- قائمة مراجع كيانات الأحرف XML وHTML
- قائمة خطوط Unicode
- مجموعة الأحرف العالمية
- ISO/IEC JTC 1/SC 2
مراجع
- ^ بايك، روب (2003-04-03). "تاريخ UTF-8". مؤرشف من الأصل في 2016-05-23.
روابط خارجية
- المعايير المتاحة للجمهور (ISO) - تتضمن نسخة من ISO/IEC 10646:2020/Amd. 1:2023(E)
- ISO/IEC JTC1/SC2/WG2، مجموعة العمل المسؤولة عن ISO 10646
- الأسئلة الشائعة حول UTF-8 وUnicode
- الخطوط المجانية ومحرريها ووثائقها من SIL
- مثال بسيط ولكن ممتع لاختبار UTF-8 لمتصفح الويب الخاص بك وقدرات الخط.
- إصدارات مجموعة الأحرف الخاصة بـ ADA 9x من أكتوبر 1989، تتناول بعض التفاصيل حول ISO-10646 الأصلية قبل الدمج
