Bitwise Operator
入力に対する指定されたビット演算

ライブラリ:
Simulink /
Logic and Bit Operations
HDL Coder /
Logic and Bit Operations
説明
Bitwise Operator ブロックは、1 つ以上のオペランドに対して指定されたビット演算を行います。Logical Operator ブロックの論理演算とは異なり、ビット演算ではオペランドを 1 つの値ではなく複数のビットで構成される 1 つのベクトルとして扱います。
Operations ブロック演算の制限
Bitwise Operator ブロックはシフト演算をサポートしません。シフト演算については、Shift Arithmetic ブロックを使用します。
多入力 XOR ゲートとして構成されている場合、このブロックは論理要素に関する IEEE® 標準規格に従って、剰余 2 の加算を行います。
例
端子
入力
Port_1 — 入力信号
スカラー | ベクトル
入力信号。スカラーまたはベクトルとして指定します。
NOT 演算子は 1 つの入力だけを受け入れ、入力はスカラーまたはベクトルです。入力がベクトルの場合、出力は入力されたベクトル要素のビット論理補数を含む同じサイズのベクトルです。
単一ベクトル入力の場合、このブロックはベクトルのすべての要素に対して演算 (NOT 演算を除く) を適用します。
入力が 2 つ以上の場合、ブロックはすべての入力の間で演算を実行します。入力がベクトルの場合、ブロックはベクトルの対応する要素間で演算を行い、ベクトル出力を生成します。
データ型: int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
出力
Port_1 — 出力信号
スカラー | ベクトル
出力データ型として指定される出力信号は、ブロックが駆動ブロックから継承するものであり、ゼロを正確に表現しなければなりません。この条件を満たすデータ型には、符号付きおよび符号なしの整数データ型があります。
ブロック出力のサイズは、入力の数、ベクトルのサイズ、および選択された演算子によって異なります。ビット マスクを指定しないと、出力はスカラーになります。ビット マスクを指定すると、出力はベクトルになります。
データ型: int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
パラメーター
演算子 — ビット論理演算子
AND (既定値) | OR | NOR | NAND | XOR | NOT
ブロック オペランドに対してビット論理演算子を指定します。
次のいずれかのビット論理演算子を選択できます。
ビット演算 | 説明 |
---|---|
AND | 対応するビットがすべて TRUE の場合に TRUE |
OR | 対応するビットの少なくとも 1 つが TRUE の場合に TRUE |
NAND | 対応するビットの少なくとも 1 つが FALSE の場合に TRUE |
NOR | 対応するビットに TRUE がない場合に TRUE |
XOR | 対応するビットの奇数個が TRUE の場合に TRUE |
NOT | 入力が FALSE の場合に TRUE (単一入力の場合にのみ使用可能) |
プログラムでの使用
ブロック パラメーター: logicop |
型: 文字ベクトル |
値: 'AND' |'OR' |'NAND' |'NOR' |'XOR' | 'NOT' |
既定の設定: 'AND' |
ビット マスクの使用 — ビット マスクの使用を選択
オン (既定値) | オフ
ビット マスクを使用するには、これを選択します。このチェック ボックスをオフにすると [入力端子の数] が有効になり、[ビット マスク] と [マスクの取り扱い] が無効になります。
プログラムでの使用
ブロック パラメーター: UseBitMask |
型: 文字ベクトル |
値: 'off' |'on' |
既定の設定: 'on' |
入力端子の数 — 入力信号数
1 (既定値) | 整数
入力の数を指定します。複数の入力端子を設定できます。
依存関係
[ビット マスクの使用] チェック ボックスをオフにすると [入力端子の数] が有効になり、[ビット マスク] と [マスクの取り扱い] が無効になります。
プログラムでの使用
ブロック パラメーター: NumInputPorts |
型: 文字ベクトル |
値: 正の整数 |
既定の設定: '1' |
ビット マスク — 単一入力に関連付けられるビットマスク
bin2dec (既定値)
単一入力に関連付けられるビットマスクを指定します。このパラメーターは、値を 16 進数値として読み取ります。
ビット マスクを使用して、入力に対するビットの設定、取得、クリアを行うことができます。
実行内容 | Operator プロパティの設定値 | ビット マスクの作成に使用するもの |
---|---|---|
Bit set | OR | 1 に設定する対応する入力ビットそれぞれに対して A 1 |
Bit clear | AND | 0 に設定する対応する入力ビットそれぞれに対して A 0 |
Bit get | AND | 取得する対応する入力ビットそれぞれに対して A 1 |
8 ビット入力ベクトルの 4 番目のビットを設定するとします。ビット マスクは 00010000 になります。これは [ビットマスク] パラメーターで 2^4
として指定できます。ビットをクリアするには、ビット マスクを 11101111 とします。これは ビット マスク パラメーターで 2^7+2^6+2^5+2^3+2^2+2^1+2^0
として指定できます。
ヒント
53 ビットを超えるマスクを使用しないでください。そうしないと、シミュレーション中にエラー メッセージが表示されます。
依存関係
このパラメーターは、[ビット マスクの使用] をオンにする場合にのみ使用できます。
プログラムでの使用
ブロック パラメーター: BitMask |
型: 文字ベクトル |
値: 正の整数 |
既定の設定: 'bin2dec('11011001')' |
マスクの取り扱い — マスクを実際値として処理または格納された整数として処理
整数格納
(既定値) | 実際値
マスクを実際値として扱うのかそれとも格納された整数として扱うのかを指定します。
エンコード方式は、V
= SQ
+ B
です。詳細については、Fixed-Point Designer™ ドキュメンテーションのスケーリング (Fixed-Point Designer)を参照してください。[実際値]
はマスクを V
として扱います。[整数格納]
はマスクを Q
として扱います。
依存関係
このパラメーターは、[ビット マスクの使用] をオンにする場合にのみ使用できます。
プログラムでの使用
ブロック パラメーター: BitMaskRealWorld |
型: 文字ベクトル |
値: 'Real World Value' | 'Stored Integer' |
既定の設定: 'Stored Integer' |
ブロックの特性
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
HDL コード生成
HDL Coder™ を使用して FPGA 設計および ASIC 設計のための Verilog および VHDL のコードを生成します。
HDL Coder™ には、HDL の実装および合成されたロジックに影響する追加のコンフィギュレーション オプションがあります。
このブロックには 1 つの既定の HDL アーキテクチャがあります。
ConstrainedOutputPipeline | 既存の遅延を設計内で移動することによって出力に配置するレジスタの数。分散型パイプラインではこれらのレジスタは再分散されません。既定の設定は |
InputPipeline | 生成されたコードに挿入する入力パイプライン ステージ数。分散型パイプラインと制約付き出力パイプラインでは、これらのレジスタを移動できます。既定の設定は |
OutputPipeline | 生成されたコードに挿入する出力パイプライン ステージ数。分散型パイプラインと制約付き出力パイプラインでは、これらのレジスタを移動できます。既定の設定は |
PLC コード生成
Simulink® PLC Coder™ を使用して構造化テキスト コードを生成します。
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
バージョン履歴
R2006a より前に導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)