Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

$BITCOUNT (ObjectScript)

bitstring のビット数を返します。

Synopsis

$BITCOUNT(bitstring,bitvalue)

引数

引数 説明
bitstring ビット文字列として評価される式。任意のタイプの変数、$FACTOR、ユーザ定義関数、または oref.prop..propi%prop (インスタンス変数) プロパティ参照を指定できます。
bitvalue オプション — ビット文字列内をカウントする値 (0 または 1)

概要

$BITCOUNT 関数は、ビット文字列内のビットの数をカウントします。ビット文字列は、ビットの連続としてシステムに解釈される、エンコードされた文字列です。$BIT$BITLOGIC を使用して、ビット文字列を作成することができます。

$BITCOUNT(bitstring) は、bitstring 内のビット数を返します。

$BITCOUNT(bitstring, bitvalue) は、bitstring 内の bitvalue (0 または 1) タイプのビット数を返します。

最大のビット文字列長は 262,104 ビット (32763 x 8) です。

InterSystems IRIS のエンコードされたビット文字列ではない bitstring 値を指定すると、<INVALID BIT STRING> エラーが生成されます。詳細は、"ビット文字列関数の概要" を参照してください。

bitstring = [0,0,1,1,0] の場合、$BITCOUNT(bitstring) の結果は 5 になります。

  SET $BIT(a,1) = 0
  SET $BIT(a,2) = 0
  SET $BIT(a,3) = 1
  SET $BIT(a,4) = 1
  SET $BIT(a,5) = 0
  WRITE !,$BITCOUNT(a)

bitstring= [0,0,1,1,0] の場合、$BITCOUNT(bitstring,0) の結果は 3 になります。

  SET $BIT(a,1) = 0
  SET $BIT(a,2) = 0
  SET $BIT(a,3) = 1
  SET $BIT(a,4) = 1
  SET $BIT(a,5) = 0
  WRITE !,"number of zero bits:",$BITCOUNT(a,0)
  WRITE !,"number of one bits: ",$BITCOUNT(a,1)

次の例は、$FACTOR によって生成されたランダムな 16 ビットのビット文字列に含まれ、値が 1 であるビットの数を返します。

   SET x=$RANDOM(65536)
   FOR i=1:1:16 {WRITE $BIT($FACTOR(x),i) }
   WRITE !,"Number of 1 bits=",$BITCOUNT($FACTOR(x),1)

関連項目

FeedbackOpens in a new tab