بانک های ثبات:

8051 دارای 8 ثبات با نامهای R0-R7  میباشد دستوراتی که از این ثباتها استفاده می کنند نسبت به دستورات مشابه خود که از انواع دیگر آدرس دهی استفاده می کنند دارای تعداد بیت کمتر و سرعت بیشتری هستند بنابراین در صورتی که از داده ای به طور متناوب در برنامه استفاده می کنیم بهتر است که این داده در یکی از ثباتهای بانک ثبات قرار گیرد.

در 8051 ,  4 بانک ثبات وجود دارد که در هر لحظه از زمان می توان فقط یکی از این بانکها را فعال و از آن استفاده کرد . برای فعال کردن یک بانک ثبات از دو بیت با نامهای PSW.3, PSW.4  استفاده می کنیم این 2 بیت اجزای ثبات PSW  هستند.

 

ثبات PSW:

مخفف Program status word  یا کلمه وضعیت سیستم است .این ثبات در هر سیکل ماشین بسته به وضعیت و جواب برنامه تغییر می کند و برنامه نویس می تواند بر اساس این تغییرات منطق برنامه را تغییر  دهد. PSW  مشابه FLAG  های ریزپردازنده های سیستم های میکروکامپیوتری می باشد.

 

 

بیت توازن ((P :

این بیت تنظیم توازن زوج ,   مقدار آن صفر یا یک می شود . در صورتیکه تعداد یکهای داخل آکومولاتور فرد باشد این بیت یک می شود تا مجموع یکها زوج باشد این یک روش ساده تشخیص تعداد فرد  خطا در انتقال اطلاعات می باشد.برای مثال اگر آکومولاتور عدد 00000011 را در مبنای دو در خود داشته باشد چون در این مثال تعداد 1 ها دو عدد می باشد بنابراین بیت توازن صفر می شود تا تعداد یکها ی زوج باقی بماند.این بیت اکثرا در روتین های پورت سری استفاده می شود به طوری که اطلاعات با بیت توازن ارسال می شود و در موقع دریافت اطلاعات بیت توازن تست می گردد.

 

بیت پرچم سرریز یا OV :

این بیت با نام OVER FLOW  یا سرریز نام دارد. اگر هنگام  جمع یا تفریق حسابی  نتیجه حاصل بزرکتر از 127 + یا کوچکتر از 127- شود سرریز اتفاق می افتد و بیت OV  برابر 1 می شود.

 

بیت های انتخاب بانک ثبات   :(RS0,RS1)

این دو بیت به منظور فعال کردن یکی از 4 بانک ثبات مورد استفاده قرار می گیرد.مقدار پیش فرض این 2 بیت 00 است که بانک ثبات 0 را فعال می کند.

 

بیت :FO

این بیت با نام پرجم صفر هم شناخت هشده است. اگر نتیجه یک عمل حسابی صفر شوداین بیت یک می شود.

 

 

بیت :AC

در هنگام انجام عملیات حسابی در صورتی که از بیت شماره 3 به شماره 4 رقن نقلی داشته باشیم در این صورت این بیت یک می شود.

 

بیت پرچم نقلی یا :CY

این بیت به دو منظور به کار می رود:

1- در مواقع محاسبات یعنی زمانی که عمل جمع انجام می شود اگر از بیت 7 رقم خارج شود بیت  C یک می شود.

2-  اگر در زمان تفریق از بیت 7 قرض گرفته شود در این صورت بیت C  برابر یک می شود.

 

 

ثبات A:

این ثبات Accumulator  یا انباره نامیده می شود. این ثبات همه منظوره است . بیشتر دستورات میکروکنترولر با این ثبات کار می کنند بنابراین ابتدا باید داده در این ثبات قرار بگیرد سپس عملیات انجام شود.

 

ثبات :B

ثبات یا آکومولاتور   B در آدرس F0H  حافظه قرار دارد و معمولا با ثبات  A  برای محاسبات ضرب و تقسیم استفاده می شود.

ثبات B  را می توان به عنوان یک ثبات عمومی برای هر کاربرد دیگری نیز لستفاده نمود. علاوه بر این بیت های ثبات B  آدرس پذیر و از آدرس F0H  تا  F7H  می باشند لذا می توان با دستورات روی بیت ,  عملیات بر روی آنها انجام داد.

 

ثبات  DPTR  یا اشاره گر داده:

این ثبات یک ثبات 16 بیتی است که از 2 ثبات 8 بیتی با نامهای DPL,DPH  ساخته شده است و به عنوان اشاره گر داده به کار می رود.ای ثبات برای دسترسی به حافظه کد و داده خارجی به کار می رود. به عنوان مثال دستورات زیر عدد 55H  را در حافظه داده خارجی RAM  می نویسند:

 

                                       MOV A,#55H

MOV DPTR,#1000H

MOV @DPTR,A

 

اشاره گر پشته یا  :SP

SP  یک ثبات 8بیتی می باشد که آدرس اطلاعات بالای حافظه پشته را دارا می باشد . عملیات حافظه پشته شامل قرار دادن اطلاعات در بالای حافظه پشته ( با دستور    ( PUSH یا برداشتن اطلاعات (با دستور   (POP  از بالای حافظه پشته می باشد.

هربار که اطلاعات در حافظه پشته قرار می گیرد ابتدا به محتوای SP  یک واحد اضافه می شود و سپس اطلاعات در حافظه پشته نوشته می شود ((PUSH

هربار که اطلاعاتی از حافظه پشته خوانده می شود (     ( POP

ابتدا اطلاعات خوانده می شود و سپس یک واحد از SP  کم می شود.