* システムプログラミング会 - connpass http://connpass.com/event/34995/ がおもしろそうだったので, #spkai をまとめました. 何かあればお手数をおかけしますが,ご連絡下さい. あるいは,編集できるようにしてあるはずなので,編集して下さい.

詳細 x87 FPUタグワードの全てのタグの値を空(値を全て1)に設定します。この命令によって、 (MMX® テクノロジレジスターとして別名定義されている)x87 FPUレジスターは、 x87 FPU浮動小数点命令で使用可能としてマークされます。 (x87 FPUタグワードのフォーマットを参照してください。) EMMS命令以外のその他のMMX命令は、x87 FPUタグワード内の全てのタグを有効に (全て0に)設定します。 x87浮動小数点命令を実行する前に、全てのMMX関連のプロシージャ/サブルーチン処理の 終わりでEMMS命令を使用してMMXの状態をクリアしておく必要があります。x87 FPUデータタグ ワードがEMMS命令によってリセットされる前に、他のx87浮動小数点命令がx87 FPUレジスター の1つに値をロードした場合は、x87浮動小数点レジスター・スタック・オーバーフローが発
実行しているのは次のコードです.fld でメモリにある80ビットの浮動小数を スタックにつみます. (a) の fsub 命令でスタックの上部の2つの数値を取り出して 減算し, 結果をスタックに戻します. (b) の fsubp 命令では fsub の後にスタック をポップ(スタックトップを空にした後,ポインタをインクリメント)します. (c) の例では, fcompp で大きさを比較した結果を C0, C2, C3 の条件コードに設定 してスタックを2回ポップしています. 比較に使った数値が不用の場合です. Num16 dt 16.0 Num4 dt 4.0 fld tword[Num16] fld tword[Num4] fsub st1, st0 ; (a) ; または fsubp st1,st0 (b) ; または fcompp st1,st0 (c) 使いやすいのは (b) の方
movl 3(%esi,%ebx,2), %eax 整数演算 ロード/ストア mov eax, [4] mov eax, [ebx] mov eax, [ebx+4] mov eax, [ecx*2+4] mov eax, [ebx+ecx] mov eax, [ebx+ecx+4] mov eax, [ebx+ecx*2] mov eax, [ebx+ecx*2+4] mov eax, [rip+4] レジスタ (eax, ebx, ecx の部分) は汎用レジスタどれでも指定できる。 シフト (*2 の部分) は 2, 4, 8 のいずれか。 オフセット (+4 の部分) は符号付き 8 ビットまたは 32 ビット。 64 ビットでは rip 相対アドレッシングが可能。 ただし単純にオフセット (符号付き 32 ビット) を加算する形式のみ。 32 ビットでは eip 相対は不可。 c
x87 FPU このサイトではx87 FPUについて説明します。x87 FPUは浮動小数点演算を行うユニットです。 x86で数値演算として整数演算命令しかサポートされていなかったので、浮動小数点演算を行うには 専用のライブラリが必要でした。x87をx86システムに組み込むことで、プログラムからは浮動小数点演算を 1つのCPUで実行しているかのように扱うことができます。x87はx86のバスと接続されていて、実行する命令を 常時監視し、x86の無効命令(ESC)となる浮動小数点演算命令を検出するとx86がアドレスモードを変更することで x87用のオペコードとオペランドを読み込み処理します。 x87 FPUは16ビットのコプロセッサで、もともとx86とは独立したICでしたが、80486DXおよびPentium以降に 1つのプロセッサとして統合されました。 x87 FPUの構成 x87 FPUはI
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く