aboutsummaryrefslogtreecommitdiff
path: root/files/ja/web/javascript/reference/operators/unsigned_right_shift
diff options
context:
space:
mode:
Diffstat (limited to 'files/ja/web/javascript/reference/operators/unsigned_right_shift')
-rw-r--r--files/ja/web/javascript/reference/operators/unsigned_right_shift/index.html79
1 files changed, 79 insertions, 0 deletions
diff --git a/files/ja/web/javascript/reference/operators/unsigned_right_shift/index.html b/files/ja/web/javascript/reference/operators/unsigned_right_shift/index.html
new file mode 100644
index 0000000000..bca04162e0
--- /dev/null
+++ b/files/ja/web/javascript/reference/operators/unsigned_right_shift/index.html
@@ -0,0 +1,79 @@
+---
+title: 符号なし右シフト (>>>)
+slug: Web/JavaScript/Reference/Operators/Unsigned_right_shift
+tags:
+ - Bitwise operator
+ - JavaScript
+ - Language feature
+ - Operator
+ - Reference
+ - 演算子
+ - 言語機能
+translation_of: Web/JavaScript/Reference/Operators/Unsigned_right_shift
+---
+<div>{{jsSidebar("Operators")}}</div>
+
+<p><strong>符号なし右シフト演算子 (<code>&gt;&gt;&gt;</code>)</strong> (ゼロ埋め右シフト) は、1つ目のオペランドを指定されたビット数だけ右にずらします。右にずらしてあふれたビットは廃棄されます。0のビットが左からずれて入ります。符号ビットは <code>0</code> になりますので、結果は負の数にはなりません。他のビット毎演算子とは異なり、ゼロ埋め右シフトは符号なし32ビット整数を返します。</p>
+
+<div>{{EmbedInteractiveExample("pages/js/expressions-unsigned-right-shift.html")}}</div>
+
+<div class="hidden">このデモのソースファイルは GitHub リポジトリに格納されています。デモプロジェクトに協力していただける場合は、 <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> をクローンしてプルリクエストを送信してください。</div>
+
+<h2 id="Syntax" name="Syntax">構文</h2>
+
+<pre class="syntaxbox notranslate"><code><var>a</var> &gt;&gt;&gt; <var>b</var></code>
+</pre>
+
+<h2 id="Description" name="Description">解説</h2>
+
+<p>この演算子は、1つ目のオペランドを指定されたビット数だけ右にずらします。右にずらしてあふれたビットは廃棄されます。0のビットが左からずれて入ります。符号ビットは <code>0</code> になりますので、結果は負の数にはなりません。他のビット毎演算子とは異なり、ゼロ埋め右シフトは符号なし32ビット整数を返します。</p>
+
+<p>負の数ではない場合、ゼロ埋め右シフトと符号保存右シフトは同じ結果をになります。例えば、 <code>9 &gt;&gt;&gt; 2</code> は 2 となり、 <code>9 &gt;&gt; 2</code> と同じになります。</p>
+
+<pre class="brush: js notranslate">. 9 (10進数): 00000000000000000000000000001001 (2進数)
+ --------------------------------
+9 &gt;&gt;&gt; 2 (10進数): 00000000000000000000000000000010 (2進数) = 2 (10進数)
+</pre>
+
+<p>しかし、これは負の数の場合は当てはまりません。例えば、 <code>-9 &gt;&gt;&gt; 2</code> は 1073741821 になり、 <code>-9 &gt;&gt; 2</code> (<code>-3</code> になる) とは異なります。</p>
+
+<pre class="brush: js notranslate">. -9 (10進数): 11111111111111111111111111110111 (2進数)
+ --------------------------------
+-9 &gt;&gt;&gt; 2 (10進数): 00111111111111111111111111111101 (2進数) = 1073741821 (10進数)
+</pre>
+
+<h2 id="Examples" name="Examples">例</h2>
+
+<h3 id="Using_unsigned_right_shift" name="Using_unsigned_right_shift">符号なし右シフトの使用</h3>
+
+<pre class="brush: js notranslate"> 9 &gt;&gt;&gt; 2; // 2
+-9 &gt;&gt;&gt; 2; // 1073741821
+</pre>
+
+<h2 id="Specifications" name="Specifications">仕様書</h2>
+
+<table class="standard-table">
+ <thead>
+ <tr>
+ <th scope="col">仕様書</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr>
+ <td>{{SpecName('ESDraft', '#sec-bitwise-shift-operators', 'Bitwise Shift Operators')}}</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2>
+
+<div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div>
+
+<p>{{Compat("javascript.operators.unsigned_right_shift")}}</p>
+
+<h2 id="See_also" name="See_also">関連情報</h2>
+
+<ul>
+ <li><a href="/ja/docs/Web/JavaScript/Guide/Expressions_and_Operators#Bitwise">代入演算子</a></li>
+ <li><a href="/ja/docs/Web/JavaScript/Reference/Operators/Unsigned_right_shift_assignment">符号なし右シフト代入演算子</a></li>
+</ul>