کلمه جو
صفحه اصلی

ثبات پرچم ها

دانشنامه عمومی

ثبات پرچم ها(FLAG register)، یک ثبات وضعیت در ریزپردازنده ها اینتل x86 است که شامل وضعیت فعلی پردازنده است. این ثبات از 16 بیتی است..جانشینان آن ثبات های EFLAGS و RFLAGS که به ترتیب 32 بیتی و 64 بیتی هستند. ثبات های گسترده تر قابلیت سازگاری با نسخه های پیشین خودشان را حفظ کرده اند.
دستورالعمل های PUSHF و POPF، ثبات پرچم ها 16بیتی را انتقال میدهند.
PUSHFD / POPFD (که با معماری i386 معرفی شده است) ثبات 32بیتی EFLAGS را انتقال میدهد.
PUSHFQ / POPFQ (معرفی شده با معماری x64 ) ثبات 64بیتی RFLAGS را منتقل می کند.
بیت های ثابت که در موقعیت بیتی 1، 3 و 5 و پرچم های سربار(carry)، برابری(parity)، تنظیم(adjust)، صفر(zero) و علامت(sign) از معماری پیشین 8080 و 8085 به ارث برده است. پرچم تنظیم به عنوان بیت سربار کمکی به در 8080 و بیت نیمه-سربار(half-carry) در معماری Zilog Z80 استفاده میشد.
توجه: ستون mask در جدول، AND bitmask است تا (به عنوان مقدار هگزادسیمال ) پرچم(ها) در مقدار ثبات پرچم ها پیدا کند.
تمام ثبات های پرچم ها حاوی کدهای وضعیت هستند، بیت های پرچم که نتایج یک دستورالعمل زبان ماشین را تحت تاثیر دستورالعمل دیگری قرار میدهند. دستورالعمل های ریاضی و منطقی برخی یا همه پرچم ها را تنظیم می کنند و دستورالعمل های پرش شرطی بر اساس مقدار پرچم های خاصی عملیات را انجام می دهند. به عنوان مثال، jz (Jump if Zero)، jc (Jump if Carry) و jo (Jump if Overflow) به پرچم های خاصی بستگی دارند. سایر پرش های شرطی ترکیبی از چندین پرچم را آزمایش میکند.


کلمات دیگر: