ビット操作および表現手続:表

注意:大括弧 [...] で囲まれているものは省略可能な引数を表しています。

名前 手続型 説明 引数/関数の型
ビット操作
BIT_SIZE 組込み関数 BIT_SIZE(i)

i の整数中のビット数を返します。
i:整数型

結果:i と同じ型
BTEST 組込み関数 BTEST(i,pos)

i の位置 pos にあるビットを検証します。ビットが 1 であれば真になります。
i:整数型

pos:正の整数

結果:論理型
IAND 組込み関数 IAND(i,j)

論理 AND を実行します。
i:整数型

j:整数型

結果:i と同じ型
IBCHNG 組込み関数 IBCHNG(i,pos)

i の位置 pos にあるビットの値を反転します。
i:整数型

pos:正の整数

結果:i と同じ型
IBCLR 組込み関数 IBCLR(i,pos)

i の位置 pos にあるビットをゼロにクリアします。
i:整数型

pos:正の整数

結果:i と同じ型
IBITS 組込み関数 IBITS(i,pos,len)

i の位置 pos から始まる長さ len のビット列を抽出します。
i:整数型

pos:正の整数

len:正の整数

結果:i と同じ型
IBSET 組込み関数 IBSET(i,pos)

i の位置 pos のビットに 1 を設定します。
i:整数型

pos:正の整数

結果:i と同じ型
IEOR 組込み関数 IEOR(i,j)

排他的 OR を実行します。
i:整数型

j:整数型

結果:i と同じ型
IOR 組込み関数 IOR(i,j)

OR を実行します。
i:整数型

j:整数型

結果:i と同じ型
ISHA 組込み関数 ISHA(i,shift)

shift ビットだけ算術的に左または右に移動します。shift が正ならば左に,shift が負ならば右に移動します。左または右の端から外にはみ出されたビットは失われます。反対側の端にはゼロが格納されます。
i:整数型

shift:整数型

結果:i と同じ型
ISHC 組込み関数 ISHC(i,shift)

shift ビットだけ左または右に i の循環けた移動を実行します。shift が正ならば左に,shift が負ならば右に移動します。失われるビットはありません。
i:整数型

shift:整数型

結果:i と同じ型
ISHFT 組込み関数 ISHFT(i,shift)

shift ビットだけ左または右に i の論理けた移動を実行します。shift が正ならば左に,shift が負ならば右に移動します。左または右の端にはみ出されたビットは失われます。反対側の端にはゼロが格納されます。
i:整数型

shift:整数型

結果:i と同じ型
ISHFTC 組込み関数 ISHFTC(i,shift[,size])

shift ビットだけ (省略可能な) size の右端のビットの循環けた移動を実行します。失われるビットはありません。
i:整数型

shift:整数型

size:正の整数

結果:i と同じ型
ISHL 組込み関数 ISHL(i,shift)

shift ビットだけ左または右に i の論理けた移動を実行します。shift が正ならば左に,shift が負ならば右に移動します。左または右の端にはみ出されたビットは失われます。反対側の端にはゼロが格納されます。
i:整数型

shift:整数型

結果:i と同じ型
MVBITS 組込みサブルーチン MVBITS(from,frompos,len,to,topos)

1 つの整数から別の整数にビット列をコピーします。
from:整数型

frompos:正の整数

to:整数型

topos:正の整数
NOT 組込み関数 NOT(i)

論理否定を実行します。
i:整数型

結果:i と同じ型
ビット表現
LEADZ 組込み関数 LEADZ(i)

整数中の先頭からのゼロ・ビットの個数を返します。
i:整数型

結果:i と同じ型
POPCNT 組込み関数 POPCNT(i)

整数中の 1 のビットの個数を返します。
i:整数型

結果:i と同じ型
POPPAR 組込み関数 POPPAR(i)

整数のパリティを返します。
i:整数型

結果:i と同じ型
TRAILZ 組込み関数 TRAILZ(i)

整数中の後ろのゼロのビットの個数を返します。
i:整数型

結果:i と同じ型