البرمجة المثلى

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

استخدمت معظم الحواسيب القديمة نوعًا من الذاكرة التسلسلية، وتحديدًا ذاكرة خط التأخير أو الأسطوانات المغناطيسية . على عكس ذاكرة الوصول العشوائي في الحواسيب الحديثة، تُتاح الكلمات في الذاكرة التسلسلية واحدة تلو الأخرى؛ ويعتمد الوقت اللازم للوصول إلى كلمة معينة على "المسافة" بينها وبين الكلمة التي تُقرأ حاليًا. إذا كان خط تأخير معين يحتوي على n كلمة، فسيكون متوسط ​​وقت قراءة كلمة ما هو n /2 من زمن الكلمة. بدون ترميز مثالي، سيقضي هذا الجهاز معظم وقته في انتظار التعليمات والبيانات دون فائدة. [ 1 ]

للتغلب على هذه المشكلة، تضمنت العديد من الحواسيب، ولا سيما حاسوب آلان تورينج ACE وما تلاه من حواسيب، حقلاً في صيغة التعليمات يُحدد عنوان التعليمات التالية المراد تنفيذها. يقوم المبرمج الذي يستخدم الترميز الأمثل بالبحث عن الوقت اللازم لتنفيذ التعليمات الحالية، وحساب المسافة التي سيقطعها نظام الذاكرة خلال ذلك الوقت، ثم يضع التعليمات التالية للبرنامج في ذلك الموقع. وبالتالي، عند اكتمال التعليمات الحالية وبحث الحاسوب عن التعليمات التالية كما هو محدد في التعليمات، يكون موقع الذاكرة قد وصل للتو ويمكن قراءته فوراً. على سبيل المثال، إذا قام مبرمج ببرمجة ADDتعليمات في العنوان 400، وكانت هذه ADDالتعليمات تتطلب 4 أضعاف وقت الكلمة للتنفيذ، فسيقوم المبرمج بتعيين حقل "العنوان التالي" للتعليمات إلى 404، ويضع التعليمات التالية هناك.

في الولايات المتحدة، كان استخدام الترميز الأمثل شائعًا على جهاز IBM 650 [ 2 ] وجهاز Bendix G-15 . وكان كلا الجهازين مزودين بمجمعات محسّنة (SOAP لجهاز IBM، وPOGO لجهاز Bendix) قادرة على أتمتة هذه المهمة.

انظر أيضاً

  • تم وصف ميل كاي ، الذي ألف جزءًا ذكيًا بشكل خاص من البرمجة المثلى التي دخلت في تاريخ الكمبيوتر، في قصة ميل .

مراجع

  1. دليل IBM SOAP .
  2. ^ كوجل ، هيرب (22 أكتوبر 2001). "آي بي إم 650" . دكتور دوب.