یک زبان برنامه نویسی چگونه کار می‌کند؟

13 خرداد 1398, خواندن در 2 دقیقه

در این مقاله می‌خواهم به شما توضیح دهم که یک زبان برنامه‌نویسی، داخل کامپیوتر چگونه کار می‌کند.

کامپیوتر، دستورالعمل‌ها را فقط در کد زبان ماشین درک می‌کند.

اما نوشتن کد در زبان ماشین سخت است. پس ما باید کد را به زبان‌های سطح بالا مانند Java، C++، ECMAScript، Python و... بنویسیم. برنامه‌ای که در یک زبان سطح بالا نوشته شده است، «سورس کد» (Source Code) نام دارد. اما ما نمی‌توانیم این سورس کد را مستقیما داخل کامپیوتر اجرا کنیم.

پس باید آن را به کد زبان ماشین تبدیل کنیم. ما به برخی مترجم‌های خاص نیاز داریم، که این مترجم‌ها اساسا برنامه‌هایی نوشته شده در کد زبان ماشین هسند. این مترجم‌ها، «پردازنده زبان» (Language Processor) نام دارند.

سه نوع پردازنده زبان وجود دارد:

۱. کمپایلر (Compiler)

این مورد برای زبان‌های سطح بالا استفاده می‌شود. یک کمپایلر، کل برنامه را به صورت یکجا خواننده، اجرا می‌کند و اگر خطایی بروز دهد، آن را نمایش می‌دهد. زبان‌های سطح بالایی که از کمپایلرها استفاده می‌کنند، مواردی مانند C، C++، C#، Pascal، Java و... هستند.

۲.  اسمبلر (Assembler)

این مورد برای زبان سطح اسمبلی استفاده می‌شود. اسمبلر دستورالعمل‌های زبان سطح اسمبلی را از ورودی داده شده می‌خواند.

۳.  تفسیر کننده (Interpreter)

این مورد برای زبان‌های سطح بالا استفاده می‌شود. تفسیر کننده سورس کد را خط به خط خوانده، اجرا می‌کند اگر خطایی پس از هر خط بروز دهد، آن را نمایش می‌دهد. زبان‌های سطح بالا که از تفسیر کننده استفاده می‌کنند، مواردی مانند ECMAScript، VB Script، Python، Perl و... هستند.

در اینجا من یک روندنما ساخته‌ام تا بتوانید روند مربوطه را درک کنید. (در تصویر زیر، شکل زرد برابر با کمپایلر، شکل آبی برابر با اسمبلر و شکل سبز برابر با تفسیر کننده هستند)

از زمان شما بابت خواندن مقاله ممنونم. حال شما اتفاقی که داخل کامپیوتر می‌افتد را درک می‌کنید.

منبع

چه امتیازی به این مقاله می دید؟
خیلی بد
بد
متوسط
خوب
عالی

دیدگاه‌ها و پرسش‌ها

برای ارسال دیدگاه لازم است، ابتدا وارد سایت شوید.

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

در حال دریافت نظرات از سرور، لطفا منتظر بمانید

آفلاین
user-avatar
عرفان کاکایی @er79ka
دنبال کردن

گفتگو‌ برنامه نویسان

بخشی برای حل مشکلات برنامه‌نویسی و مباحث پیرامون آن وارد شو