مجموعه دستورالعمل

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

یک مجموعه دستورالعمل (به انگلیسی: Instruction Set) به صورت بسیار ساده می‌توان گفت پردازنده‌های متفاوت، دستورالعمل‌های متفاوتی دارند که در قیمت و سرعت و ... آنها تاثیرگذار است، اما تمامی پردازنده‌ها (بدون توجه به تفاوت‌هایشان) دارای چهار مجموعه دستورالعمل زیر می‌باشند:

  • کپی کردن بیت‌ها
  • چهار عمل اصلی ریاضی (محاسبات ریاضی: جمع، ضرب، تفریق و تقسیم)
  • بیت منطقی (NOT, AND, OR, XOR)
  • پرش (شامل پرشهای مشروط) که به منظور پرش از یک آدرس حافظه اصلی (RAM) به آدرس دیگری از حافظه کاربرد دارد

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

هر مجموعه دستورالعمل تعبیه شده در هر پردازنده‌ای، زبان اسمبلی مخصوص خود را دارا می‌باشد. لذا اگر دو نوع پردازنده که ISA یا به عبارتی مجموعه دستورالعمل آنها متفاوت از یکدیگر می‌باشد را داشته باشیم نمی‌توانیم با یک زبان اسمبلی (یا زبان همگذاری) یکسان برای آن دو برنامه بنویسیم. برای مثال زبان اسمبلی پردازنده‌های x86 با زبان اسمبلی پردازنده‌های MIPS تفاوت دارد. (معماری MIPS توسط شرکتهای مختلف مانند ایسر، ان‌ای‌سی، و تعدادی دیگر از شرکتها مورد استفاده قرار می‌گردد)

معماری مجموعه دستورالعمل[ویرایش]

معماری مجموعه دستورالعمل (به انگلیسی: Instruction Set Architecture) که بطور اختصار ISA نامیده می‌شود، بخشی از معماری کامپیوتر می‌باشد که به برنامه نویسی، باضافه نوع داده ی محلی، دستورالعمل‌ها، ثبات‌ها، حالت آدرس‌دهی، معماری حافظه، مفسر‌ها، مدیریت استثناءها و ورودی/خروجی‌ها مربوط می‌شود.

یک ISA حاوی مشخصاتی از مجموعه آپ‌کدها (به انگلیسی:Opcode یا Operation Code) (زبان ماشین) و فرمان‌های محلی می‌باشد که توسط پردازندهٔ ویژه‌ای قابل اجرا هستند.

برای آشنایی با ثبات‌ها باید بدانیم ثبات‌ها حافظه‌های بسیار کوچکی در داخل پردازنده‌ها هستند. نباید هرگز آنها را با حافظه پنهان یا Cache پردازنده اشتباه گرفت چرا که حافظه پنهان یا کش، حافظه‌ای بزرگتر از ثباتها بوده که بین ثباتها و حافظه اصلی(RAM) قزار دارد. پردازنده‌های جدید دارای چندده تا چندصد ثبات هستند که هر یک از آنها ظرفیتی معادل ۳۲ تا ۱۲۸ بیت را دارا می‌باشد. یکی از تفاوتهای پردازنده‌های ۳۲بیتی با ۶۴بیتی همین موضوع است.

آنچه که از نظر یک برنامه‌نویس در مورد معماری مجموعه دستورالعمل مهم است که بداند، اینست که ISA یا معماری مجموعه دستورالعمل، ثباتهای یک پردازنده به اضافه مجموعه دستورالعملهای آن پردازنده است. بنابراین وقتی دو پردازنده دارای معماری مجموعه دستورالعمل یکسانی باشند، توانایی اجرای کدهای برنامه‌ای یکسان را دارا می‌باشند. امروزه معماری غالب پردازنده‌های رایانه‌های شخصی x۸۶ می‌باشد که پردازنده‌های اینتل و ای‌ام‌دی از این معماری برای پردازنده‌های رایانه‌ها استفاده می‌کنند. همواره معماری مجموعه دستورالعمل‌ها در حال تکامل بوده است بطوریکه پردازنده‌های جدیدتر دارای ثبات‌های بزرگتر و مجموعه دستورالعمل‌های بیشتری هستند.

جستارهای وابسته[ویرایش]

منابع[ویرایش]

مشارکت‌کنندگان ویکی‌پدیا، «Instruction set»، ویکی‌پدیای انگلیسی، دانشنامهٔ آزاد (بازیابی در ۱۷ دسامبر ۲۰۱۲).