#define CMO_ZZ 20
この節ではOpen xxx 規約における任意の大きさの整数(bignum)の扱いについ て説明する. Open XM 規約における多重精度整数を表すデータ型 CMO_ZZ は GNU MPライブラリなどを参考にして設計されていて, 符号付き絶対値表現を用 いている. (cf. kan/sm1 の配布ディレクトリのなかの plugin/cmo-gmp.c) CMO_ZZ は次の形式をとる.
int32 CMO_ZZ | int32 | int32 | int32 |
は32bit整数である. は unsigned int32 である. は である. この CMO の符号は の符号で定める. 前述し たように, 32bit整数の負数は 2 の補数表現で表される.
Open xxx 規約では上の CMO は以下の整数を意味する. ()
例: int32 を network byte order で表現 しているとすると,例えば, 整数 は CMO_ZZ で表わすと,
なお ZZ の 0 ( (ZZ) 0 と書く ) は, (CMO_ZZ, 00,00,00,00) と表現する.