Ad

أصبحت لغة البرمجة الوحدة الأساسية لعالم التكنولوجيا اليوم وهي عبارة عن مجموعة الأوامر والتعليمات التي نقدمها للآلات لأداء مهمة معينة فعلى سبيل المثال، إذا أعطيت مجموعة من التعليمات لجمع رقمين، فسيقوم الجهاز بذلك نيابة عنك ويخبرك بالإجابة الصحيحة وفقًا لذلك. [١] في عالم الكمبيوتر، لدينا أكثر من 500 لغة برمجة لها تركيبها وميزاتها الخاصة. حيث تحتوي كل لغة برمجة على مجموعة فريدة من الكلمات الأساسية التي تُستخدم لإنشاء مجموعة من التعليمات. وقد تم تطوير آلاف من لغات البرمجة حتى الآن، ولكن لكل لغة غرضها المحدد. وتختلف هذه اللغات في مستوى قربها من لغة الإنسان وبعدها عن لغة الحاسوب. بناءً على هذا الاختلاف يمكن تصنيفها إلى فئتين:

لغات برمجة منخفضة المستوى

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

لغات برمجة عالية المستوى

هي لغات البرمجة التي تسمح للمبرمج بكتابة البرامج المستقلة وتعتبر عالية المستوى لأنها أقرب إلى اللغات البشرية وتشمل تقريباً جميع لغات البرمجة المتبقية. [٢]

لغة الآلة (machine language)

لغة الآلة هي اللغة الرقمية الأساسية التي يمكن للحاسوب فهمها وتنفيذ التعليمات من خلالها علاوةً على أن لغة الآلة هي اللغة الوحيدة التي يمكن لجهاز الحاسوب أن يقوم بتشغيلها مباشرة دون إجراء أي تحويلات أو تعديلات عليها. تتم قراءتها بواسطة وحدة المعالجة المركزية (CPU)، وتتكون من سلسلة أرقام ثنائية التشفير مؤلفة من أصفار وآحاد (0،1). وتُعتبر لغة الآلة لغة منخفضة المستوى ( Low-level Language ) فهي أولى لغات البرمجة وأصعبها. لكن دونها لا يمكن ترجمة اللغات عالية المستوى، فمثلاً يجب ترجمة لغة ++C إلى لغة الآلة قبل تشغيل الكود على الحاسوب. بينما لا تحتاج لغة الآلة لمترجم، ويفهمها الحاسوب بشكل مباشر. [٣]

مثال عن كود بلغة الآلة:

01001000 01100101 01101100 01101100 01101111 00100000 01010111 01101111 01110010 01101100 01100100

نظام التشفير الثنائي (Binary system)

النظام الثنائي هو عبارة عن مجموعة من التعليمات تستعمل لتتحكم بالحاسب، نتعامل في هذا النظام فقط مع رمزين فقط هما 0 و 1. والتي يفهمها الحاسب بشكل فيزيائي بعملية on/off للإشارات، حيث أن الرقم 1 يمثل الوضع الفعال أو الوضع on والرقم 0 يمثل الوضع غير الفعال أو الوضع off. وعند قراءة أي رقم في نظام العدِّ الثنائي فإنَّنا نقوم بقراءة كل رمز منفرداً. فعلى سبيل المثال الرقم 2 = (100) يقرأ واحد صفر صفر أو يقرأ من اليمين صفر صفر واحد، ولا يقرأ مئة. [٤] لتحويل أي عدد صحيح موجب من النظام العشري إلى الثنائي نستعمل طريقة الباقي Remainder Method الموضحة كالآتي:

  • قسم العدد العشري على الأساس 2.
  • أحسب باقي القسمة الذي يكون أما 1 أو 0.
  • استمر في عملية القسمة وتحديد الباقي حتى يصبح خارج القسمة الصحيح صفراً.
  • يتكون العدد الثنائي المطلوب من أرقام الباقي مقروءة من الباقي الأخير إلى الأول .
الباقي الناتجالعدد
022÷4
012÷2
111
بالتالي العدد 4 في التشفير الثنائي هو 100

وللتحويل من نظام ثنائي لنظام عشري نضرب بالأساس 2:

02^(0)×0
02^(1)×0
42^(2)×1
4=4+0+0 1×2^(2)+0×2^(1)+0×2^(0) 100
تحويل الرقم أربعة من ثنائي لعشري

لغة التجميع (Assembly)

هي أكثر من لغة منخفضة المستوى وأقل من اللغة عالية المستوى لذلك فهي لغة وسيطة حيث أنها تشبه لغة الآلة لكن أكثر تطوراً. تستخدم لغة التجميع الأرقام والرموز والاختصارات في بعض المواضع بدلاً من 0 و1. على سبيل المثال: للجمع والطرح والضرب تستخدم رموز مثل Add وsub وMul. [٥]
مثال عن كود بلغة التجميع:

bdos    equ    0005H    ; BDOS entry pointstart:  mvi    c,9      ; BDOS function: output string        lxi    d,msg$   ; address of msg        call   bdos        ret             ; return to CCPmsg$:   db    'Hello, world!$'end     start

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

  • لا يتم فهم لغة الآلة إلا بواسطة أجهزة الكومبيوتر أما لغة التجميع يفهمها البشر وليس الآلات.
  • يتم تمثيل بيانات لغة الآلة بالترميز الثنائي أو السداسي عشري أو الثماني أما في لغة التجميع يتم الاستعانة برموز سهلة الحفظ. لغة التجميع أسهل على البشر من لغة الآلة.
  • لا يمكن إجراء تعديلات أو إصلاح الأخطاء في لغة الآلة بينما يمكن التعديل في لغة التجميع بسهولة.
  • التنفيذ سريع في لغة الآلة لأن جميع البيانات موجودة بالفعل في تنسيق ثنائي أما في لغة التجميع فالتنفيذ بطيء مقارنةً بلغة الآلة. [٥]

المصادر:

  1. Geeksforgeek.org
  2. Javatpoint.com
  3. Sciencedirect.com
  4. Electronics-tutorials.ws
  5. Geeksforgeek.org
Tala Kadoun
Author: Tala Kadoun

Mechatronics student, Experienced freelance designer and writer with a proven history of working in article writing and mechanical design. Proficient in Python (a programming language), solidwork & Autocad.

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


تقنية هندسة برمجة

User Avatar

Tala Kadoun

Mechatronics student, Experienced freelance designer and writer with a proven history of working in article writing and mechanical design. Proficient in Python (a programming language), solidwork & Autocad.


عدد مقالات الكاتب : 8
الملف الشخصي للكاتب :

مقالات مقترحة

التعليقات :

اترك تعليقاً

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