۳۲-بیت

در معماری کامپیتور، محاسبه ۳۲-بیتی به کامپیوتر هایی با پردازنده،‌ حافظه (memory) و سایر بخش های اصلی سیستم اشاره دارد که روی داده هایی با حداکثر واحد های ۳۲-بیتی کار می کنند. در مقایسه با سیستم هایی با عرض بیت(Bit) های کمتر از ۳۲، کامپیوتر های ۳۲-بیتی قادر به انجام محاسبات بزرگتر با کارایی بیشتر و همچنین پردازش داده های بیشتری در هر چرخه ساعت (clock cycle) می باشند. یارانه های شخصی ۳۲-بیتی معمولی همچنین دارای گذرگاه آدرس (address bus) ۳۲-بیتی هستند که امکان دسترسی به حداکثر ۴ گیگابایت (GiB) رم (RAM) را فراهم می کند، بسیار بیشتر از آنچه نسل های قبلی معماری سیستم اجازه می دادند.[۱]

طراحی های ۳۲-بیتی از اولین روز های محاسبه الکترونیک، در سیستم های آزمایشی و سپس در پردازنده های مرکزی بزرگ و سیستم های مینی-کامپیوتری مورد استفاده قرار گرفته است. موتورولا ۶۸۰۰۰ (Motorola 68000) به عنوان اولین ریزپرازنده هیبریدی ۱۶/۳۲-بیتی در اواخر دههٔ ۱۹۷۰ معرفی شد و در سیستم هایی مانند مکینتاش اصلی مورد استفاده قرار گرفت. ریزپردازنده های ۳۲-بیتی کامل مانند HP FOCUS، موتورولا ۶۸۰۲۰ و اینتل ۸۰۳۸۶ در اوایل تا اواسط دههٔ ۱۹۸۰ عرضه شدند و تا اوایل دههٔ ۱۹۹۰ به پرازنده های غالب تبدیل شدند. این نسل از رایانه های شخصی همزمان با اولین پذیرش گستره شبکه جهانی (World Wide Web) ظهور کردند و زمینه ساز آن شدند. درحالی که معماری های ۳۲-بیتی هنوز به طور گسترده در برنامه های خاص مورد استفاده قرار می گیرند، بازار یارانه های شخصی و سرور ها از اواسط دههٔ ۲۰۰۰ به سمت معماری های ۶۴-بیتی x86-64 و سایر معماری های ۶۴-بیتی حرکت کرده است با حافظهٔ نصب شده ای که اغلب از حد آدرس ۳۲-بیتی ۴ گیگابات در کامپیوتر های سطح پایین فراتر رفته است. جدیدترین نسل تفلن های هوشمند نیز به معماری ۶۴-بیتی روی‌آورده است.

محدوده ذخیره اعداد صحیح

یک ثبّات (رجیستر) قادر به ذخیره سازی 232 مقدار متفاوت می باشد. محدوده ای که مقادیر صحیح می توانند در ۳۲ بیت ذخیره شوند به نحوه نمایش اعداد صحیح به کاربرده شده بستگی دارد. محدوده برای نمایش به صورت دودویی (بدون علامت) از 0 تا 4,294,967,295 (1 - 32^2) و برای نمایش به صورت مکمل دو از 2,147,483,648- (31^2-) تا 2,147,483,647 (1 - 31^2) می باشد که از رایج ترین نمایش های برای اعداد صحیح هستند.

یک نتیجه مهم این است که یک پردازنده با آدرس های منطقی یا مجازی ۳۲-بیتی می تواند بصورت مستقیم به حداکثر ۴ گیگابایت فضای آدرس با آدرس‌دهی بایتی دسترسی داشته باشد (اگرچه در عمل این حد ممکن است کمتر باشد). یک پردازنده با آدرس های فیزیکی ۳۲-بیتی می تواند بطور مستقیم حداکثر به ۴ گیگابایت حافظه اصلی (main memory) بایتی دسترسی داشته باشد؛ پردازنده های ۳۲-بیتی ممکن است دقیقا ۳۲ بیت، کمتر از ۳۲ بیت یا بیشتر از ۳۲ بیت آدرس فیزیکی داشته باشند.

