Menu Close

لغة الآلة .. الأساس الأول لجميع لغات البرمجة .. إبدأ من هنا.

شارك هذا الموضوع

ما هي لغة الآلة Machine Language؟

لغة الآلة، الفرق بينها وبين لغة التجميع، أنواع لغات البرمجة

كتبت: آية مصطفى

لغة الآلة أو كود الآلة هي لغة برمجة بدائية، كما أنها تعرف بإحدى لغات البرمجة منخفضة المستوى التي لا يفهمها إلا وحدة المعالجة المركزية لجهاز الكمبيوتر(CPU).

لغة الآلة
لغة الآلة

انضم لكوكب المعرفة 

يمكننا أيضا تعريف كود الآلة بأنه لغة رقمية الهدف منها هو التشغيل السريع، كما يمكن اعتبارها أيضا أنها أقل مستوى مترجم لبرنامج الكمبيوتر. 

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

لغات البرمجة  Programming Languages 

لكي نتمكن من فهم ما المقصود بلغة الآلة، علينا أولا التعرف على لغات البرمجة فهي تعد البداية أو المدخل إلى عالم الكمبيوتر والبرمجيات.

يمكن تعريف كلمة البرمجة ببساطة على أنها كتابة بعض الأوامر والتعليمات لتوجيه أي جهاز إلكتروني مثل الكمبيوتر وإعلامه بكيفية تنفيذ المهام المطلوبة منه أو التعامل مع البيانات.

وبناء على ذلك تعرف لغة البرمجة بأنها مجموعة من التعليمات والأوامر التي يتم كتابتها وفقا لقواعد محددة من قبل لغة البرمجة ثم تمر هذه التعليمات بعدة مراحل حتى يتم تنفيذها على الجهاز.

تتبع عمليات البرمجة قواعد معينة تختص باللغة التي يختارها المبرمج، كما أن لكل لغة خصائص معينة تميزها وتجعلها مناسبة لنوع البرنامج وأداء المهام المطلوبة والمحددة منه.

قد تطورت البرمجيات Software وفقا لتطور جهاز الكمبيوتر Hardware، في الأربعينات والخمسينات كان جهاز الكمبيوتر ضخما وتوجد به العديد من الصمامات الإلكترونية التي يعمل بها.

لذلك كانت لغات البرمجة المستخدمة حينها صعبة ومعقدة فهي عبارة عن سلسلة كبيرة من الأعداد التي تكتب على هيئة أكواد طويلة وتنحصر هذه الأعداد في رقمين فقط هما (0,1 ) وتعرف هذه اللغة لغة الآلة أو اللغة الثنائية.

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

الحاسوب هو كغيره من الأجهزة الكهربائية التي لا يمكنها فهم إلا لغة الآلة وهي اللغة الثنائية والتي تعتمد على نظام عد ثنائي 0 و 1 والتي تناظر ON/OFF التي يستخدمها الإنسان لإيقاف وتشغيل الآلة. 

يحول الحاسوب اللغة التي تكتب بها البرمجة إلى 0 و1 لكي يمكنه تنفيذ البرنامج فهو لا يفهم لغة البشر، لذلك ظهرت الحاجة إلى تطوير وابتكار لغات جديدة يتمكن الحاسوب من فهمها.

توفر لغة البرمجة قواعد أساسية يتم الرجوع إليها عند كتابة برنامج معين، تساعد هذه القواعد في تنظيم المعلومات والتعامل معها لأداء الوظائف المطلوبة وتتمثل هذه الأسس والقواعد في التصميم الخاص وتخزين المعلومات وتنظيم الأوامر وسيرها.

أنواع لغات البرمجة

تعد لغة البرمجة وسيط بين الإنسان والجهاز الإلكتروني، فهي تساعد المبرمج في كتابة برنامجه في صورة أوامر وتعليمات يفهمها الحاسوب لكي ينفذ المهام المطلوبة منه.

توجد العديد من لغات البرمجة المستخدمة، كما أنها تقسم على حسب قربها من لغة البشر أو لغة الآلة من حيث القواعد التي تستخدم في صياغتها والمفردات المستخدمة.

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

يمكن تقسيم لغات البرمجة وفقا لقربها من لغة الإنسان كالآتي:

  • لغات منخفضة المستوى وهي متقاربة من لغة الآلة مثال لها هو لغة التجميع Assembly Language 
  • لغات عالية المستوى وهي متقاربة من لغة البشر ومثال لها سي++ و الجافا و السي شارب

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

