دستگاه انتزاعی
دستگاه انتزاعی (یا به عبارت دیگر محاسبه گر انتزاعی)، مدلی نظری از سیستم نرمافزاری یا سختافزاری کامپیوتر است که در نظریه اتوماتا استفاده میشود.انتزاع فرایندهای محاسباتی در هر دو رشته علوم کامپیوتر و مهندسی کامپیوتر استفاده میشود. در این شرایط زمان معمولاً به شکل گسسته فرض میشود.
در نظریه محاسبه، ماشینهای انتزاعی معمولاً در آزمایشهای فکری مرتبط با محاسبه پذیری به منظور تحلیل پیچیدگی الگوریتمها به کار میرود. یک ماشین انتزاعی معمولی تعریفی است از مفاهیم ورودی، خروجی و مجموعهای از عملیات قابل قبول برای تبدیل ورودیها به خروجیها. شناخته شدهترین ماشین انتزاعی، ماشین تورینگ میباشد.
نوع دادههای انتزاعی میتوانند در ماشین انتزاعی بر اساس معانی عملیاتی تعریف شوند. برای مثال یک پشته در ماشین انتزاعی به شکل یک آرایه از حافظه تعریف میشود.
مفاهیم پیچیدهتر، ماشینهای انتزاعی با مجموعه دستورهای کامل ثبات و مدلهای حافظه را میسازند.
مدل مشهوری که خیلی به ماشینهای امروزی شبیه است مدل(RAM) میباشد که اجازه دسترسی اتفاقی (Random) به مکانهای اندیس دار حافظه را میدهد. با افزایش اختلاف بازده بین سطوح مختلف حافظه نهان، مدلهای وابسته به حافظه نهان مانند مدل حافظه خارجی و مدل بی اعتناء به حافظه نهان، پر اهمیت تر میشوند.
یک ماشین انتزاعی میتواند به یک طرح میکروپردازنده که هنوز پیادهسازی نشده (یا در حال پیادهسازی است) نیز ارجاع کند. یک ماشین انتزاعی که به عنوان یک نرمافزار شبیهسازی پیادهسازی شده یا مترجمی برای آن موجود است را یک ماشین مجازی مینامیم.
هنگام استفاده از ماشینهای انتزاعی میتوان منابع (زمان - حافظه و ...) لازم برای یک عملیات خاص را بدون ساخت سیستم واقعی محاسبه کرد.