Binary Data Representation

ページ名:Binary Data Representation
  • Binary Data Representation

 READ および WRITE 命令では、Gambasデータ型の値のバイナリ表現を読み書きできます。

 

Datatype

Size Representation
Boolean 1 byte

FALSE の場合は 0TRUE.の場合は 255

Byte 1 byte 2進数のデータ値。
Short 2 bytes 2進数のデータ値。
Integer 4 bytes 2進数のデータ値。
Long 8 bytes 2進数のデータ値。
Pointer 4 bytes in 32 bits
8 bytes in 64 bits
2進数のポインター値。
Single 4 bytes 2進数のデータ値。
Float 8 bytes 2進数のデータ値。
Date 8 bytes 2つの4バイト整数としての日時。
String variable 最初に文字列の長さが可変長整数として書き込まれます。
  • ストリング長が127文字以下の場合は、1バイトが書き込まれます。

  • 文字列の長さが128〜16383文字の場合、2バイトが書き込まれます。

  • ストリング長が16384から1073741824文字の間の場合は、4バイトが書き込まれます。

  • 長い文字列は現時点では書くことができません。

その後、文字列の内容が書き込まれます。
Memory streamsは、代わりにnullで終わる文字列を読み書きします。

NULL 1 byte NULL値およびNULL文字列は単一の0バイトとして書き込まれます。
Variant Variable バリアント値を書き込むときは、valueデータ型を示すバイトが先に書き込まれます。 値自体はこの表に従って書かれています。
Array 2 bytes + array length + array contents
  • 値が65の1バイト

  • 値が配列内容データ型を表す1バイト。

  • 配列の長さ。文字列の長さのように書かれます。

  • 各配列要素の値

Collection 1 byte + collection length + collection contents
  • コレクションキーの大文字と小文字が区別される場合は67、大文字と小文字が区別されない場合は99です。

  • コレクションの長さ。文字列の長さのように書かれています。

  • 各収集項目について

    • 文字列キー

    • 関連値

Structure Contents size
  • 構造体の内容は宣言順に再帰的に書き込まれます。

  • 埋め込み配列の項目は順番に書き込まれます。 通常の配列とは反対に、サイズや型ヘッダーは書き込まれません。

バイナリデータのエンディアンは、ストリームのエンディアンです。

See also

シェアボタン: このページをSNSに投稿するのに便利です。

コメント

返信元返信をやめる

※ 悪質なユーザーの書き込みは制限します。

最新を表示する

NG表示方式

NGID一覧