付録C.4 マシンコード形式の作成と検証
Encodingフィールドの値を作成するには,要求されたマシンコード形式を示す適切な定数値を,論理的ORで結合します。論理的オペレーションをサポートしていない言語では,定数を加算できます。ただし,同じ定数は2回以上加算できません。
特定のマシンコード形式についてEncodingフィールドをテストするには,そのフィールドを論理的ANDで要求されるマシンコード形式のマスクで結合してください。また,そのマシンコード形式に有効な値と値が同じかどうか確認してください。マシンコード形式に有効な値は,MQENC_INTEGER_*,MQENC_DECIMAL_*,またはMQENC_FLOAT_*です。
論理的オペレーションがサポートされていない言語では,次に示す方法で各マシンコード形式化の値を確認できます。
-
要求されたマシンコード形式に対応する値を選択し,その値を"A"とします。
2進整数の場合:1
10進パック形式の場合:16
浮動小数点の場合:256
-
Encodingフィールドの値を"A"で割り,その結果を"B"とします。
-
"B"を16で割り,その結果を"C"とします。
-
"C"に16を掛けた値を"B"から引きます。その結果を"D"とします。
-
"D"に"A"を掛け,その結果を"E"とします。
-
"E"が要求されるマシンコード形式に有効な値と等しいか確認してください。