bit_count(offset = 0, length = nil) -> IntegerRuby 4.1 から[permalink][rdoc][edit]-
バッファに含まれる、立っているビット(値が
1のビット)の数を返します。ポピュレーションカウント、あるいはハミング重みとも呼ばれます。
offsetとlengthを指定すると、バッファの一部の範囲だけを対象に数えます。- [PARAM]
offset: -
数える範囲の開始位置をバッファの先頭からのバイト数で指定します。省略した場合は
0です。 - [PARAM]
length: -
数える範囲の長さをバイト数で指定します。省略した場合は
offsetからバッファの終端までです。 - [RETURN]
- 対象の範囲に含まれる、立っているビットの数を返します。
- [EXCEPTION]
ArgumentError: -
offsetとlengthの合計がバッファのバイト数を超える場合に発生します。
p IO::Buffer.for("\xFF\x00\x0F").bit_count # => 12 p IO::Buffer.for("\xFF\x00\x0F").bit_count(1, 2) # => 4[SEE_ALSO] IO::Buffer#~, String#bit_count
- [PARAM]