R6RS:翻訳:Standard Libraries:2 Bytevectors

R6RS:翻訳:Standard Libraries:2 Bytevectors

2 章 バイトベクタ

多くのアプリケーションでは様々な多きさの符号付きないし符号なし数値を抽出する、といったような様々な方法でバイナリデータの固まりにアクセスする。したがって、 (rnrs bytevectors (6)) ライブラリでは複数の方法でそのようなデータと単一のバイナリデータブロックの型を提供する。このライブラリは様々な多きさの整数や浮動小数点表現を指定されたエンディアンで扱うことができる。

バイトベクタは他とは区別された型である。概念上はバイトベクタは 8 bit のバイトの並びを表現する。バイトベクタの説明ではバイトという用語を {-128, ..., 127} の範囲の正確な整数オブジェクトについて用い、オクテットという用語を {0, ..., 255} の範囲の正確な整数オブジェクトについて用いる。

バイトベクタの長さはその格納しているバイト数である。この数は固定されている。バイトベクタに対して有効な添え字は、正確な非負の整数オブジェクトでバイトベクタの長さよりも小さいものである。バイトベクタの最初のバイトの添え字は 0 であり、最後のバイトの添え字はバイトベクタの長さより 1 小さい値である。

一般的に、バイトベクタのアクセス関数は表現される整数の大きさと、その表現のエンディアンに応じて異なるアクセス方法がある。これらの手続きでは符号付き表現と符号なし表現も区別する。符号付き表現はすべて 2 の補数表現を用いている。

文字列リテラルと同じように、バイトベクタを表すリテラルはクォートする必要がない。

#vu8(12 23 123)         ⇒ #vu8(12 23 123)

Last modified : 2008/03/22 23:44:45 UTC