2006年11月24日(金) [長年日記]
■ [unix][c] bswap_
developerWorksのLinuxアプリケーションの64ビット・システムへの移植(左のURLはリンク切れ。新しいURL→ http://www.ibm.com/developerworks/jp/linux/library/l-port64/)に、
例えば、htonl(3)、ntohl(3)は、32ビット整数の変換に使用されます。同様に、htons(3)、ntohs(3)は、16ビット整数に使用されます。ただし、64ビットについては、標準の関数セットはありません。しかし、Linuxには、ビッグ・エンディアンとリトル・エンディアンの両方のシステムについて、次のようなマクロが用意されています。
- bswap_16
- bswap_32
- bswap_64
とあった。64ビットの変換にはこのマクロを使うといいかも。ただ、bswap_ は htons などとは違いマシンのエンディアンとは関係なく必ずバイト列を逆転させるようだ。
■ やること
- デザイン変更
- 保険
- 健康診断
- 蛍光灯