Wednesday, December 11, 2013

أساسيات البرمجة ما هو الفرق بين Assembler و Compiler وInterpreter؟

11:40 PM

Share it Please


أساسيات البرمجة ما هو الفرق بين Assembler و Compiler وInterpreter؟

 مقدمة عن المعالجات والمترجمات والمفسرات؟

إن كلا من Assembler و Compiler يقع تحت مجموعة من البرامج تسمى المترجمات Translators.
المترجم Translator هو عبارة عن برنامج يقوم بتحويل ملفات الكود المصدر Source Code File إلى نوع من الملفات الثنائية Binary File. وهذا الملف الثنائي قد يكون ملف تنفيذي Executable File قابلا للفهم من قبل المعالج, أو قد يكون ملف خط Font File, أو ملف بيانات ثنائية مضغوط Compressed Binary Data File, أو واحدا من مئات الأنواع الاخرى من الملفات الثنائية.
مترجمات البرنامج Program Translators هي مترجمات تقوم بتوليد التعليمات Machine Instructions التي يفهمها المعالج. يقوم مترجم البرنامج بقراءة ملف الكود المصدر Source Code File سطرا بسطر, ويكتب ملفا ثنائيا Binary File من التعليمات Machine Instruction التي تنفذ الأحداث التي يشرحها ملف الكود المصدر Source Code File. وهذا الملف الثنائي Binary File يسمى Object Code File.

ماهو المعالج او ال كومبلير Compiler ؟

الـ Compiler هو مترجم Translator يقوم بقراءة ملف الكود المصدر Source Code File المكتوب بلغة عالية المستوى High Level Language مثل C++ و Pascal و يقوم بإنتاج Object Code File.

ماهو المعالج الاسمبلي Assembler ؟

أما الـ Assembler فهو نوع خاص من الـ Compiler. فهو مترجم Translator أيضا يقوم بقراءة ملفات الكود المصدر Source Code Files ويقوم بإنتاج Object Code Files ليتم تنفيذها عن طريق المعالج. والـ Assembler هو مترجم Translator تم تصميمه تحديدا ليقوم بترجمة ما يسمى بـ Assembly Language إلى Object Code. بنفس الطريقة التي يقوم بها الـ Compiler في C++ أو Pascal بترجمة ملف الكود المصدر Source Code File إلى Object Code File. فعملية الترجمة هي نفسها في كلا الحالتين, إلا أن لغة الأسمبلي Assembly Language لها طابع مميز هام يبقيها بعيدة عن الـ Compilers.وهذا النوع يتعامل مع الكود البرمجي منخفض المستوى وا يعرف بكود الالة بعكس الاول الذي يتعامل مع الكود عالي المستوي ويحول الى ملف تفهمه الالة.


ماهو المفسر  Interpreter؟

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




Ahmed Ata Almahallawi
Freelancer
IT
IT Help Desk,
SEO experience,PHP,C#,ASPX
Al alami st
gaza -jabaliaGaza Strip
Palestine
ahmed.almahallawi@gmail.com
DOB: 05/10/1984
by +Ahmed Almahallawi 
12/12/2013



1 comments :

Post a Comment