jpとjmpって何か違うの?(jpはJump Parityです)


というわけで、久しぶりにアセンブラのコードも書いてます。
かなり久しぶりですね。考えてみたら大学生の時以来かもしれません。
で、はまったのが、
条件無しジャンプを「jp ラベル」で書いてたんですが、どうもアキュームレーターのEAXが変な値になります。
「jmp ラベル」だと無問題でした。
これはいったいどうゆうことですか?(#゚Д゚)聞いてないぞゴルァ!!


調べたら解った_| ̄|○
http://download.intel.com/jp/developer/jpdoc/IA32_Arh_Dev_Man_Vol2A_i.pdf
jpってのは、パリティがあったら分岐だった(^^;
そりゃ誤動作して当然(^^;




しかし、インラインアセンブラでかけるのですごく便利。エラーも解るし、間違ってもOSが落ちたりしないし(w
学生の時はZ80とかi8086でかなり長いアセンブラのプログラムも作ってたので、
久しぶりにやると楽しいですね。
http://homepage1.nifty.com/herumi/index.html
こちらの光成滋生さんのサイトは詳しいですね。
Pentiumはスーパースカラだから2命令同時実行できますが、できる命令とできない命令があるので
そのへんを考えてコードを書くとよりclockが減るようです(^^;
命令の依存関係が無いようにならべるということですね。
あまり懲りすぎると時間が足りないのでほどほどにします(w
謎電の高橋さんとか好きそう(w