تحويل | ترميز | حاسوب مركزي

> ebcdic | ibm | نظم تراثية <

// EBCDIC - ترميز تبادلي عشري ثنائي موسع للأحرف

0 حرف
0 حرف
[MAINFRAME]

حاسوب IBM رئيسي

ترميز الأحرف القياسي لأنظمة الحواسيب الرئيسية من IBM.

[CODE PAGES]

صفحات رموز متعددة

يدعم عدة صفحات رموز EBCDIC ومناطق لغوية مختلفة.

[LEGACY]

دعم الأنظمة التراثية

أساسي للتعامل مع بيانات الحواسيب الرئيسية القديمة.

>> معلومات تقنية

كيف يعمل 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)

الحرفASCIIEBCDIC (CP037)
A41C1
I49C9
J4AD1
R52D9
S53E2
Z5AE9
a6181
z7AA9
030F0
939F9
␠2040
.2E4B
!215A
\n0A25

// 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). تحقق منها بعد التحويل.

لغات أخرى