2007-09-08から1日間の記事一覧

K&Rを読もう(32) 演習 2-9 - 2-10 bitcount

GCC

感動した。 演習 2-9 2の補数システムでは、x = x & (x - 1)により、xの最も右の1ビットが消える。何故かを説明せよ。この事実を使って、もっと早いbitcountプログラムを書け。 説明 01110000で説明する。x - 1をすると、 01110000 - 1 = 01101111一番右の1…

K&Rを読もう(31) 演習 2-6 - 2-8 ビット結合

GCC

この演習問題しんどかった。インラインアセンブラで死にそうに・・・。 演習 2-6 位置pから始まるnビットのyの右端のnビットにセットし,他のビットをそのままにしたxを返す関数setbits(x,p,n,y)を書け。 図にしてみる setbits(0x55, 4 , 3, 0xFF)を例にする…

バイナリエディタbvi入れてみた。

Vimのバイナリモードは激しく使いにくいので、viライクなバイナリエディタbvi入れてみた。BVI - Binary VIsual editorfedoraのパッケージには無かったので、ソースコンパイルした。 基本的な使い方 viライクです。 hjklで移動。 TAB移動が便利。 /,?で検索も…