انتقل إلى المحتوى

أسكي

هذه المقالة اختصاصية وهي بحاجة لمراجعة خبير في مجالها.
من ويكيبيديا، الموسوعة الحرة

هذه نسخة قديمة من هذه الصفحة، وقام بتعديلها JarBot (نقاش | مساهمات) في 03:02، 9 ديسمبر 2020 (بوت:تدقيق إملائي V1.8). العنوان الحالي (URL) هو وصلة دائمة لهذه النسخة، وقد تختلف اختلافًا كبيرًا عن النسخة الحالية.

هناك 95 رمز ASCII يمكن طباعتها، تحمل الأرقام من 32 إلى 126.

أسكي (ASCII، (تُلفظ بالإنجليزية: /ˈæski/) ASS-kee)[1] هي مجموعة رموز ونظام ترميز مبني على الابجدية اللاتينية بالشكل الذي تستخدم به في الإنجليزية الحديثة ولغات غرب أوروبية أخرى. من أكثر الاستخدامات شيوعا للنصوص المكتوبة بالآسكي، استخدامها في أنظمة الحاسوب، وفي أجهزة الاتصالات وأنظمة التحكم التي تتعامل مع نصوص.

يعرّف نظام ASCII القياسي الرموز القابلة للطباعة الآتية، مرتبة حسب قيمة ASCII الخاصة بها:

