Main Content

bitsliceget

ビットの連続スライスの取得

説明

c = bitsliceget(a) は、固定小数点入力 a のビット セット全体を返します。

c = bitsliceget(a, lidx) は、a の、位置 lidx で開始し LSB (位置 1 のビット) で終了するビットの連続スライスを返します。

c = bitsliceget(a, lidx, ridx) は、a の、位置 lidx で開始し位置 ridx で終了するビットの連続スライスを返します。

bitsliceget 引数は、次の条件を満たさなければなりません。

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

すべて折りたたむ

次の固定小数点数から始めます。

a = fi(85,0,8,0);
disp(bin(a))
01010101

a のビット セット全体を取得します。

c = bitsliceget(a);
disp(bin(c))
01010101

次の固定小数点数から始めます。

a = fi(85,0,8,0);
disp(bin(a))
01010101

位置 6 から開始する連続ビットの 2 進数表現を取得します。

c = bitsliceget(a,6);
disp(bin(c))
010101

次の固定小数点数から始めます。

a = fi(85,0,8,0);
disp(bin(a))
01010101

fi(6)fi(2) の連続ビットの 2 進数表現を取得します。

c = bitsliceget(a,fi(6),fi(2));
disp(bin(c))
01010

次の 3 行 3 列行列符号なし固定小数点行列から始めます。

a = fi([2 3 4;6 8 2;3 5 1],0,4,0);
disp(bin(a))
0010   0011   0100
0110   1000   0010
0011   0101   0001

行列 a の連続ビット セットの 2 進数表現を取得します。要素ごとに、位置 4 から開始し、位置 2 で終了します。

c = bitsliceget(a,4,2);
disp(bin(c))
001   001   010
011   100   001
001   010   000

入力引数

すべて折りたたむ

入力配列。スカラー、ベクトル、行列または固定小数点 fi オブジェクトの多次元配列として指定します。a が符号付き numerictype である場合、格納された整数のビット表現は 2 の補数表現です。

データ型: 固定小数点 fi

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

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

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

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

出力引数

すべて折りたたむ

固定小数点 fi 出力。スカラー、ベクトル、行列またはスケーリングなしの多次元配列として指定します。語長はスライス長 lidx-ridx+1 と同じです。

lidx および ridx が等しい場合、bitsliceget は 1 ビットをスライスするのみであり、bitsliceget(a, lidx, ridx)bitget(a, lidx) と同じです。

拡張機能

C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。

HDL コード生成
HDL Coder™ を使用して FPGA 設計および ASIC 設計のための VHDL、Verilog および SystemVerilog のコードを生成します。

バージョン履歴

R2007b で導入