أحرف التحكم في طابعة لغة الآلة من IBM

كانت طابعات الحواسيب المركزية الأولى في الغالب طابعات خطية . توفر الطابعات الخطية مجموعة محدودة من الأوامر للتحكم في كيفية تقدم الورق عند طباعة الأسطر. يجب على التطبيق الذي يكتب التقارير والقوائم وما إلى ذلك المراد طباعتها تضمين هذه الأوامر في بيانات الطباعة. تُسمى أوامر الطباعة هذه، المكونة من حرف واحد، بأحرف التحكم في الطابعة .

مقدمة في أحرف التحكم في الطباعة

تُعدّ أحرف التحكم بالطابعة وأحرف التحكم بالعربة مصطلحاتٍ خاصة بأجهزة IBM الرئيسية، تُشير إلى المعنى الخاص الذي قد يحمله الحرف الأول في سطر النص القابل للطباعة. يُفسَّر الحرف الأول من كل سطر نص على أنه حرف تحكم أو أمر طباعة، بدلاً من كونه حرفًا يُراد طباعته، وذلك في حال تم تعيين سمة مُطابقة لمجموعة بيانات الطباعة ( مجموعة البيانات هي مصطلحٌ يُستخدم في أجهزة IBM الرئيسية للإشارة إلى ما يُعرف بالملف في أنظمة التشغيل الأخرى).

كيفية عمل أحرف التحكم في الطابعة

على الرغم من استبدال معظمها بنسخ إلكترونية لاحقاً، إلا أن طابعات الخطوط كانت تستخدم في البداية شريطاً ورقياً مثقوباً على شكل حلقة للتحكم في حركة الورق أثناء الطباعة. يُسمى هذا الشريط بشريط التحكم في العربة ، وهو مُثبّت على الطابعة. يتحرك شريط العربة الحلقي بشكل متزامن مع تدفق الورق المطوي .

تحتوي طابعات الخطوط على 12 مستشعرًا لتحديد 12 موضعًا مستقلًا على شريط التحكم في العربة. يُسمى كل موضع قناة ، مرقمة من 1 إلى 12. عند ثقب قناة، يُشير هذا الثقب إلى موضع على الصفحة يمكن للطابعة الانتقال إليه بسرعة بالتقدم حتى يستشعر مستشعر القناة المقابل الثقب. يُسمى هذا الانتقال إلى القناة رقم n .

تم تنفيذ الأوامر بحيث يمكن الانتقال إلى كل قناة من القنوات الاثنتي عشرة. فبدلاً من كتابة أسطر طباعة فارغة، يمكن للتطبيقات ببساطة الانتقال إلى قناة محددة مسبقًا إذا لم يكن هناك ما يُكتب بين الموضع الحالي والموضع المستهدف، مما يُحسّن الأداء بشكل كبير في تلك الحالة.

بالإضافة إلى أوامر الانتقال إلى القناة ، توجد أوامر أخرى يفسرها الطابعة إما للبقاء على السطر الحالي أو لإضافة مسافة سطر واحد أو سطرين أو ثلاثة أسطر. بالبقاء على السطر الحالي، يمكن إنشاء ما يلي:

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

سيؤدي توجيه الطابعة للانتقال إلى قناة غير مثقوبة إلى استمرارها في سحب الورق بسرعة عالية. قد يكون سبب ذلك عدم تطابق الشريط المستخدم مع الشريط الذي يتوقعه التطبيق.

المعنى الخاص للقناة 1

بحسب الاصطلاح، يُرتبط موضع كتابة السطر الأول على ورقة الطباعة بالقناة 1. على سبيل المثال، إذا كان يجب أن يكون السطر الأول من النص دائمًا على السطر 3 الفعلي لنموذج معين، فيجب ثقب القناة 1 في السطر 3 من شريط التحكم في العربة.

بحسب العرف، تنتقل تطبيقات IBM الرئيسية دائمًا إلى القناة 1 عند بدء صفحة منطقية جديدة.

القناة 12 أقل شيوعًا، ولكنها تشير عادةً إلى سطر على الصفحة حيث يمكن طباعة تذييل .

أنواع أحرف التحكم في الطابعة

قد تحتوي مجموعات بيانات الطباعة على أنظمة تشغيل الحواسيب المركزية من IBM على أحد نوعين من أحرف التحكم في الطابعة:

يجب أن تسمح السمة الخاصة بتحديد وجود أحرف التحكم في الطباعة، والتي تُعد جزءًا من سمة تنسيق السجل ( المعروفة أيضًا باسم RECFM)، بنوعين مختلفين:

  • يحدد RECFM=..A أن مجموعة البيانات تحتوي على أحرف تحكم ASA.
  • يحدد RECFM=..M أن مجموعة البيانات تحتوي على أحرف تحكم آلة IBM.

أحرف التحكم ASA

أحرف التحكم ASA هي أوامر منطقية للطابعة. تُحدد هذه الأحرف مقدار تقدم الورقة قبل طباعة سطر النص الحالي. جميع أحرف التحكم ASA قابلة للعرض. لا تفهم الطابعات هذه الأحرف بنفسها، لذا يجب على برنامج تشغيل الطابعة ترجمتها إلى أوامر الطباعة المناسبة عند إرسال بيانات الطباعة إليها.

