من المعروف أن أحد المطورين هو من يكتب الشفرة وكيف يتواصل البشر مع أجهزة الكمبيوتر. ومع ذلك ، هل فكرت يومًا في كيفية تفاعل البرامج مثل الكود مع أجهزة الكمبيوتر مثل وحدة المعالجة المركزية (وحدة المعالجة المركزية)؟ إذا كان الجواب نعم ، فأنت في المكان الصحيح.

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

ما هو الثنائي؟

النظام الثنائي هو نظام رقم أساس 2 تستخدمه المعالجات والذاكرة لتنفيذ التعليمات البرمجية. يمكن أن تكون الأرقام الثنائية 1 أو 0 فقط ، ومن هنا جاء اسمها. إذا جمعت ثمانية أرقام ثنائية (00000000) ، فستحصل على ما يعرف بالبايت ، بينما يسمى الرقم الثنائي الفردي (0) بت.

كيف ينتج مفتاح بسيط إشارات ثنائية

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

instagram viewer
حقوق الصورة: 991joseph /ويكيميديا ​​كومنز

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

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

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

تستخدم الترانزستورات كمفتاح

رصيد صورة الترانزستور: Evan-Amos /ويكيميديا والصورة المربعة المربعة الائتمان: Sponk /ويكيميديا

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

ما هي بنية وحدة المعالجة المركزية؟

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

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

فيما يلي عينة من مجموعة التعليمات:

عينة التعليمات

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

تركيب تعليمات التركيب

بعد كود التشغيل هو المعامل. يحتوي المعامل على القيم والعناوين حيث سيتم استخدام كود التشغيل.

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

متعلق ب: كيف تختلف وحدات المعالجة المركزية RISC و CISC؟

المجمع

الآن بعد أن فهمت الإشارات الثنائية ، يمكنك التعرف على كيفية تفسير الكمبيوتر لمثل هذه الإشارات. تعتمد كيفية تفسير رمز الآلة على نوع المنطق المستخدم في المُجمِّع (برنامج منخفض المستوى يُستخدم لفك الشفرة وتجميع التعليمات البرمجية إلى نظام ثنائي مناسب).

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

00101001 أ 00101111 جي 00110101 م 00111011 س 01000001 ص
00101010 ب 00110000 ح 00110110 ن 00111100 تي 01000010 ض
00101011 ج 00110001 أنا 00110111 0 00111101 يو
00101100 د 00110010 ي 00111000 ص 00111110 الخامس
00101101 ه 00110011 ك 00111001 س 00111111 دبليو
00101110 F 00110100 إل 00111010 ص 0100000 X

نظرًا لأن المجمع الخاص بنا يستخدم ASCII (إصدار 8 بت) ، يتم تفسير كل ثمانية أرقام ثنائية في النظام الثنائي على أنها حرف واحد. سيأخذ المجمّع هذا البايت ويترجمه وفقًا للمعايير المحددة. على سبيل المثال ، يمكن ترجمة 01000001 01101001 01010100 إلى كلمة "بت".

فهم لغة التجميع

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

فيما يلي مثال على رمز تجميع بسيط باستخدام مجموعة التعليمات الموضحة سابقًا:

1. لودا # 5 
2. اللودب # 7
3. أضف R3
4. STRE M12

يتم تخزين كتلة التعليمات البرمجية هذه في ذاكرة الوصول العشوائي حتى تجلب وحدة المعالجة المركزية كل سطر من التعليمات البرمجية واحدًا تلو الآخر.

دورة جلب وحدة المعالجة المركزية وفك تشفيرها وتنفيذها

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

أحضر: يأخذ عداد التعليمات داخل وحدة المعالجة المركزية سطرًا واحدًا من التعليمات من ذاكرة الوصول العشوائي (RAM) للسماح لوحدة المعالجة المركزية بمعرفة التعليمات التي يجب تنفيذها بعد ذلك.

فك تشفير: سيقوم المجمع بفك تشفير كتلة التعليمات البرمجية التي يمكن للبشر قراءتها وتجميعها كثنائيات منسقة بشكل صحيح حتى يفهمها الكمبيوتر.

1. 00010101 
2. 00100111
3. 00110011
4. 01011100

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

سوف الكمبيوتر ينفذ على النحو التالي:

  1. قم بتحميل السجل الأول بـ 5
  2. قم بتحميل السجل الثاني بـ 7
  3. 5 + 7 = 12 ، احفظ 12 في السجل الثالث
  4. قم بتخزين قيمة السجل الثالث على عنوان RAM M12

