ClickHouse/docs/fa/sql-reference/functions/bit-functions.md
Ivan Blinkov d91c97d15d
[docs] replace underscores with hyphens (#10606)
* Replace underscores with hyphens

* remove temporary code

* fix style check

* fix collapse
2020-04-30 21:19:18 +03:00

256 lines
6.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
machine_translated: true
machine_translated_rev: d734a8e46ddd7465886ba4133bff743c55190626
toc_priority: 48
toc_title: "\u0628\u06CC\u062A"
---
# توابع بیت {#bit-functions}
بیت توابع کار برای هر جفت از انواع از uint8, uint16, uint32, uint64, int8, int16, int32, int64, float32 یا float64.
نوع نتیجه یک عدد صحیح با بیت به حداکثر بیت از استدلال خود را برابر است. اگر حداقل یکی از استدلال امضا شده است, نتیجه یک شماره امضا شده است. اگر استدلال یک عدد ممیز شناور است, این است که به درون بازیگران64.
## بیت و ب) {#bitanda-b}
## bitOr(a, b) {#bitora-b}
## هشدار داده می شود) {#bitxora-b}
## bitNot(یک) {#bitnota}
## اطلاعات دقیق) {#bitshiftlefta-b}
## باز کردن پنجره روی برنامههای دیگر) {#bitshiftrighta-b}
## هشدار داده می شود) {#bitrotatelefta-b}
## حفاظت از بیت) {#bitrotaterighta-b}
## بیتترین {#bittest}
طول می کشد هر عدد صحیح و تبدیل به [شکل دودویی](https://en.wikipedia.org/wiki/Binary_number), بازگرداندن ارزش کمی در موقعیت مشخص. شمارش معکوس از 0 از سمت راست به سمت چپ شروع می شود.
**نحو**
``` sql
SELECT bitTest(number, index)
```
**پارامترها**
- `number` integer number.
- `index` position of bit.
**مقادیر بازگشتی**
بازگرداندن مقدار کمی در موقعیت مشخص.
نوع: `UInt8`.
**مثال**
مثلا, تعداد 43 در پایه-2 (دودویی) سیستم اعداد است 101011.
پرسوجو:
``` sql
SELECT bitTest(43, 1)
```
نتیجه:
``` text
┌─bitTest(43, 1)─┐
│ 1 │
└────────────────┘
```
مثال دیگر:
پرسوجو:
``` sql
SELECT bitTest(43, 2)
```
نتیجه:
``` text
┌─bitTest(43, 2)─┐
│ 0 │
└────────────────┘
```
## تماس {#bittestall}
بازده نتیجه [ساخت منطقی](https://en.wikipedia.org/wiki/Logical_conjunction) (و اپراتور) از تمام بیت در موقعیت های داده شده. شمارش معکوس از 0 از سمت راست به سمت چپ شروع می شود.
ساخت و ساز برای عملیات بیتی:
0 AND 0 = 0
0 AND 1 = 0
1 AND 0 = 0
1 AND 1 = 1
**نحو**
``` sql
SELECT bitTestAll(number, index1, index2, index3, index4, ...)
```
**پارامترها**
- `number` integer number.
- `index1`, `index2`, `index3`, `index4` positions of bit. For example, for set of positions (`index1`, `index2`, `index3`, `index4`) درست است اگر و تنها اگر تمام موقعیت خود را درست هستند (`index1` ⋀ `index2`, ⋀ `index3``index4`).
**مقادیر بازگشتی**
بازده نتیجه منطقی conjuction.
نوع: `UInt8`.
**مثال**
مثلا, تعداد 43 در پایه-2 (دودویی) سیستم اعداد است 101011.
پرسوجو:
``` sql
SELECT bitTestAll(43, 0, 1, 3, 5)
```
نتیجه:
``` text
┌─bitTestAll(43, 0, 1, 3, 5)─┐
│ 1 │
└────────────────────────────┘
```
مثال دیگر:
پرسوجو:
``` sql
SELECT bitTestAll(43, 0, 1, 3, 5, 2)
```
نتیجه:
``` text
┌─bitTestAll(43, 0, 1, 3, 5, 2)─┐
│ 0 │
└───────────────────────────────┘
```
## بیتستانی {#bittestany}
بازده نتیجه [حکم منطقی](https://en.wikipedia.org/wiki/Logical_disjunction) (یا اپراتور) از تمام بیت در موقعیت های داده شده. شمارش معکوس از 0 از سمت راست به سمت چپ شروع می شود.
دستور برای عملیات بیتی:
0 OR 0 = 0
0 OR 1 = 1
1 OR 0 = 1
1 OR 1 = 1
**نحو**
``` sql
SELECT bitTestAny(number, index1, index2, index3, index4, ...)
```
**پارامترها**
- `number` integer number.
- `index1`, `index2`, `index3`, `index4` positions of bit.
**مقادیر بازگشتی**
بازده نتیجه ساخت و ساز منطقی.
نوع: `UInt8`.
**مثال**
مثلا, تعداد 43 در پایه-2 (دودویی) سیستم اعداد است 101011.
پرسوجو:
``` sql
SELECT bitTestAny(43, 0, 2)
```
نتیجه:
``` text
┌─bitTestAny(43, 0, 2)─┐
│ 1 │
└──────────────────────┘
```
مثال دیگر:
پرسوجو:
``` sql
SELECT bitTestAny(43, 4, 2)
```
نتیجه:
``` text
┌─bitTestAny(43, 4, 2)─┐
│ 0 │
└──────────────────────┘
```
## شمارش {#bitcount}
محاسبه تعداد بیت را به یکی در نمایندگی دودویی از یک عدد است.
**نحو**
``` sql
bitCount(x)
```
**پارامترها**
- `x` — [عدد صحیح](../../sql-reference/data-types/int-uint.md) یا [شناور نقطه](../../sql-reference/data-types/float.md) شماره. تابع با استفاده از نمایندگی ارزش در حافظه. این اجازه می دهد تا حمایت از اعداد ممیز شناور.
**مقدار بازگشتی**
- تعداد بیت را به یکی در تعداد ورودی.
تابع مقدار ورودی را به یک نوع بزرگتر تبدیل نمی کند ([ثبت نام پسوند](https://en.wikipedia.org/wiki/Sign_extension)). بنابراین, مثلا, `bitCount(toUInt8(-1)) = 8`.
نوع: `UInt8`.
**مثال**
نگاهی به عنوان مثال تعداد 333. نمایندگی دودویی: 00000001001101.
پرسوجو:
``` sql
SELECT bitCount(333)
```
نتیجه:
``` text
┌─bitCount(333)─┐
│ 5 │
└───────────────┘
```
[مقاله اصلی](https://clickhouse.tech/docs/en/query_language/functions/bit_functions/) <!--hide-->