TGViewer
Kernel Space Kernel Space @kernelsp · 146 subscribers
Post #748 77
توضیح کد فلگ‌ها

توی این کد سه تا فلگ داریم که هرکدوم یه بیتن:

FLAG_POWER → بیت اول، مربوط به برق (0x1)

FLAG_ERROR → بیت دوم، مربوط به ارور (0x2)

FLAG_READY → بیت سوم، مربوط به آماده بودن (0x4)


با |= فلگ‌ها رو روشن می‌کنیم، با & چک می‌کنیم، و با ~ خاموششون می‌کنیم.
مثلاً این تیکه:

status |= FLAG_POWER;
status |= FLAG_READY;

یعنی پاور و حالت آماده روشن شدن.

بعد چک می‌کنیم اگه بیت ارور روشن بود بنویسه ERROR،
اگه خاموش بود بنویسه NO ERROR.

در آخر هم:

status &= ~FLAG_READY;

حالت آماده رو خاموش می‌کنه.


---

معنی مقدارهای ممکن status:

مقدار توضیح

0 همه خاموش
1 فقط پاور روشن
2 فقط ارور روشن
3 پاور و ارور روشن → باید خاموش شه
4 فقط Ready فعاله
5 پاور و Ready روشن
6 Ready و ارور روشن
7 هر سه روشن → خطا، سریع خاموش کن دستگاه



---

خلاصه:
با بیت‌فلگ می‌تونی چند وضعیت رو تو یه عدد ذخیره و کنترل کنی.
این دقیقاً همون چیزیه که تو برنامه‌نویسی سطح پایین و سیستم‌های تعبیه‌شده کاربرد داره.
  • 👍 1
More from @kernelsp
  1. Oct 14, 2026جدیدا هم یاد گرفتن میگن درآمد ما ریالی ولی هزینه ها دلاری انگار ما وزارت کاری ۵۰K دلاری جر…
  2. Oct 14, 2026POV همیشگی اپراتور ها برای گرونی بیانیه جدید اپراتور ها: به جان مادرم می‌خوایم زیرساخت کشو…
  3. Oct 10, 2026video post
  4. Oct 10, 2026پایتون سریع تر شد! نسخه 3.15 پایتون منتشر شده و یکی از تغییرات مهمش بهبود عملکرد مفسر و کا…
  5. Oct 9, 2026بررسی شر و ور های زومیت درباره اپ jump jump منبع @KernelSP
  6. Oct 6, 2026رایتل ورشکسته شد شستا اعلام کرده که برای فروش 100 درصدی سهام رایتل آماده شده و قراره 23 مه…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →