ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

bitandreduce

ビットの連続範囲のビット単位 AND 演算

構文

  • c = bitandreduce(a)
  • c = bitandreduce(a, lidx)
  • c = bitandreduce(a, lidx, ridx)

説明

c = bitandreduce(a) は、固定小数点入力 a の ビット セット全体に対してビット単位の AND 演算を実行し、結果を語長 1 の符号なしの整数として返します。

c = bitandreduce(a, lidx) は、位置 lidx で開始し、LSB (位置 1 のビット) で終了するビットの連続範囲に対して、ビット単位の AND 演算を実行します。

c = bitandreduce(a, lidx, ridx) は、位置 lidx で開始し、位置 ridx で終了するビットの連続範囲に対して、ビット単位の AND 演算を実行します。

bitandreduce 引数は、次の条件を満たさなくてはなりません。

a.WordLength >= lidx >= ridx >= 1

すべて展開する

ビット セット全体に対するビット単位 AND 演算の実行

固定小数点数を作成します。

a = fi(73,0,8,0);
disp(bin(a))
01001001

a のビット セット全体に対してビット単位の AND 演算を実行します。

c=bitandreduce(a)
c = 

     0

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 1
        FractionLength: 0

a のビットのすべての値が 1 とはならないため、出力値は 0 になります。

ベクトルのビット範囲に対するビット単位 AND 演算の実行

固定小数点ベクトルを作成します。

a=fi([12,4,8,15],0,8,0);
disp(bin(a))
00001100   00000100   00001000   00001111

位置 fi(4) 以降の a の各要素のビットに対し、ビット単位の AND 演算を実行します。

c=bitandreduce(a,fi(4))
c = 

     0     0     0     1

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 1
        FractionLength: 0

出力 c 中、値が 1 のエントリは 4 番目のエントリのみです。これは、fi(4) から 1 の位置において値が 1 のみのものは、a の 4 番目のエントリのみだからです。

行列のビット範囲に対するビット単位 AND 演算の実行

固定小数点行列を作成します。

a=fi([7,8,1;5,9,5;8,37,2],0,8,0);
disp(bin(a))
00000111   00001000   00000001
00000101   00001001   00000101
00001000   00100101   00000010

行列 a の各要素の、位置 3 で開始し位置 1 で終了するビットに対して、ビット単位の AND 演算を実行します。

c=bitandreduce(a,3,1)
c = 

     1     0     0
     0     0     0
     0     0     0

          DataTypeMode: Fixed-point: binary point scaling
            Signedness: Unsigned
            WordLength: 1
        FractionLength: 0

出力 c の中で値が 1 のエントリは 1 つのみです。このようになるのは、a 内の対応するエントリが、位置 31 内で値が 1 のみである唯一のエントリだからです。

入力引数

すべて展開する

a - 入力配列スカラー | ベクトル | 行列 | 多次元配列

入力配列。スカラー、ベクトル、行列または fi オブジェクトの多次元配列として指定します。

bitandreduce は、任意のスケーリングを含む、符号付き入力および符号なし入力の両方をサポートします。符号およびスケーリングに関するプロパティは、結果の型および値に影響を与えません。bitandreduce は、格納された整数の 2 の補数のビット表現に対する演算を実行します。

データ型: 固定小数点 fi

lidx - 範囲の開始位置スカラー

組み込み型のスカラーとして指定された範囲の開始位置。lidx は範囲内の MSB に最も近い位置を表します。

データ型: fi|single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

ridx - 範囲の終了位置スカラー

組み込み型のスカラーとして指定された範囲の終了位置。ridx は範囲の LSB (位置 1 のビット) に最も近い位置を表します。

データ型: fi|single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

出力引数

すべて展開する

c - 出力配列スカラー | ベクトル | 行列 | 多次元配列

出力配列。スカラー、ベクトル、行列または固定小数点 fi オブジェクトの多次元配列として指定されます。c は語長 1、符号なしです。

参考

| | |

この情報は役に立ちましたか?