كما توجد أيضا بعض اللغات التي تعد أكثر عمومية وشمولية حيث أنها تعمل بصورة مستقلة عن نوع الآلة مثل لغة البرمجة جافا فهي تعمل مع آلة افتراضية.

لغة الآلة Machine Language 

لغة أو كود الآلة Machine Code هي ببساطة اللغة التي يفهمها الكمبيوتر ويقوم بتحويل كل المدخلات لها لكي يمكنه تنفيذها.

فهي عبارة عن برنامج يمكن تنفيذه عن طريق وحدة المعالجة المركزية CPU ويكتب فيه تعليمات وأوامر كود الآلة، وكل تعليمة تعني مهمة معينة مثل القفز أو التحميل أو عمليات الحساب والمنطق.

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

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

في الغالب يتم كتابة البرامج باستخدام لغات برمجة عالية المستوى أو بلغة التجميع، ومن ثم يتم ترجمة وتحويل الكود إلى كود الآلة.

يتم ذلك بمساعدة بعض الأدوات مثل الرابط والمترجم والمجمع، ولكن توجد برامج مفسرة أي لا يمكن تحويلها إلى كود الآلة.

من الجدير بالذكر أن لكل وحدة معالجة مركزية CPU لغة آلة خاصة بها، كما يقرأ المعالج مجموعة التعليمات التي تحدد المهمة المطلوب تنفيذها من CPU ويتعامل معها. 

مفردات لغة الآلة ونظام العد الثنائي 

تمتلك لغات البرمجة عدة مقومات والتي تعرف بمفردات اللغة، وبالنسبة للغة الآلة تتمثل مفرداتها في مجموعة الأرقام (0,1)، وهو نظام العد الثنائي Binary Counting System.  

ويعرف نظام العد الثنائي بأنه مجموعة التعليمات التي تستخدم للتحكم في جهاز الحاسوب، والتي تتعامل مع الرقمين 0 و 1 ويفهم الجهاز هذه المفردات بشكل فيزيائي على أنها إشارة ON أو OFF.

من الجدير بالذكر أن نظام العد الثنائي هو الوحدة الأساسية لحساب أو قياس كمية المعلومات الموجودة في أجهزة الحاسوب والاتصالات الرقمية.

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

تقوم وحدة المعالجة المركزية بمعالجة البيانات الثنائية، وبعد إتمام عمليات المعالجة، يتم إرسال المخرجات إلى Operating system وهو نظام التشغيل في الجهاز.

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

البتات Bits

البت bit أو الثنائية هي أصغر وحدة حاملة للمعلومات، وهي تعبر عن الأرقام بالنسبة لنظام العد الثنائي Binary Digital، حيث يتم تخزين المعلومات في أجهزة الحاسوب ومعالجتها في بتات Bits.

التعريف العملي لوحدة البت في أجهزة الحاسب والاتصالات الرقمية هو النبضة الكهربائية والتي تكون إما موجب أو سالب والتي يرمز لها بإحدى الرقمين 0 أو 1.

كما أنها تمثل بدائرة كهربائية في حالة أن الدائرة مفتوحة يكون المفتاح 0 وعندما تكون مغلقة يكون المفتاح 1، حيث يمثل البت خانة واحدة فقط من نظام العد الثنائي إما 0 أو 1.

تسمى كل 8 بتات بالبايت Byte، كما يوجد لها عدة مضاعفات مثل كيلو بايت وميجا بايت وجيجيا بايت وتيرابايت وبيتابيت وإكسابايت وزيتابايت ويوتابيايت.

يستخدم البايت في كود الآلة في تمثيل العمليات المختلفة مثل القسمة والطرح والجمع والضرب والقفز وغيرهما من العمليات الأخرى.

ما المقصود ببرامج الحاسوب 

برامج الحاسوب أو البرمجيات Software سلسلة مرتبة من الأوامر والتعليمات والتي تشتمل على لغة الآلة، فهي سميت بهذا الاسم لكي تتميز عن مكونات أجهزة الحاسوب Hardware.

في الغالب يتم كتابة التعليمات والأوامر باستخدام لغات برمجة عالية المستوى لكي يسهل فهمها والتعامل معها فهي أقرب للغة البشر من كود الآلة التي يفهمها الحاسوب.

يتم تحويل الجمل المكتوبة بلغة البرمجة عالية المستوى وتنفيذها بصورة منفردة بواسطة المفسر Interpreter، كما يمكن تنفيذها كلها مرة واحدة بواسطة المترجم Compiler.

