--- title: Правий зсув (>>) slug: Web/JavaScript/Reference/Operators/Right_shift tags: - JavaScript - Бітовий оператор - Довідка - Оператор translation_of: Web/JavaScript/Reference/Operators/Right_shift ---
{{jsSidebar("Operators")}}

Оператор правого зсуву (>>) виконує зсув першого операнда на вказану кількість бітів праворуч. Надлишкові біти, зсунуті праворуч, відкидаються. Біти, додані зліва, заповнюються значенням старшого біта. Оскільки новий старший біт матиме те саме значення, що й попередній старший біт, знаковий (старший) біт не змінюється. Звідси назва оператора "з розширенням знаку".

{{EmbedInteractiveExample("pages/js/expressions-right-shift.html")}}

Синтаксис

a >> b

Опис

Цей оператор виконує зсув першого операнду на вказану кількість бітів праворуч. Надлишкові біти, зсунуті праворуч, відкидаються. Біти, додані зліва, заповнюються значенням старшого біта. Оскільки новий старший біт матиме те саме значення, що й попередній старший біт, знаковий (старший) біт не змінюється. Звідси назва "з розширенням знаку".

Наприклад, 9 >> 2 дорівнює 2:

.    9 (основа 10): 00000000000000000000000000001001 (основа 2)
                  --------------------------------
9 >> 2 (основа 10): 00000000000000000000000000000010 (основа 2) = 2 (base 10)

Аналогічно, -9 >> 2 дорівнює -3, оскільки знак зберігається:

.    -9 (основа 10): 11111111111111111111111111110111 (основа 2)
                   --------------------------------
-9 >> 2 (основа 10): 11111111111111111111111111111101 (основа 2) = -3 (base 10)

Приклади

Використання правого зсуву

 9 >> 2; //  2
-9 >> 2; // -3

Специфікації

Специфікація
{{SpecName('ESDraft', '#sec-bitwise-shift-operators', 'Bitwise Shift Operators')}}

Сумісність з веб-переглядачами

{{Compat("javascript.operators.right_shift")}}

Див. також