تاریخچه فنی

اولین کامپیوتر الکترونیکی با برنامه ذخیره شده در دنیا، بچه منچستری (the Manchester Baby)، از معماری ۳۲-بیتی در سال ۱۹۴۸ استفاده می کرد، اگرچه این فقط یک اثبات مفهوم بود و ظرفیت عملی کمی داشت. این کامپیوتر فقط ۳۲ کلمه ۳۲-بیتی از حافظه رم را روی یک لامپ ویلیامز نگه می‌داشت و به جز عمل تفریق، قادر به انجام عمل دیگه ای نبود.

حافظه همانند سایر مدار های دیجیتال و سیم‌کشی در طول اولین دههٔ های پیدایش معماری ۳۲-بیتی (دههٔ ۱۹۶۰ تا ۱۹۸۰) گران بود. بنابراین، خانواده های پردازنده های ۳۲-بیتی قدیمی تر (یا انواع ساده تر و ارزان تر از آنها) می توانستد برای کاهش هزینه ها، محدودیت ها و سازگاری هایی بسیاری داشته باشند. برای مثال ALU های ۱۶-بیتی (واحد حساب و منطق)، یا گذرگاه (Bus) های خارجی (یا داخلی) باریکتر از ۳۲ بیت، محدود کردن اندازه حافظه یا افزایش چرخه های مورد نیاز برای استخراج و گردآوری، اجرا و نوشتن مجدد دستور العمل ها.

با وجود این، چنین پردازنده هایی می توانستند به ۳۲-بیتی برچسب گذاری شوند، چراکه آنها هنوز دارای ثبّات های ۳۲-بیتی و دستورالعمل هایی قادر به کار کردن با کمیت های ۳۲-بیتی بودند. به عنوان مثال، IBM System/360 Model 30 یک ALU یا واحد حساب و منطق ۸-بیتی، مسیر های داده داخلی ۸-بیتی، و مسیری ۸-بیتی به حافظه داشت، و Motorola 68000 اصلی یک واحد حساب و منطق ۱۶-بیتی و یک گذرگاه داده ۱۶-بیتی داشت، اما ثبّات های ۳۲-بیتی و یک مجموعه دستورالعمل جهت‌دار ۳۲-بیتی داشتند. طراحی ۶۸۰۰۰ گاهی اوقات به عنوان ۳۲/۱۶-بیتی شناخته می‌شد.

با این حال، عکس این موضوع برای طراحی های ۳۲-بیتی جدیدتر صادق است. برای مثال، پردازنده Pentium Pro یک ماشین ۳۲-بیتی هست با ثبّات های ۳۲-بیتی و دستورالعمل هایی که با کمیت های ۳۲-بیتی کار می کنند، اما گذرگاه آدرس خارجی آن ۳۶ بیت عرض دارد که فضای آدرس بزرگتری از ۴ گیگابایت می‌دهد و گذرگاه داده خارجی ۶۴ بیت عرض دارد، که در درجه اول اجازه پیش‌واکشی کارآمدتر دستورالعمل‌ها و داده‌ها را می‌دهد.

معماری ها

معماری‌های برجستهٔ با مجموعه دستورالعمل های ۳۲-بیتی که در محاسبات عمومی استفاده می‌شوند عبارتند از معماری‌های IBM System/360، IBM System/370 (که آدرس دهی ۲۴-بیتی داشتند)، System/370-XA، ESA/370 و ESA/390 (که آدرس دهی ۳۱-بیتی داشتند)، DEC VAX، NS320xx، خانوادهٔ Motorola 68000 (اولین دو مدلی که آدرس دهی ۲۴-بیتی داشتند)، نسخهٔ ۳۲-بیتی Intel IA-32 از معماری x86 و نسخهٔ ۳۲-بیتی از معماری‌های ARM، SPARC، MIPS، PowerPC و PA-RISC. معماری‌هایی با مجموعه دستورالعمل های ۳۲-بیتی که برای محاسبات تعبیه‌شده استفاده می‌شوند عبارتند از معماری‌های خانوادهٔ 68000 و ColdFire، x86، ARM، MIPS، PowerPC و Infineon TriCore.

