2003-09-01から1ヶ月間の記事一覧

XOR交換性

NOT A = a とする A XOR 0 XOR 0 = A A XOR 0 XOR 1 = a A XOR 1 XOR 0 = a A XOR 1 XOR 1 = A 上記より A XOR 0 = A A XOR 1 = a また A XOR A = 0 A XOR a = a←間違い A XOR a = 全ビット1 以下の交換性がある D = B XOR C A XOR B XOR C = A XOR D

NOT(~)の役割

真偽値表 not 0 = 1 not 1 = 0 (1)全ビット反転子 XORの「任意ビット反転」に対し、NOTではすべてのビットが反転します。逆に言えば、xorで全ビットをブロックすれば、NOTと同じ効果になるので、下の2つは等価です(Aを32bitとする) not A A xor 0xFFFFFF…

XOR(^)の役割(修正)

真偽値表 0 xor 0 = 0 0 xor 1 = 1 1 xor 0 = 1 1 xor 1 = 0 (1)繰り上がり無し足し算 上記を見れば分かるとおり、XORでは繰り上がり無し足し算の結果を返します。(2)ビットブロック(任意ビット反転子) (1)の応用です。XORでは、0ならそのビット…

XOR(^)の役割

真偽値表 0 xor 0 = 0 0 xor 1 = 1 1 xor 0 = 1 1 xor 1 = 0 (1)繰り上がり無し足し算 上記を見れば分かるとおり、XORでは繰り上がり無し足し算の結果を返します。(2)ビットブロック (1)の応用です。XORでは、0ならそのビットをスルー、1ならそのビ…

ビット演算魔術(Bit Computing Magic(英語は適当))

「ビット演算魔術」はスーパープログラマやねうらお氏がはじめた言葉である(グーグル先生に聞いてもヒットしないので、恐らく氏が初出)。RGB565,555という変則的な画像情報に対し高速な演算を可能にする為に氏およびSYN氏、さ〜氏によって研究が進められた…

プログラミングとは何か

みはえるは現在24歳だが、みはえると同年代かそれより後のプログラマはポインタやビット演算などのプリミティブなプログラミング行為をまともに勉強せずにプログラマになっていると思う(勉強しなくてもプログラムは組めるから)。確かに、プログラムの歴…

ゲームプログラミングは、常にマシン性能との戦いである。

この領域を使わないのはもったいない気がする。 そこで以前から書きたいと思っていたがいまいちまとめられないコンピュータプログラミング関連の事を思いつくままに書いておいて、後でまとめようと思う。専門的知識を要するが解説はしない(知りたい方はコメ…