表 4-7 に示すコマンドはデータ型の変換を行います。
表 4-7 32 ビットデータ型変換機能
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
bljoin |
( b.low b2 b3 b.hi -- quad ) |
4 バイトを結合して quadlet (32 ビット) を作ります。 |
bwjoin |
( b.low b.hi -- word ) |
2 バイトを結合して doublet (16 ビット) を作ります。 |
lbflip |
( quad1 -- quad2 ) |
quadlet 内の 4 バイトを逆に並べ替えます。 |
lbsplit |
( quad -- b.low b2 b3 b.hi ) |
quadlet を 4 バイトに分割します。 |
lwflip |
( quad1 -- quad2 ) |
quadlet 内の 2 つの doublet をスワップします。 |
lwsplit |
( quad -- w.low w.hi ) |
quadlet を 2 つの doublet に分割します。 |
wbflip |
( word1 -- word2 ) |
doublet 内の 2 バイトをスワップします。 |
wbsplit |
( word -- b.low b.hi ) |
doublet を 2 バイトに分割します。 |
wljoin |
( w.low w.hi -- quad ) |
2 つの doublet を結合して quadlet を作ります。 |
表 4-8 に示すデータ型変換用コマンドは 64 ビットの OpenBoot 実装専用です。
表 4-8 64 ビットデータ型変換機能
コマンド |
スタックダイアグラム |
説明 |
---|---|---|
bxjoin |
( b.lo b.2 b.3 b.4 b.5 b.6 b.7 b.hi -- o ) |
8 バイトを結合して octlet を作ります。 |
lxjoin |
( quad.lo quad.hi -- o ) |
2 つの quadlet を結合して octlet を作ります。 |
wxjoin |
( w.lo w.2 w.3 w.hi -- o ) |
4 つの doublet を結合して octlet を作ります。 |
xbflip |
( oct1 -- oct2 ) |
octlet 内の 8 バイトを逆に並べ替えます。 |
xbsplit |
( o -- b.lo b.2 b.3 b.4 b.5 b.6 b.7 b.hi ) |
octlet を 8 バイトに分割します。 |
xlflip |
( oct1 -- oct2 ) |
octlet 内の 2 つの quadlet をスワップします。各 quadlet 内の 4 バイトは逆に並べ替えられません。 |
xlsplit |
( o -- quad.lo quad.hi ) |
octlet を 2 つの quadlet に分割します。 |
xwflip |
( oct1 -- oct2 ) |
octlet 内の 4 つの doublet を逆に並べ替えます。各 doublet 内の 2 バイトは並べ替えられません。 |
xwsplit |
( o -- w.lo w.2 w.3 w.hi ) |
octlet を 4 つの doublet に分割します。 |