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

از ویکی‌پدیا، دانشنامهٔ آزاد

در مهندسی کامپیوتر مجموعه دستورات متعامد ، یک مجموعه دستورات معماری است که تمام دستورات آن می‌توانند از Addressing mode استفاده کنند. متعامد بودن در اینجا به این معناست که انواع دستورات و addressing mode به‌طور مستقل از هم تغییر می‌کنند. یک مجموعه دستورات متعامد محدودیتی جهت استفاده از دستورهایی خاص که برای استفاده از رجیستری خاص هستند را تحمیل نمی‌کند.

متعامد بودن در عمل[ویرایش]

در بسیاری از کامپیوترهای CISC , یک دستور می‌تواند از راه‌های متفاوت هم به رجیستر یا حافظه دسترسی داشته باشد. این امر موجب می‌شود برنامه‌نویسی روی ماشین‌های CISC آسان‌تر شود، زیرا به جای نیاز به ذخیره هزاران دستور مستقل opcode، یک مجموعه دستور متعامد، به برنامه‌نویس اجازه می‌دهد به جای ذخیره کردن ۱۰۰ کد عملیاتی تنها ۳۰ کد را به خاطر بسپارد ("ADD", "SUBTRACT", "MULTIPLY", "DIVIDE", etc.) و مجموعه‌ای از ۳ تا ۱۰ حالت آدرس دهی ("FROM REGISTER ۰",FROM REGISTER ۱" FROM MEMORY",etc") معماری کامپیوتر های DEC PDP-۱۱ و Motorola ۶۸۰۰۰ مثال‌های نزدیکی از مجموعه دستورات متعامد هستند، در حالی که کامپیوترهای ARM۱۱ و VAX مثال‌هایی از واحد پردازش مرکزی با تعداد دستورات متعامد بالا هستند.

PDP11[ویرایش]

به استثنای دستورالعمل‌های نقطه شناوری این نوع، PDP-۱۱ بسیار متعامد است. تمامی دستورالعمل‌های اعداد صحیح می‌توانند بر اعداد صحیح ۱-بایتی و ۲-بایتی اجرا شوند و می‌توانند به داده‌های ذخیره شده در فهرست ثبت شده‌ها دسترسی پیدا کنند؛ مانند اطلاعاتی که به عنوان قسمتی از دستورالعمل، ذخیره شده‌اند یا در حافظه ذخیره شده‌اند. حتی کامپیوترهای شخصی و اشاره گر پشته هم می‌توانند از دستورالعمل‌های متداول که از تمام حالات داده‌های عادی استفاده می‌کنند، تأثیر بگیرند. درواقع حالت " ناگهانی " (شماره سخت کد شده درون یک دستورالعمل؛ مثل (ADD#4, R1 ؛ R1 = R1 + 4) که به عنوان حالت " ثبت غیر مستقیم، افزایش خودکار " اجرا می‌شود و شمارند برنامه (R7) را به عنوان ثبت برای استفاده منبع در حالت غیرمستقیم و همچنین افزایش خودکار، مشخص می‌کند.

vax11[ویرایش]

این نوع تعامد PDP-۱۱ را به تمام انواع داده گسترش می‌دهد که شامل شماره نقطه شناوری است (درواقع دستورالعمل‌های مانند "ADD" که به سایزهای مختلف داده مانند "ADDB" ,"ADDW", "ADDL" ,"ADDF" که به ترتیب برای اضافه کردن بایت، کلمه، کلمه بزرگ، "BCD" بسته‌بندی شده هستند، تقسیم می‌شود). همانند PDP-۱۱، اشارهگر پشته و شمارنده برنامه در فایل ثبت عمومی هستند (R14,R15).

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