برنامه ها

در معماری x86، یک برنامهٔ ۳۲-بیتی عموما به نرم‌افزاری اطلاق می‌شود که معمولا (نه لزوما) از فضای آدرس خطی ۳۲-بیتی (یا مدل حافظه مسطح) که با تراشه‌های ۸۰۳۸۶ و بعد از آن امکان‌پذیر است، استفاده می‌کند. در این زمینه، این اصطلاح به این دلیل به وجود آمد که MS-DOS، Windows و OS/2 در اصل برای زیرپردازنده‌های ۱۶-بیتی 8088/8086 یا 80286 با فضای آدرس بخش‌بندی شده نوشته بودند که در آن برنامه‌ها باید بین بخش‌ها جابجا می‌شدند تا به بیش از ۶۴ کیلوبایت از کد یا داده برسند. از آنجایی که این کار در مقایسه با سایر عملیات‌های ماشینی بسیار زمان‌بر است، ممکن است روی عملکرد آن تحت تأثیر قرار بگیرد. علاوه بر این، برنامه‌نویسی با بخش‌ها معمولا پیچیده می‌شود؛ کلمات کلیدی حاص far و near یا مدل‌های حافظه باید (با دقت) استفاده می‌شدند، نه تنها در زبان اسمبلی، بلکه در زبان‌های بالا مانند پاسکال، BASIC کامپال‌شده، Fortran، سی و غیره.

۸۰۳۸۶ و جانشینان آن به طور کامل از بخش های ۱۶-بیتی ۸۰۲۸۶ پشتیبانی می‌کنند، بخش‌هایی برای آفست‌های آدرس ۳۲-بیتی نیز پشتیبانی می‌کنند (با استفاده از عرض ۳۲-بیتی رجیستر‌های اصلی). اگر آدرس پایه همهٔ سگمنت های ۳۲-بیتی روی ۰ تنظیم شود و ثبات‌های سگمنت به صراحت استفاده نشوند، سگمنت‌بندی می‌تواند فراموش شود و پردازنده به‌صورت یک فضای آدرس خطی ۳۲-بیتی ساده به‌نظر می‌رسد. سیستم عامل‌هایی مانند Windows یا OS/2 امکان اجرای برنامه‌های ۱۶-بیتی (قطعه‌بندی شده) و همچنین برنامه‌های ۳۲-بیتی را فراهم می‌سازند. امکان اول برای سازگاری با نسخه‌های قبلی وجود دارد و دومی معمولا برای توسعهٔ‌ نرم‌افزار جدید در نظر گرفته می‌شود.

تصاویر

در تصاویر/عکس‌های دیجیتال، منظور از ۳۲ بیت، مدل رنگی RGBA است؛ یعنی تصاویر رنگی واقعی ۲۴-بیتی با یک کانال آلفا ۸ بیتی اضافی.سایر فرمت‌های تصویر نیز ۳۲ بیت در هر پیکس را مشخص می‌کنند، مانند RGBE.

در تصاویر دیجیتال، گاهی اوقات ۳۲ بیت به فرمت‌های تصویر‌برداری با دامنه داینامیکی بالا (HDR) اشاره دارد که از ۳۲ بیت در هر کانال، در مجموع ۹۶ بیت در هر پیکسل استفاده می‌کنند. تصاویر ۳۲ بیت در هر کانال برای نمایش مقادیر روشن‌تر از آنچه فضای رنگی sRGB اجازه می‌دهد، استفاده می‌شوند (روشن‌تر از سفید)؛ این مقادیر می‌توانند باری حفظ دقیق‌تر هایلات‌های روشن، چه هنگام کاهش نوردهی تصویر و چه هنگام مشاهده آن از طریق یک فیلتر تیره یا بازتاب مات، مورد استفاده قرار گیرند.

برای مثال، انعکاس در یک لکهٔ نفتی تنها کسری از انعکاسی است که در سطح آینه دیده می‌شود. تصاویر HDR امکان انعکاس هایلات هایی را فراهم می‌کنند که هنوز هم می‌توانند به‌صورت نواحی روشن سفید روشن دیده شوند،‌ به اشکال خاکستری مات.

