ja-jp_products:mpino_studio2:box_functions:bit_operations
差分
このページの2つのバージョン間の差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
| ja-jp_products:mpino_studio2:box_functions:bit_operations [2026/09/09 17:54] – 만듦 - 바깥 편집 127.0.0.1 | ja-jp_products:mpino_studio2:box_functions:bit_operations [2026/09/10 01:06] (現在) – 바깥 편집 127.0.0.1 | ||
|---|---|---|---|
| 行 5: | 行 5: | ||
| {{ : | {{ : | ||
| - | WAND・SHL・ROLの入力形式を比較した実際のラダー画面です。 | + | ===== 共通規則 |
| - | + | ||
| - | {{ : | + | |
| - | + | ||
| - | ===== 1. 共通ルール | + | |
| ビット演算命令はWORDの16ビットをまとめて計算します。シフトは外へ出たビットを捨てて空きを0で埋め、ローテートは外へ出たビットを反対側へ戻します。 | ビット演算命令はWORDの16ビットをまとめて計算します。シフトは外へ出たビットを捨てて空きを0で埋め、ローテートは外へ出たビットを反対側へ戻します。 | ||
| - | ===== 2. WAND・WOR・WXOR ===== | + | ===== ボックス関数一覧 |
| - | + | ||
| - | ==== WAND ==== | + | |
| - | + | ||
| - | **ビット AND (Word AND)** | + | |
| - | + | ||
| - | 2つのWORDの各ビットをAND演算し、結果を対象に格納します。 | + | |
| - | + | ||
| - | **入力形式: | + | |
| - | + | ||
| - | ^ 実行条件 ^ 実行前 ^ 入力した命令 ^ 予想結果 ^ | + | |
| - | | 左側条件 ON | D0=0x00CC, D1=0x00AA | '' | + | |
| - | + | ||
| - | ==== WOR ==== | + | |
| - | + | ||
| - | **ビット OR (Word OR)** | + | |
| - | + | ||
| - | 2つのWORDの各ビットをOR演算し、結果を対象に格納します。 | + | |
| - | + | ||
| - | **入力形式: | + | |
| - | + | ||
| - | ^ 実行条件 ^ 実行前 ^ 入力した命令 ^ 予想結果 ^ | + | |
| - | | 左側条件 ON | D0=0x00CC, D1=0x00AA | '' | + | |
| - | + | ||
| - | ==== WXOR ==== | + | |
| - | + | ||
| - | **ビット XOR (Word XOR)** | + | |
| - | + | ||
| - | 2つのWORDの各ビットをXOR演算し、結果を対象に格納します。 | + | |
| - | + | ||
| - | **入力形式: | + | |
| - | + | ||
| - | ^ 実行条件 ^ 実行前 ^ 入力した命令 ^ 予想結果 ^ | + | |
| - | | 左側条件 ON | D0=0x00CC, D1=0x00AA | '' | + | |
| - | + | ||
| - | ===== 3. WNOT ===== | + | |
| - | + | ||
| - | **ビット NOT (Word NOT)** | + | |
| - | + | ||
| - | ソースWORDの各ビットを反転し、結果を対象に格納します。 | + | |
| - | + | ||
| - | **入力形式: | + | |
| - | + | ||
| - | **引数** | + | |
| - | + | ||
| - | * 1番目 = S: 反転するソースアドレスまたは定数 | + | |
| - | * 2番目 = D: 結果格納アドレス | + | |
| - | + | ||
| - | ^ 実行条件 ^ 実行前 ^ 入力した命令 ^ 予想結果 ^ | + | |
| - | | 左側条件 ON | D0=0x00CC | '' | + | |
| - | + | ||
| - | ===== 4. SHL・SHR ===== | + | |
| - | + | ||
| - | ==== SHL ==== | + | |
| - | + | ||
| - | **論理左シフト (Shift Left)** | + | |
| - | + | ||
| - | WORDを左へシフトし、結果を対象に格納します。左へ出たビットを捨て、右の空きを0で埋めます。シフト数には0~15を使用します。 | + | |
| - | + | ||
| - | **入力形式: | + | |
| - | + | ||
| - | **引数** | + | |
| - | + | ||
| - | * 第1引数 = ソース:整数WORDアドレス | + | |
| - | * 第2引数 = シフト数:0~15 | + | |
| - | * 第3引数 = 対象:結果格納アドレス | + | |
| - | + | ||
| - | ^ 実行条件 ^ 実行前 ^ 入力した命令 ^ 予想結果 ^ | + | |
| - | | 左側条件 ON | D0=0x0003 | '' | + | |
| - | + | ||
| - | ==== SHR ==== | + | |
| - | + | ||
| - | **論理右シフト (Shift Right)** | + | |
| - | + | ||
| - | D WORDを右へ論理シフトし、結果を対象に格納します。右へ出たビットを捨て、左の空きを0で埋めます。 | + | |
| - | + | ||
| - | **入力形式: | + | |
| - | + | ||
| - | **引数** | + | |
| - | + | ||
| - | * 第1引数 = ソース:D WORDアドレス | + | |
| - | * 第2引数 = シフト数:0~15 | + | |
| - | * 第3引数 = 対象:結果格納アドレス | + | |
| - | + | ||
| - | ^ 実行条件 ^ 実行前 ^ 入力した命令 ^ 予想結果 ^ | + | |
| - | | 左側条件 ON | D0=0x000C | '' | + | |
| - | + | ||
| - | ===== 5. ROL・ROR ===== | + | |
| - | + | ||
| - | ==== ROL ==== | + | |
| - | + | ||
| - | **左回転 (Rotate Left)** | + | |
| - | + | ||
| - | D・C・T WORDを左へローテートし、結果を対象に格納します。左へ出たビットは右端へ戻します。 | + | |
| - | + | ||
| - | **入力形式: | + | |
| - | + | ||
| - | **引数** | + | |
| - | + | ||
| - | * 第1引数 = ソース:D・C・T WORDアドレス | + | |
| - | * 第2引数 = ローテート数 | + | |
| - | * 第3引数 = 対象:D・C・T WORDアドレス | + | |
| - | + | ||
| - | ^ 実行条件 ^ 実行前 ^ 入力した命令 ^ 予想結果 ^ | + | |
| - | | 左側条件 ON | D0=0x8001 | '' | + | |
| - | + | ||
| - | ==== ROR ==== | + | |
| - | + | ||
| - | **右回転 (Rotate Right)** | + | |
| - | + | ||
| - | D・C・T WORDを右へローテートし、結果を対象に格納します。右へ出たビットは左端へ戻します。 | + | |
| - | + | ||
| - | **入力形式: | + | |
| - | + | ||
| - | **引数** | + | |
| - | + | ||
| - | * 第1引数 = ソース:D・C・T WORDアドレス | + | |
| - | * 第2引数 = ローテート数 | + | |
| - | * 第3引数 = 対象:D・C・T WORDアドレス | + | |
| - | + | ||
| - | ^ 実行条件 ^ 実行前 ^ 入力した命令 ^ 予想結果 ^ | + | |
| - | | 左側条件 ON | D0=0x0003 | '' | + | |
| - | + | ||
| - | ===== 6. トラブルシューティング | + | |
| - | ^ 症状 | + | ^ 命令 |
| - | | 右シフトで符号ビットが左側に入りません。 | SHRは上位の空きビットを0で埋める論理シフトです。 | | + | | [[ja-jp_products: |
| - | | シフト後にビットが消えます。 | 移動したビットを保持する場合は、SHL・SHRではなくROL・RORを使用します。 | | + | | [[ja-jp_products: |
| + | | [[ja-jp_products: | ||
| + | | [[ja-jp_products: | ||
| + | | [[ja-jp_products: | ||
| + | | [[ja-jp_products: | ||
| + | | [[ja-jp_products: | ||
| + | | [[ja-jp_products: | ||
| ===== 関連文書 ===== | ===== 関連文書 ===== | ||
| * [[ja-jp_products: | * [[ja-jp_products: | ||
| - | * [[ja-jp_products: | ||
| - | * [[ja-jp_products: | ||
| * [[ja-jp_products: | * [[ja-jp_products: | ||
ja-jp_products/mpino_studio2/box_functions/bit_operations.1788944071.txt.gz · 最終更新: by 127.0.0.1
