<bit>
個々のビットとビットのシーケンスに対して、アクセス、操作、処理を行う関数を定義します。
たとえば、ビットを回転させる、連続するセットまたはクリアされたビットの数を見つける、数値が 2 の整数の累乗であるかどうかを確認する、数値を表す最小のビット数を見つけるといった関数があります。
要件
ヘッダー:<bit>
名前空間: std
/std:c++20
以降が必要です。
メンバー
種類
型 | 説明 |
---|---|
endian | スカラー型のエンディアンを指定します。 |
関数
関数 | 説明 |
---|---|
bit_cast | オブジェクト表現を 1 つの型から別の型に再解釈します。 |
bit_ceil | 値以上の 2 の最小累乗を求めます。 |
bit_floor | 値以下の 2 の最大の整数乗を求めます。 |
bit_width | 値を表すために必要な最小ビット数を求めます。 |
countl_zero | 最上位ビットから始めて、0 に設定された連続ビットの数をカウントします。 |
countl_one | 最上位ビットから始めて、1 に設定された連続ビットの数をカウントします。 |
countr_zero | 最下位ビットから始めて、0 に設定された連続ビットの数をカウントします。 |
countr_one | 最下位ビットから始めて、1 に設定された連続ビットの数をカウントします。 |
has_single_bit | 値に 1 に設定されたビットが 1 つしかないかどうかを確認します。 これは、値が 2 の累乗であるかどうかをテストすることと同じです。 |
popcount | 1 に設定されたビット数をカウントします。 |
rotl | ビットごとの左回転の結果を計算します。 |
rotr | ビットごとの右回転の結果を計算します。 |