تابع BITRSHIFT در توابع منطقی (Logical Functions) Power BI
تابع BITRSHIFT در Power BI برای انجام عملیات شیفت بیت به راست روی یک عدد صحیح استفاده میشود. این تابع در زبان DAX برای محاسبات باینری، تحلیل فلگها یا دادههای رمزگذاریشده کاربرد دارد.
تعریف تابع BITRSHIFT
BITRSHIFT(<Number>, <ShiftAmount>)
<Number>: عدد صحیحی که میخواهید بیتهای آن را جابهجا کنید.<ShiftAmount>: تعداد بیتهایی که باید به سمت راست شیفت داده شوند.- خروجی: عدد صحیح حاصل از شیفت بیتها به راست.
نحوه عملکرد
عملیات شیفت بیت به راست معادل تقسیم عدد بر توانهای ۲ است. بهعنوان مثال:
BITRSHIFT(20, 2)
- نمایش دودویی عدد 20 →
10100 - شیفت به راست ۲ بیت →
101→ معادل عدد 5
یعنی:
اگر ShiftAmount منفی باشد، بیتها به سمت چپ شیفت داده میشوند (مانند تابع BITLSHIFT).
مثال 1
کوئری DAX زیر:
EVALUATE
{ BITRSHIFT(16, 3) }
عدد ۲ را برمیگرداند.
مثال 2
کوئری DAX زیر:
DAX
EVALUATE
{ BITRSHIFT(1024, -3) }
عدد ۸۱۹۲ را برمیگرداند.
مثال 3
کوئری DAX زیر:
Define
Measure Sales[RightShift] = BITRSHIFT(SELECTEDVALUE(Sales[Amount]), 3)
EVALUATE
SUMMARIZECOLUMNS(
Sales[Amount],
"RIGHTSHIFT",
[RightShift]
)
هر مبلغ فروش را با ۳ بیت به سمت راست شیفت میدهد و مبلغ فروشِ تغییر یافته با بیت را برمیگرداند.
کاربردهای رایج
- تحلیل دادههای باینری یا رمزگذاریشده
- بررسی وضعیت فلگها (flags) در سیستمهای منطقی
- تقسیم سریع عدد بر توانهای ۲ بدون استفاده از
DIVIDE
توابع مرتبط
| تابع | عملکرد |
|---|---|
BITAND |
AND بیتبهبیت |
BITOR |
OR بیتبهبیت |
BITXOR |
XOR بیتبهبیت |
BITLSHIFT |
شیفت به چپ |
BITRSHIFT |
شیفت به راست |
ملاحظات
- قبل از استفاده از توابع بیتشیفت DAX، حتماً ماهیت عملیات بیتشیفت و overflow/underflow اعداد صحیح را درک کنید.
- اگر Shift_Amount منفی باشد، در جهت مخالف تغییر میکند.
- اگر مقدار مطلق Shift_Amount بزرگتر از ۶۴ باشد، خطایی رخ نمیدهد اما منجر به overflow/underflow میشود.
- محدودیتی برای تعداد وجود ندارد، اما نتیجه ممکن است overflow/underflow شود.
برای خرید لایسنس نرم افزار Power BI ، میتوانید از خدمات ما استفاده نموده و درخواست خود را از طریق فرم زیر ثبت نمایید.
میتوانید پاور بی آی دسکتاپ رایگان را دانلود کنید : Power BI desktop download