نجح الكمبيوتر في إضافة رقمين معًا وتخزين القيمة في عنوان ذاكرة الوصول العشوائي المحدد.

باهر! الآن أنت تعرف كيف ينفذ الكمبيوتر التعليمات البرمجية. ومع ذلك ، لا يتوقف الأمر عند هذا الحد.

الذهاب أبعد

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

ما هو المترجم والمترجم؟

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

ان مترجم سيأخذ سطرًا واحدًا من التعليمات البرمجية وينفذه على الفور. يستخدم هذا عادةً على المحطات الطرفية مثل محطة Linux Bash Shell ومحطة Windows PowerShell. عظيم لأداء المهام البسيطة لمرة واحدة.

حقوق الصورة: Rlistmedia /ويكيميديا ​​كومون

في المقابل ، أ مترجم سوف يستغرق سطورًا متعددة من التعليمات البرمجية ويجمعها لإنشاء برنامج. من أمثلة هذه البرامج Microsoft Word و Photoshop و Google Chrome و Safari و Steam.

مع إنشاء المجمعين والمترجمين الفوريين ، تم إنشاء لغات برمجة عالية المستوى.

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

لغات البرمجة عالية المستوى هي أي لغة بعد كود التجميع. بعض هذه اللغات التي قد تكون على دراية بها هي C و Python و Java و Swift. جعلت لغات البرمجة هذه البرمجة أكثر قابلية للقراءة من قبل الإنسان وأبسط من لغة التجميع.

فيما يلي مقارنة جنبًا إلى جنب لتوضيح مدى صعوبة البرمجة في التجميع مقارنة بلغة البرمجة عالية المستوى مثل Python:

كلا الرمزين سيطبعان "Hello World".

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

متعلق ب: Python vs. جافا: أفضل لغة لعام 2022

يمكن لأجهزة الكمبيوتر تنفيذ جميع طرق التعليمات البرمجية

الكمبيوتر هو جهاز يمكنه قراءة الملفات الثنائية فقط. يتم إنتاج هذه الثنائيات بواسطة أكثر من مليار ترانزستور بحجم مجهري معبأة داخل وحدة المعالجة المركزية. يحدد ترتيب الترانزستور ISA (بنية مجموعة التعليمات) الخاصة بوحدة المعالجة المركزية ، والتي توفر مئات التعليمات التي يمكن لوحدة المعالجة المركزية أن تؤديها بسهولة بمجرد استدعاء كود التشغيل الخاص بها من خلال الكود. يقوم المطورون بخلط هذه التعليمات ومطابقتها بالتسلسل ، مما يؤدي إلى إنشاء برنامج كامل مثل محركات الألعاب ومتصفحات الويب والتطبيقات وبرامج التشغيل.

تنفذ وحدة المعالجة المركزية الكود من خلال تسلسل يعرف بدورة الجلب وفك التشفير والتنفيذ. بمجرد تحميل جزء من التعليمات البرمجية في ذاكرة الوصول العشوائي ، ستقوم وحدة المعالجة المركزية بجلب محتوياتها واحدًا تلو الآخر ، وفك تشفير المحتويات إلى ثنائي من خلال المجمع ، ثم تنفيذ الكود.

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

تم إنشاء لغات البرمجة عالية المستوى مثل Python و C و Java لجعل البرمجة أسهل وأسرع وملاءمة. لم تعد الغالبية العظمى من المبرمجين بحاجة إلى الترميز بلغة التجميع ، حيث يمكن ترجمة لغات البرمجة عالية المستوى سهلة الاستخدام إلى التجميع من خلال مترجم.

نأمل أن يكون لديك الآن فهم أفضل لأساسيات أجهزة الكمبيوتر وكيفية تنفيذها للتعليمات البرمجية.

كيف يعمل الكمبيوتر وما هو بداخله؟

إنه سؤال بسيط ، لكنه سؤال يفكر فيه الجميع من وقت لآخر: كيف يعمل هذا الكمبيوتر الذي أمامك بالفعل؟

اقرأ التالي

شاركسقسقةبريد الالكتروني
مواضيع ذات صلة
  • شرح التكنولوجيا
  • برمجة
  • معالج الكمبيوتر
  • يعالج
عن المؤلف
جايريك مانينغ (5 مقالات منشورة)

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

المزيد من Jayric Maning

اشترك في نشرتنا الإخبارية

انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!

انقر هنا للاشتراك