فرمت‌های فایل

فرمت فایل ۳۲ بیتی، یک فرمت فایل دودویی است که در آن هر اطلاعت اولیه روی ۳۲ بیت (یا ۴ بایت) تعریف می‌شود. نمونه‌ای از چنین فرمتی فرمت فرا فایل پیشرفته (Enhanced Metafile Format) می‌باشد.

جستار‌های وابسته

منابع

  1. پروسایز، جف (1995-11-07). "16 یا 32 بیت: آیا باید برای شما مهم باشد؟". مجله PC. صفحات 321-322. بازیابی شده در 2022-11-30.
  2. بوکانان، ویلیام (۱۹۹۷). توسعه نرم‌افزار برای مهندسان: سی/سی‌پلاس‌پلاس، پاسکال، اسمبلی، ویژوال بیسیک، اچ‌تی‌ام‌ال، جاوا اسکریپت، جاوا داس، ویندوز ان‌تی، یونیکس. برلینگتون: انتشارات الزویر ساینس. صفحه ۲۳۰. شابک ۲-۰۵۴۱۳۷-۰۸-۰-۹۷۸. او‌سی‌ال‌سی ۸۵۴۹۷۵۳۸۳.
  3. ونکاتسوارلو، ان.بی. (۲۰۱۲). مبانی ضروری کامپیوتر و فناوری اطلاعات برای دانشجویان مهندسی و علوم. انتشارات اس. چاند. صفحه ۱۴۳. شابک ۴-۴۰۴۷-۲۱۹-۸۱-۹۷۸.
  4. هریس، دیوید مانی؛ هریس، سارا ال. (۲۰۱۳). طراحی دیجیتال و معماری کامپیوتر. الزویر. صفحه ۵۶۷. شابک ‎۹۷۸-۰-۱۲-۳۹۴۴۲۴-۵.
  5. پترسون، دیوید؛ دیتزل، دیوید (۲۰۰۰). خوانش‌هایی در معماری کامپیوتر. سن دیگو: انتشارات آکادمیک. صفحه ۱۳۶. شابک ۹۷۸۱۵۵۸۶۰۵۳۹۸.
  6. ویژگی‌های عملکردی IBM System/360 Model 30 (پی‌دی‌اف). آی‌بی‌ام. آگوست ۱۹۷۱. صفحات ۸، ۹. GA24-3231-7.
  7. «راهنمای مرجع برنامه‌نویس خانواده موتورولا ۶۸۰۰۰» (PDF). ۱۹۹۲. ص. ۱-۱. بازیابی شده در ۱۸ ژانویه ۲۰۲۲.
  8. گوناپ، لینلی (۱۶ فوریه ۱۹۹۵). «پردازنده P6 اینتل از طراحی سوپراسکالر جدا شده استفاده می‌کند» (PDF). گزارش ریزپردازنده. بازیابی شده در ۳ دسامبر ۲۰۱۲.
  9. گوناپ، لینلی (18 آوریل 1994). "PPC 604 از پنتیوم پیشی می‌گیرد" (PDF). گزارش ریزپردازنده. 8 (5). بازیابی شده در 8 دسامبر 2025.
  10. «مروری بر معماری ARM» (پی‌دی‌اف).
  11. همچنین انواع مختلفی از یونیکس برای ۸۰۲۸۶ وجود داشت.
  12. این مقاله بر اساس مطالبی است که از نسخه ۳۲ بیتی به بالا در فرهنگ لغت آنلاین رایگان محاسبات (Free On-line Dictionary of Computing) قبل از ۱ نوامبر ۲۰۰۸ گرفته شده و تحت شرایط «مجوزدهی مجدد» GFDL، نسخه ۱.۳ یا بالاتر، گنجانده شده است.

پیوند به بیرون

پانویس

  1. مشارکت‌کنندگان ویکی‌پدیا. «32-bit». در دانشنامهٔ ویکی‌پدیای انگلیسی.