MATLAB ヘルプ センター
このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
特定の位置のビットを設定する
intout = bitset(A,bit)
intout = bitset(A,bit,assumedtype)
intout = bitset(A,bit,V)
intout = bitset(A,bit,V,assumedtype)
intout = bitset(A,bit) は、位置 bit を 1 (オン) に設定した A の値を返します。
intout
A
bit
例
intout = bitset(A,bit,assumedtype) は、A のデータ型が assumedtype であると仮定します。
assumedtype
intout = bitset(A,bit,V) は、位置 bit を値 V に設定した A を返します。
V
V が 0 の場合、ビット位置 bit は 0 (オフ) に設定されます。
V が非ゼロの場合、ビット位置 bit は 1 (オン) に設定されます。
intout = bitset(A,bit,V,assumedtype) は、A のデータ型が assumedtype であると仮定します。
すべて折りたたむ
数値に 2 のべき乗を加算します。
A = 4; intout = bitset(A,4:6)
intout = 1×3 12 20 36
bitset がビット 4 ~ 6 を順次オンにすることがわかります。
bitset
c = dec2bin(intout)
c = 3×6 char array '001100' '010100' '100100'
assumedtype の範囲外の整数を指定すると、MATLAB® はエラーをスローします。たとえば、int8 整数の最大値は 127 なので、bitset(300,5,'int8') はエラーを返します。
int8
bitset(300,5,'int8')
このエラーを回避するには、指定したデータ型の範囲内の値を入力します。
intout = bitset(75,5,'int8')
intout = 91
数値から 2 のべき乗を順次減算します。
a = intmax('uint8')
a = uint8 255
for k = 0:7 a = bitset(a, 8-k, 0); b(1,k+1) = a; end b
b = 1×8 uint8 row vector 127 63 31 15 7 3 1 0
複数のビットを異なる値に設定する
bits = 2:6; val = [1 0 0 1 1]; intout = bitset(0,bits,val,'int8')
intout = 1×5 2 0 0 16 32
入力値。配列として指定します。A、bit および V はそれぞれ、スカラーまたは同じサイズの配列です。
A が double 配列で、assumedtype が指定されていない場合、MATLAB® は A を符号なし 64 ビット整数として扱います。
assumedtype が指定されている場合、A のすべての要素は assumedtype の範囲内の整数値でなければなりません。
データ型: double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
double
int16
int32
int64
uint8
uint16
uint32
uint64
ビット位置。整数または整数配列として指定します。A、bit および V はそれぞれ、スカラーまたは同じサイズの配列です。bit の値は、1 (最下位ビット) と A の整数クラスにおけるビット数の間でなければなりません。
'uint64'
'uint32'
'uint16'
'uint8'
'int64'
'int32'
'int16'
'int8'
想定される A のデータ型。'uint64'、'uint32'、'uint16'、'uint8'、'int64'、'int32'、'int16' または 'int8' のいずれかを指定します。
A が double 配列の場合、assumedtype には任意の有効な整数型を指定できますが、既定では 'uint64' が指定されます。
A が整数型配列の場合、assumedtype にはそれと同じ整数型を指定しなければなりません。
データ型: char | string
char
string
ビット値。スカラーまたは数値配列として指定します。A、bit および V はそれぞれ、スカラーまたは同じサイズの配列です。
データ型: double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical
logical
調整された整数。配列として返されます。intout のデータ型は A と同じです。
A、bit および V がすべてスカラーの場合は、intout もスカラーになります。
A、bit または V のいずれかが配列の場合、intout はその配列と同じサイズになります。
すべて展開する
backgroundPool
ThreadPool
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
bitset 関数は GPU 配列入力をサポートしますが、次の使用上の注意および制限があります。
入力値 A およびビット位置 bit の少なくとも 1 つは整数データ型でなければなりません。
assumedtype 引数はサポートされていません。
詳細については、GPU での MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
R2006a より前に導入
bitand | bitcmp | bitget | bitor | bitshift | bitxor | intmax
bitand
bitcmp
bitget
bitor
bitshift
bitxor
intmax
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