TechBord Logo
TechBord detail

بایت کد (Bytecode) چیست؟

Bytecode کد برنامه (Program) است که کامپایل (Compile) از کد منبع (Source Code) به کد سطح پایین طراحی شده برای نرم افزار مترجم (Interpreter) تبدیل شده است. ممکن است توسط یک ماشین مجازی (مانند ماشین مجازی جاوا (JVM)) اجرا شود یا بیشتر در کد ماشین کامپایل شود که توسط پردازنده (Processor) شناسایی می شود.

انواع مختلف بایت کد از نحو (Syntax) متفاوت استفاده می کند که می تواند توسط ماشین مجازی مربوطه خوانده و اجرا شود. یک مثال محبوب بایت کد جاوا است که از کد منبع جاوا (Java) کامپایل شده و می تواند بر روی یک ماشین مجازی جاوا (JVM) اجرا شود. در زیر نمونه هایی از دستورالعمل های بایت کد جاوا آمده است.

  • جدید (ایجاد شی جدید)
  • aload_0 (مرجع بارگیری)
  • ذخیره (ذخیره مقدار عدد صحیح (Integer))
  • ladd (افزودن مقدار طولانی (Long))
  • مبادله (تبادل دو مقدار)
  • areturn (مقدار برگشتی از یک تابع)

در حالی که امکان نوشتن مستقیم بایت کد وجود دارد، بسیار دشوارتر از نوشتن کد در یک زبان سطح بالا، مانند جاوا. بنابراین، فایل‌های بایت کد، مانند فایل‌های جاوا کلاس (Class)، اغلب از کد منبع و با استفاده از یک کامپایلر، مانند javac تولید می‌شوند.

بایت کد در مقابل زبان اسمبلی

بایت کد مشابه زبان اسمبلی (Assembly Language) است که زبان سطح بالا (High-Level Language) نیست، اما برخلاف زبان ماشین هنوز تا حدودی قابل خواندن است. هر دو ممکن است "زبان های میانی" در نظر گرفته شوند که بین کد منبع و کد ماشین قرار می گیرند. تفاوت اصلی بین این دو این است که بایت کد برای یک ماشین مجازی (نرم افزار (Software)) تولید می شود، در حالی که زبان اسمبلی برای واحد پردازش مرکزی (CPU) (سخت افزار (Hardware)) ایجاد می شود. /p>

تعریف اصطلاح بایت کد (Bytecode) توسط تک بورد

تعریف بایت کد (Bytecode) در این صفحه یک تعریف پایه نگاشته شده توسط تک بورد است. اگر مایل به ارجاع به این صفحه یا استناد به این تعریف هستید، با شرط درج لینک به این صفحه می توانید از این محتوا استفاده کنید.

هدف تک بورد توضیح اصطلاحات کامپیوتری به روشی است که به راحتی قابل درک باشد. ما برای سادگی و دقت با هر تعریفی که منتشر می کنیم تلاش می کنیم. اگر بازخوردی درباره تعریف بایت کد (Bytecode) دارید یا می‌خواهید یک اصطلاح فنی جدید پیشنهاد کنید، لطفاً با ما تماس بگیرید.

آیا می خواهید اصطلاحات فنی بیشتری یاد بگیرید؟ در خبرنامه روزانه یا هفتگی مشترک شوید و شرایط و آزمون های ویژه را در ایمیل خود تحویل بگیرید.