أحرف التحكم الآلي من IBM

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

الفرق الرئيسي بين ASA و Machine Control Characters

قد يكمن الاختلاف الرئيسي بين مجموعتي أحرف التحكم في الطابعة في قابلية نقل أحرف التحكم ASA مقابل اعتماد أحرف التحكم الخاصة بالآلة على مكوناتها المادية. وكون أحرف التحكم ASA تُكتب قبل الكتابة ، بينما تُكتب أحرف التحكم الخاصة بالآلة بعدها، قد يتطلب تحويل بعض تدفقات البيانات.

دعم اللغة للتحكم في الطابعة

تضع العديد من لغات البرمجة حرف التحكم المطلوب في البايت الأول من السطر المراد طباعته. كما توفر لغتا COBOL و PL/I طريقة مستقلة عن النظام لتحديد عناصر التحكم في الطابعة. يقوم المترجم أو وقت التشغيل بترجمة هذه الخيارات إلى حرف التحكم المناسب.

كوبول

تستخدم لغة كوبول الصيغة التالية WRITE record-name AFTER ADVANCING n Lines.: حيث يمثل record-name اسم المنطقة التي تحتوي على السطر، و n هو عدد الأسطر. BEFORE ADVANCINGويمكن استخدام أو BEFORE|AFTER ADVANCING TOPللانتقال إلى أعلى صفحة جديدة. [ 1 ]

PL/I

يستخدم PL/I الصيغة PUT SKIP(n) ...لتجاوز عدد n من الأسطر قبل الطباعة، أو PUT PAGE ...للانتقال إلى صفحة جديدة.

قائمة أحرف التحكم في الطباعة لآلات IBM

حددت شركة IBM مجموعتين من أوامر الطابعة، وبالتالي تتوفر مجموعتان من رموز التحكم بالطابعة. لا ترسل المجموعة الأولى من الأوامر أي بيانات للطباعة إلى الطابعة، بل ترسل فقط تعليمات لتحريك الورق. وتُسمى هذه الأوامر بالأوامر الفورية . أما المجموعة الثانية من الأوامر، فترسل البيانات المراد طباعتها على السطر الحالي بالإضافة إلى تعليمات لتحريك الورق إلى الطابعة. تجدر الإشارة إلى أنه على عكس رموز التحكم ASA، فإن رموز التحكم بالطباعة في أجهزة IBM تطلب من الطابعة أولاً طباعة البيانات على السطر الحالي، ثم ثانياً تحريك الورق.

أوامر فورية

لا ترسل هذه الأوامر أي بيانات إلى الطابعة، بل تطلب منها فقط تحريك الورق.

رمز التحكمفعل
x'03'لا توجد عملية جراحية.
x'0B'مسافة سطر واحد فوري
x'13'المسافة 2 سطر فوري
x'1B'المسافة 3 سطر فوري
x'8B'انتقل إلى القناة 1 فوراً
x'93'انتقل إلى القناة 2 فوراً
x'9B'انتقل إلى القناة 3 فوراً
x'A3'انتقل إلى القناة 4 فوراً
x'AB'انتقل إلى القناة 5 فوراً
x'B3'انتقل إلى القناة 6 فوراً
xLBBانتقل إلى القناة 7 فوراً
x'C3'انتقل إلى القناة 8 فوراً
x'CB'انتقل إلى القناة 9 فوراً
x'D3'انتقل إلى القناة 10 فوراً
x'DB'انتقل إلى القناة 11 فوراً
x'E3'انتقل إلى القناة 12 فوراً

أوامر الكتابة والمسافة

تطلب أوامر الكتابة والمسافة من الطابعة كتابة البيانات على السطر ثم تحريك الورقة.

رمز التحكمفعل
x'01'اكتب بدون مسافات
x'09'اكتب سطرًا واحدًا مع ترك مسافة بين الأسطر
x'11'اكتب سطرين مع ترك مسافة بينهما
x'19'اكتب ثلاثة أسطر مع ترك مسافة بينها
x'89'اكتب وانتقل إلى القناة 1
x'91'اكتب وانتقل إلى القناة 2
x'99'اكتب وانتقل إلى القناة 3
x'A1'اكتب وانتقل إلى القناة الرابعة
x'A9'اكتب وانتقل إلى القناة 5
x'B1'اكتب وانتقل إلى القناة 6
x'B9'اكتب وانتقل إلى القناة 7
x'C1'اكتب وانتقل إلى القناة 8
x'C9'اكتب وانتقل إلى القناة 9
x'D1'اكتب وانتقل إلى القناة 10
x'D9'اكتب وانتقل إلى القناة 11
x'E1'اكتب وانتقل إلى القناة 12

انظر أيضاً

مراجع

  1. شركة آي بي إم (أغسطس 2009). مرجع لغة Enterprise COBOL لنظام التشغيل z/OS (ملف PDF) . الصفحات 478-482 . تم الاطلاع عليه في 30 يونيو 2020 .