الشفرة التي يتم الحصول عليها من عملية التحويل تسمى لغة الآلة أو شفرة الهدف Target Blade، يمكن أيضا كتابة البرنامج بلغة التجميع Assembly. 

ما الفرق بين لغة الآلة ولغة التجميع

تنقسم لغات البرمجة إلى لغات عالية المستوى وهي التي يفهمها البشر و لغات منخفضة المستوى وهي لغة الآلة التي يفهمها جهاز الحاسوب وتعد لغة التجميع هي الوسيط بينهما.

يتلخص الفرق بين كود الآلة ولغة التجميع في معرفة مزايا وعيوب كل منهما، كما تعرفنا على لغة الآلة سوف نتعرف على لغة التجميع لكي نفرق بينهما.

لغة التجميع Assembly Language 

هي لغة برمجة متقاربة من لغة الآلة فهي تعتبر وسيط بينها وبين لغات البرمجة عالية المستوى، حيث يقوم المجمع بتحويلها إلى كود الآلة لتقوم وحدة المعالجة المركزية CPU بتنفيذها.

يمكن تعريفها أيضا بأنها لغة برمجة أكثر أو أعلى من لغات البرمجة منخفضة المستوى وأقل من لغات البرمجة عالية المستوى فهي وسيط بينهما.

بالإضافة إلى أنها تستخدم الاختصارات والأرقام والرموز لتمثيل البيانات مثل رموز الجمع والضرب والطرح Add, Sub, Mul, End, Mov فهي لغة يفهمها الإنسان ولكن لا تفهمها وحدة المعالجة المركزية للحاسوب.

يمكن تلخيص الفرق بين كود الآلة ولغة التجميع في النقاط الآتية:

وجه المقارنة

لغة الآلة

لغة التجميع

التعريف لغة برمجة تفهمها وحدة المعالجة المركزية لغة ترجمة يفهمها البشر
تمثيل البيانات يتم تمثيلها بنظام العد الثنائي 0 و1 يتم تمثيلها باستخدام الرموز والأرقام والاختصارات مثل Add, End, Mul
التعديلات من الصعب إجراء التعديلات عليها وتصحيح الأخطاء يمكن إجراء التعديلات في لغة التجميع وتصحيح الأخطاء
الحفظ توجد صعوبة في حفظ لغة الآلة، كما يصعب تعلمها لم تكن هناك صعوبة في حفظ لغة التجميع وذلك لأنها تستخدم الأرقام والحروف الهجائية
التنفيذ سهلة التنفيذ وذلك لأن جميع البيانات موجودة في تنسيق العد الثنائي يتم التنفيذ ببطء
المترجم لم تحتاج لمترجم فهي اللغة التي تفهمها الآلة تحتاج إلى مجمع ليقوم بتحويل اللغة إلى اللغة التي يفهمها الحاسوب
الاعتماد تعتمد على الأجهزة الإلكترونية تعمد على الآلة فهب غير محمولة
النوع  لغة برمجة منخفضة المستوى تعد لغة برمجة منخفضة المستوى

 

ما هي أهمية لغة الآلة وفيما تستخدم؟

يمكن تقسيم البرامج المكتوبة على جهاز الحاسوب إلى نوعان هما System Programs والذي يعرف ببرامج النظام و Applications Program ويعرف ببرنامج التطبيق.

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

سواء كانت المهام المطلوبة لوائح جرد أو أمر تحكم ، كما ينطبق ذلك أيضا على المعالجات والطلبات التجارية.

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

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

بسبب صعوبة العمل في مستوى برمجة عالي، يتم استخدام لغة التجميع من أجل إتمام عمليات كتابة برنامج التحكم في INPUT و OUTPUT.

يتم استخدام Machine Language لمعالجة العديد من المشكلات، كما أنها تتحكم في وحدات المعالجة المركزية وتعالج الشروط الاستثنائية، حيث أنها تستخدم على أنها الأكثر فعالية.

إلى هنا عزيزي القارئ نكون وصلنا إلى نهاية مقالنا بعد أن تعرفنا على لغة الآلة بشكل تفصيلي، كما تعرفنا أيضا على الفرق بينها وبين لغة التجميع.

إذا كنت ترغب في معرفة معلومات أكثر حول لغات البرمجة شاركنا برأيك من خلال ترك تعليقك، يهمنا معرفة رأيك.



لكل مبرمج مبتدىء أومحترف ..الربح من البرمجة ب 12 طريقة مضمونةلكل مبرمج مبتدىء أومحترف ..الربح من البرمجة ب 12 طريقة مضمونة

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

إقرأ الموضوع كاملا

إقرأ أيضا ...

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *