> ebcdic | ibm | نظم تراثية <
// EBCDIC - ترميز تبادلي عشري ثنائي موسع للأحرف
حاسوب IBM رئيسي
ترميز الأحرف القياسي لأنظمة الحواسيب الرئيسية من IBM.
صفحات رموز متعددة
يدعم عدة صفحات رموز EBCDIC ومناطق لغوية مختلفة.
دعم الأنظمة التراثية
أساسي للتعامل مع بيانات الحواسيب الرئيسية القديمة.
>> معلومات تقنية
كيف يعمل EBCDIC:
EBCDIC (الترميز التبادلي العشري الثنائي الموسع للأحرف) هو ترميز أحرف مكون من 8 بت طورته IBM. بخلاف ASCII الذي يجمع الأحرف ذات الصلة معًا، يوزّع EBCDIC الأحرف عبر مساحة الشيفرات نتيجة تطوره من ترميزات بطاقات الثقب. تدعم صفحات رموز EBCDIC المختلفة لغات ومناطق متعددة، وتُعد EBCDIC 037 الأكثر شيوعًا في الولايات المتحدة وكندا.
أمثلة مقارنة بين EBCDIC و ASCII:
تعيينات الأحرف (EBCDIC 037): الحرف | ASCII | EBCDIC ------|-------|-------- مسافة | 0x20 | 0x40 A | 0x41 | 0xC1 B | 0x42 | 0xC2 0 | 0x30 | 0xF0 1 | 0x31 | 0xF1 a | 0x61 | 0x81 b | 0x62 | 0x82 "ABC" في ASCII: 41 42 43 "ABC" في EBCDIC: C1 C2 C3 "123" في ASCII: 31 32 33 "123" في EBCDIC: F1 F2 F3
لماذا تستخدم EBCDIC:
- ▸مطلوب في بيئات الحواسيب الرئيسية من IBM
- ▸توافق مع الأنظمة القديمة
- ▸مشروعات ترحيل البيانات
- ▸تطوير COBOL وأنظمة الحاسوب الرئيسي
- ▸الحفاظ على البيانات التاريخية
>> الأسئلة الشائعة
ما هو EBCDIC؟
EBCDIC (الترميز التبادلي العشري الثنائي الموسع للأحرف) هو ترميز أحرف مكون من 8 بت طورته شركة IBM عام 1963. يُستخدم أساسًا في أنظمة الحواسيب الرئيسية والمتوسطة من IBM. على عكس ASCII، يعكس ترتيب أحرف EBCDIC إرثه من بطاقات الثقب.
لماذا يختلف EBCDIC عن ASCII؟
تطوّر EBCDIC من ترميزات بطاقات الثقب حيث تمثل الثقوب في مواضع معينة الأحرف المختلفة، مما أدى إلى ترتيب غير متجاور؛ فالأحرف ليست متسلسلة وهناك فجوات بين مجموعات الأحرف. أما ASCII فصُمم من الصفر لزيادة الكفاءة، لذا فهو أكثر منطقية للحوسبة الحديثة.
ما هي صفحات رموز EBCDIC؟
يحتوي EBCDIC على عدة متغيرات تُسمى صفحات الرموز لدعم لغات ومناطق مختلفة. من الأمثلة الشائعة: EBCDIC 037 (الولايات المتحدة/كندا)، و EBCDIC 500 (دولي)، و EBCDIC 875 (اليونان)، و EBCDIC 1047 (الأنظمة المفتوحة). لكل صفحة رموز تعيينات مختلفة لتلبية المتطلبات المحلية.
أين يُستخدم EBCDIC اليوم؟
لا يزال EBCDIC مستخدمًا على نطاق واسع في بيئات حواسيب IBM الرئيسية (z/OS، z/VM، z/VSE)، وفي أنظمة البنوك والتمويل، والأنظمة الحكومية القديمة، وتطبيقات COBOL. تحافظ العديد من المؤسسات على أنظمة EBCDIC لعمليات أعمال حرجة تعمل بشكل موثوق منذ عقود.
// مطابقة ASCII ↔ EBCDIC (CP037)
| الحرف | ASCII | EBCDIC (CP037) |
|---|---|---|
| A | 41 | C1 |
| I | 49 | C9 |
| J | 4A | D1 |
| R | 52 | D9 |
| S | 53 | E2 |
| Z | 5A | E9 |
| a | 61 | 81 |
| z | 7A | A9 |
| 0 | 30 | F0 |
| 9 | 39 | F9 |
| ␠ | 20 | 40 |
| . | 2E | 4B |
| ! | 21 | 5A |
| \n | 0A | 25 |
// EBCDIC في الشيفرة وسطر الأوامر
Linux iconv -f IBM037 -t UTF-8 input.dat > output.txt
iconv -f UTF-8 -t IBM037 input.txt > output.dat
dd dd conv=ascii < ebcdic.dat > ascii.txt
dd conv=ebcdic < ascii.txt > ebcdic.dat
Python data.decode('cp037') / text.encode('cp037')
Java new String(bytes, "Cp037")
>> المزيد من الأسئلة
س: لماذا لا تشكّل الحروف A–Z كتلة متصلة في EBCDIC؟
ج: نشأ EBCDIC من مناطق البطاقات المثقبة: A–I عند C1–C9 وJ–R عند D1–D9 وS–Z عند E2–E9 مع فجوات بينها، لذا لا يمكن التحويل بجمع بسيط.
س: أي صفحة رموز أختار؟
ج: الشائعة CP037 (الولايات المتحدة/كندا) وCP500 (دولية) وCP1047 (z/OS Unix). تختلف أساساً في رموز مثل [ ] ^ ! |. اختر الصفحة التي أُنشئت بها البيانات.
س: ماذا يحدث لفواصل الأسطر عند التحويل؟
ج: غالباً تكون ملفات الحاسوب المركزي سجلات ثابتة الطول بلا فواصل أسطر، ومواضع محارف نهاية السطر (LF/NEL) تختلف بين صفحات الرموز (مثلاً LF = 25 في CP037). تحقق منها بعد التحويل.