کامپایل و تولید فایل اجرایی
برای نوشتن دستورات به یک زبان سطح متوسط، در ابتدا نیاز داریم تا یک یا چند فایل که توصیف کننده برنامه اصلی، سابروتین ها و داده های مورد نیاز است را تولید کنیم. فایلها با استفاده از یک ویرایشگرهای متنی یا هر ویرایشگر دیگری می توانند تولید شوند. این فایلها، تشکیل دهنده سورس کد برنامه می باشند.
سپس، برنامه و تمامی سابروتین های آن را با استفاده از کامپایلر همان زبان، کامپایل می کنیم تا کد هدف هر فایل تولید شود. کد هدف، ترجمه ای از سورس برنامه به زبان ماشین است که می تواند با پردازشگر صحبت نماید. کامپایلز اساسا آدرس های حافظه مورد نیاز را به متغیرها تخصیص می دهد و عملوندهای ریاضی و منطقی را به دستورات زبان ماشین ترجمه می کند. خود کامپایلر، فایل اجرایی می باشد که در پوشه ای نصب شده است و می بایست در مسیر دایرکتوری فایل اجرایی کاربر قرار داشته باشد. تفاوت اصلی میان یک کامپایلر و یک اسمبلر آن است که کامپایلر ساختارهای منطفی را درک می کند درحالیکه اسمبلر تنها ترجمه ای کور کورانه را انجام می دهد.
در مرحله بعدی، کدهای هدف را با فایل های باینری مورد نیاز دیگری که برنامه به آنها نیاز دارد، پیوند می زنیم تا فایل اجرایی نهایی تولید شود. فایلهای کتابخانه ها ممکن است شامل توابع ریاضی، ابزارهای گرافیکی و رابطهای گرافیکی کاربر باشند که به برنامه اجازه می دهند تا به خودی خود روی کامپیوتر اجرا شود. برخی از کامپایلرها، لینکرهای خود را دارند و برخی دیگر از کامپایلرها از لینکرهایی استفاده می کنند که توسط سیستم عامل ارائه شده اند.
در پایان، فایل اجرایی را در حافظه بارگذاری می کنیم و آن را اجرا می کنیم. در این مرحله، وجود کامپایلر ضروری نیست. از آنجاییکه پردازشگرهای مختلف، زبانهای ماشین متفاوتی دارند، فایل اجرایی تولید شده روی یک پردازشکر، لزوما در پردازشگر دیگر کار نخواهد کرد. علاوه بر اینکه، فایلهای هدف، لزوما قابل استفاده در نسخه های مختلف یک سیستم عامل یا سخت افزارهای مختلف نیستند.
کامپایلرهای برخی از زبانهای برنامه نویسی، بایت کدهایی تولید می کنند که در سیستم های مختلف قابل استفاده است. بایت کدها مجددا به زبان ماشین ترجمه می شوند یا مستقیما توسط مفسرهایی اجرا می شوند.
درحالیکه اینها قوانین عمومی هستند که ما آنها را خاطر نشان کردیم، ولی استثناهایی نیز وجود دارد. برنامه ای نوشته شده به نسخه ای استاندارد از زبان بیسیک یا MATLAB، کامپایل می شود یا دقیقتر بگوییم خط به خط تفسیر و اجرا می شوند. در نتیجه وجود کامپایلر یا مفسر، برای اجرای اجرا یا تولید یک فایل اجرایی ضروری است. یک برنامه باگ دار که توسط مفسر اجرا شده است ممکن است کار کند تا موقعی که به باگ بر خورد کند درحالیکه یک برنامه باگ دار توسط کامپایلر، کامپایل نخواهد شد. کدهای اجرایی، بسیار سریعتر از برنامه هایی اجرا می شوند که توسط مفسر اجرا می شوند.
فایلهای داده ها
پارامترهای عددی و دیگر داده ها می توانند در فایلهای مجزایی قرار داده شوند که به آنها فایلهای داده یا فایل های پیکربندی اطلاق می شود. همچنین این فایل ها می توانند توسط کاربر و از طریق صفحه کلید در هنگام اجرای برنامه داده شوند. فایل های داده معمولا با پسوند dat. مشخص می شوند و فایل های پیکربندی معمولا با پسوند conf.
منبع: نویاسیستم
سایر مقالات مرتبط :
- بررسی صرافی انلاین بدون نیاز به احراز هویت
- نکاتی برای خرید ایمیل شرکتی و ایرانی
- بهترین برندهای تلویزیون هوشمند کدامند؟
- اهمیت سیگنال رایگان ارز دیجیتال فیوچرز در ترید
- آشنایی با بهترین قالب های چند منظوره در وردپرس
- استفاده از گوگل ادز در ایران چگونه و چطور؟
- خرید سرور خارج از کشور از سرودیتا
- بهترین سئوکار خانم در ایران ❤️ | بهترین سئوکار خانم ایران
- قوی ترین باتری گوشی های سامسونگ و شیائومی در سال 2023
- سرور HP چیست؛ ۴ دلیل برای استفاده از آن
- با بهترین هاستینگ طراحان وب شمالغرب کشور آشنا شوید
- خلاقیت در تولید محتوا | جدیدترین متدهای افزایش خلاقیت محتوا ۲۰۲۳