ビット演算†

5 個の関数。

BITWISE_AND†

書式†

BITWISE_AND( var1 , var2 )

引数†

Parameter Description
var1 数値
var2 数値

戻り値†

成功時:ビットAND演算の数値結果 失敗時:VOID

解説†

var1 と var2 のビット AND演算を行う。演算の前に、それぞれを整数(符号付き64ビット)に変換する(Tc566-1より前は符号付き32ビット)。

使用例†

_val1 = 30  // 2進数: 11110
_val2 = 13  // 2進数: 01101
BITWISE_AND(_val1, _val2)  // 12 (2進数: 01100) を出力

互換性†

関連項目†


BITWISE_OR†

書式†

BITWISE_OR( var1 , var2 )

引数†

Parameter Description
var1 数値
var2 数値

戻り値†

成功時:ビットOR演算の数値結果 失敗時:VOID

解説†

var1 と var2 のビット OR演算を行う。演算の前に、それぞれを整数(符号付き64ビット)に変換する(Tc566-1より前は符号付き32ビット)。

使用例†

_val1 = 28  // 2進数: 11100
_val2 = 9   // 2進数: 01001
BITWISE_OR( _val1, _val2 )  // 29 (2進数: 11101) を出力

互換性†

関連項目†


BITWISE_XOR†

書式†

BITWISE_XOR( var1 , var2 )

引数†

Parameter Description
var1 ビット演算を行う値
var2 ビット演算を行う値

戻り値†

成功時:ビットXOR演算の結果(数値) 失敗時:VOID

解説†

var1 と var2 のビット XOR演算を行う。演算の前に、それぞれを整数(符号付き64ビット)に変換する(Tc566-1より前は符号付き32ビット)。

使用例†

_val1 = 28 // binary: 11100
_val2 = 9  // binary: 01001
BITWISE_XOR( _val1, _val2 ) // 21 を返す(2進数: 10101)

互換性†

関連項目†


BITWISE_NOT†

書式†

BITWISE_NOT( var )

引数†

Parameter Description
var 演算対象の数値

戻り値†

成功時:ビットNOT演算後の数値結果 失敗時:VOID

解説†

var のビット NOT 演算を行う。演算の前に、整数(符号付き64ビット)に変換する(Tc566-1より前は符号付き32ビット)。

使用例†

_val = 28          // 2進数: 00011100
BITWISE_NOT(_val)  // -29 (2進数: 11100011) を返す

互換性†

関連項目†


BITWISE_SHIFT†

書式†

BITWISE_SHIFT(var, shift)

引数†

Parameter Description
var シフト対象の数値
shift シフトするビット数。正の値の場合は左シフト、負の値の場合は右シフト

戻り値†

成功時:ビットシフト演算の数値結果 失敗時:VOID

解説†

var のビットシフト演算を行う。演算の前に、整数(符号付き64ビット)に変換する(Tc566-1より前は符号付き32ビット)。

shift でシフトするビット数を指定する。shift が正の場合は左シフト、負の場合は右シフトになる。右シフトの場合、算術シフトになるか論理シフトになるかは処理系依存。現在配布されている Windows 用の yaya.dll では算術シフトになる(BITWISE_SHIFT(-8, -1) は -4)。

使用例†

_var = 0x7fffffff
_result = BITWISE_SHIFT(_var, -2)
// _result は 0x1fffffff になる

互換性†

関連項目†