!"#$%&'()*+,-./0123456789:;<=>?
@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_
`abcdefghijklmnopqrstuvwxyz{|}~

تعريف معيار ASCII

يعتبر معيار ASCII من بين أنظمة تمثيل الرموز في الحاسوب، ويحدد علاقة تناظر بين قيمة رقمية لتتابع البتات وبين رمز أو رسم مستخدم في اللغة المكتوبة. إذ أن الحواسيب تتعامل فقط بإشارات كهربائية إما صفر أو واحد، أي البت (bit) في لغة البرمجة، ويمكن أن تمثل هذه البتات بتسلسلها أرقاما بالنظام الثنائي، ومجموعة من ثمانية بتات تمثل البايت (بالإنكليزية: Byte، بالفرنسية: Octet). و من ثمة ظهرت الحاجة للتعبير عن الحروف والرموز بواسطة الأرقام الثنائية.

يُعَرِّفُ معيار ASCII مجموعة 128 رمزا أسندت لها أعداد ترتيبية من 0 إلى 127 و تم ترميزها بالنظام الثنائي من 0000000 إلى 1111111، وبالتالي تكفي 7 بتات للتعبير عنها. لذا يعد معيار ترميز 7 بتات. لكن بما أن الحواسيب تتعامل مع البايت (أي 8 بتات) فيقع التعبير عن رموز ASCII ببايت كامل يكون فيه البت الثامن غير مستعمل.

إختلفت طرق التعامل مع البت الثامن، فبينما فضلت جل الحواسيب إسناد صفر له (و هو الحل الشائع)، قامت بعض الأنظمة (مثل Prime Computer التي شغلت نظام تشغيل PRIMEROS) بإسناد واحد له، وفي أنظمة أخرى تم إستعماله بت تكافؤ للتأكد من خلو الاتصالات من الأخطاء، أو لأغراض تختلف حسب الهدف من الجهاز المستخدم. و لاحقا، ظهرت إستعمالات في معايير ترميز إمتدادية، للتعبير عن مزيد الرموز والحروف التي يعجز ASCII عن التعبير عنها.

يكتفي معيار ASCII بترجمة تسلسل من البتات إلى حرف أو رمز معين. بالتالي، لن يعبر عن شكل ظهور النصوص أو ترتيبها، وتلك الأمور تقع على عاتق وسائل أخرى مثل اللغات الترميزية (أي لغات توصيف النص) على غرار HTML و غيره.

قائمة الرموز

بعض هذه الرموز لا يمكن إظهارها، وهي الرموز عدد 0 إلى 31 و كذلك الرمز 127. تستعمل هذه الرموز أوامر تحكم لطرفيات الحاسوب، فعلى سبيل المثال يعد الرمز 127 أمر الحذف، بينما الرمز 7 أمر إشارة صوتية.

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

(للتعويض)

حدود إستعمالات ترميز ASCII

يخلو نظام ترميز ASCII من الرموز الكافية لإمكانية تمثيل النصوص بلغات غير اللغة الإنكليزية، كما أن كمية الرموز الخاصة التي يحتويها محدودة، مما أدى لضرورة استعمال أنظمة ترميز نصوص مختلفة لغيرها من اللغات على غرار العربية أو الروسية أو لغات أوروبا الشرقية وغيرها الكثير.

ظهرت على ثلاث فترات، مقاربات بديلة مختلفة لتوطين ترميز النصوص جراء حدود المعيار الأمريكي ASCII:

  • ظهور معايير محلية، طول الرمز فيها بايت واحد، وهي أسهلها إنشاء. على سبيل المثال يذكر معيار ASMO 449 للغة العربية الذي هو معيار ASCII بتعويض الحروف اللاتينية بمقابلات عربية. من مساوئ هذه الطريقة أن كم الرموز الذي يمكن التعبير عنه محدود بهذا المعيار، ويجب توضيح الترميز لزوما خارج النص.
  • ظهور معايير إمتدادية، يكون للنص فيه سياق، وبإختلاف السياقات تكون لنفس القيمة رموز مختلفة (مثل أسرة معايير ISO/CEI 2022). على سبيل المثال نذكر فكرة "صفحات الترميز" (code page) على غرار ويندوز 1252 للغة العربية. من مساوئ هذه الطريقة أنها تسبب تضاربا في تأويل النص بين المعايير المختلفة.
  • ظهور معايير شاملة لعدة لغات وتستعمل عدة بايتات، وكان معيار يونيكود الكفيل بهذا لكونه يغطي العدد الأكبر من اللغات.

في خضم هذه المراحل، تمت إعادة تصنيف وتسمية معيار ASCII الأصلي قبل كل تلك البدائل الجديدة إلى الأسماء التالية:

  • ANSI X3.4:1986 (و أحيانا يسمى، خطأَ، "معيار ANSI" مع أن اللفظة تعني في الأصل "المعهد الوطني الأمريكي للمقاييس" و هذا المعيار كان قرارا منه)
  • ISO/CEI 646-US
  • صفحة الترميز Code Page IBM 367
  • US-ASCII ، و هي تسمية عامة يمكن أن تحيل على أي من الأشكال السابقة لهذا المعيار.

مازال استعمال ASCII دارجا إلى اليوم في الحواسيب على نطاق واسع، وبعض خدمات البريد الإلكتروني (MIME) و رسائل الهاتف SMS مازالت تستعمل النسخة الأصلية بطول 7 بتات للحرف بدل 8. كما أن أكثر المعايير البديلة الرائجة حاليا تحافظ على التوافق مع قيم رموزه.

تاريخ الآسكي

رجوعاً إلى أوائل الستينيات، لم يكن هناك ما يعرف بنظام الآسكي. من هذا المنطلق كانت الشركات المصنعة لأجهزة الحاسب تؤدي مهامها بأي طريقة كانت ترى بأنها مناسبة لتأدية الغرض. أدى ذلك إلى حدوث ما يلي:

  • لم يكن هناك وسيلة لاتصال أجهزة الكمبيوتر المختلفة مع بعضها البعض.
  • كان لكل شركة مصنعة طرقها الخاصة المستخدمة في تمثيل الحروف الأبجدية والأرقام وأمثالها.
  • كان هناك أكثر من 60 طريقة مختلفة في الوقت ذاته لتمثيل هذه الحروف والأرقام وأي رموز محددة.
  • كان لشركة IBM مع اختلاف معداتها تسع مجموعات أحرف مختلفة.
  • كان هناك شخص يدعى بوب بيمير Bob Bemer _الذي عمل لصالح شركة آي بي إم (شركة أعمال دولية) مدة من الزمن-، وقد لعب دورا هاما في تأسيس نظام الآسكي ابتداء من عام 1960، وقد لقب تبعا لذلك ب"والد الآسكي".

مثال: إيجاد قيمة في جدول الآسكي

وفقاً لقانون شفرة (الكود) الآسكي، الآن يمكننا تحويل أي حرف أو أي علامة من علامات الترقيم التي تكتب من قبل المستخدم إلى عدد؛ وبهذا يصبح من الممكن لجهاز الحاسب إدراكها واستيعابها.

على سبيل المثال الحرف A يمكننا ترجمته إلى عدد بواسطة استخدام جدول الآسكي ليصبح معادلاً العدد 65.

مثال آخر "كتابة كلمة java " :

Int j = 106

Int a = 97

Int v = 118

Int A = 65

بعض الشفرات كثيرة الاستخدام

  1. 10#13 —إنشاء سطر جديد
  2. 7 — أصوات النظام للحاسب (عند كتابة وطباعة الحروف)
  3. 8 — مسافة للخلف
  4. 127 —الحذف
  5. 27 —الهروب
  6. 32 —مسافة
  7. 160 — a ( الحروف الأبجدية عموما )
  8. 163 — c
  9. 65 — A
  10. 68 — C
  11. 48— 0 ( الأعداد عموما )

انظر أيضا

مراجع

  1. ^ "Pronunciation for ASCII"، Merriam Webster (audio)، مؤرشف من الأصل في 2019-12-08، اطلع عليه بتاريخ 2008-04-14 {{استشهاد}}: |archive-date= / |archive-url= timestamp mismatch (مساعدة).
	http://ascii-world.wikidot.com/history.
	http://www.asciitable.com/ .
	http://text-symbols.com/ascii/.