diff options
Diffstat (limited to 'files/uk/web/javascript/reference/operators/bitwise_not/index.html')
| -rw-r--r-- | files/uk/web/javascript/reference/operators/bitwise_not/index.html | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/files/uk/web/javascript/reference/operators/bitwise_not/index.html b/files/uk/web/javascript/reference/operators/bitwise_not/index.html new file mode 100644 index 0000000000..5c83741948 --- /dev/null +++ b/files/uk/web/javascript/reference/operators/bitwise_not/index.html @@ -0,0 +1,99 @@ +--- +title: Побітове НЕ (~) +slug: Web/JavaScript/Reference/Operators/Bitwise_NOT +tags: + - JavaScript + - Бітовий оператор + - Довідка + - Оператор +translation_of: Web/JavaScript/Reference/Operators/Bitwise_NOT +--- +<div>{{jsSidebar("Operators")}}</div> + +<p>Оператор побітового НЕ (<code>~</code>) інвертує біти свого операнда.</p> + +<div>{{EmbedInteractiveExample("pages/js/expressions-bitwise-not.html")}}</div> + +<div></div> + + + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox notranslate"><code><var>~a</var></code> +</pre> + +<h2 id="Опис">Опис</h2> + +<p>Операнди перетворюються на 32-бітні цілі числа та виражаються послідовністю бітів (нулів та одиниць). Числа, що мають більше 32 бітів, втрачають свої старші біти. Наприклад, наступне ціле число, що має більше 32 бітів, буде перетворене на 32-бітне ціле число:</p> + +<pre class="brush: js notranslate">До: 11100110111110100000000000000110000000000001 +Після: 10100000000000000110000000000001</pre> + +<p>Оператор застосовується до кожного біта.</p> + +<p>Таблиця істинності для операції <code>НЕ</code> (NOT) наступна</p> + + + +<table class="standard-table"> + <thead> + <tr> + <th class="header" scope="col">a</th> + <th class="header" scope="col">NOT a</th> + </tr> + </thead> + <tbody> + <tr> + <td>0</td> + <td>1</td> + </tr> + <tr> + <td>1</td> + <td>0</td> + </tr> + </tbody> +</table> + +<pre class="brush: js notranslate"> 9 (основа 10) = 00000000000000000000000000001001 (основа 2) + -------------------------------- +~9 (основа 10) = 11111111111111111111111111110110 (основа 2) = -10 (основа 10) +</pre> + +<p>Побітове НЕ над будь-яким числом <code>x</code> дає <code>-(x + 1)</code>. Наприклад, <code>~-5</code> повертає <code>4</code>.</p> + +<p>Зауважте, що через використання 32-бітного представлення чисел і <code>~-1</code>, і <code>~4294967295</code> (2<sup>32</sup>-1) повернуть <code>0</code>.</p> + +<h2 id="Приклади">Приклади</h2> + +<h3 id="Використання_побітового_НЕ">Використання побітового НЕ</h3> + +<pre class="brush: js notranslate">~0; // -1 +~-1; // 0 +~1; // -2 +</pre> + +<h2 id="Специфікації">Специфікації</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Специфікація</th> + </tr> + <tr> + <td>{{SpecName('ESDraft', '#sec-unary-operators', 'Unary NOT expression')}}</td> + </tr> + </tbody> +</table> + +<h2 id="Сумісність_з_веб-переглядачами">Сумісність з веб-переглядачами</h2> + + + +<p>{{Compat("javascript.operators.bitwise_not")}}</p> + +<h2 id="Див._також">Див. також</h2> + +<ul> + <li><a href="/uk/docs/Web/JavaScript/Guide/Вирази_та_оператори#Бітові_оператори">Бітові оператори у посібнику JS</a></li> +</ul> |
