x86

    1

    1答えて

    私はジョナサン・バートレットの「基礎からプログラミング」の本からGNUアセンブリを学んでいます。 関数呼び出しとスタックのトピックを調べているうちに、その動作を理解できません。以下は は本に書かれているものです: 機能を実行する前に、プログラムは、彼らが文書化されていることを逆の順序でスタックに関数のパラメータのすべてをプッシュ。次に、プログラムは、どの機能を開始したいかを示す呼び出し命令を発行す

    3

    1答えて

    アセンブリの深さはわかりません。以下のコードは、ハードウェアポートに書き込むためのコードです。私はコンパイルused.When コンパイラがインラインアセンブラがあるすべての行にオペランドの型の不一致エラーを与える私はこれらのエラーを取得: port.cpp: Assembler messages: port.cpp:27: Error: operand type mismatch for 'o

    2

    1答えて

    配列ベースのコードを並列化するために、インテル®AVXイントリンシクス関数を使用して大規模配列を並列処理する方法を解明しようとしています。 私は、256ビットのAVXベクトルが最大8並列32ビット整数/ 32ビット浮動小数点数または最大4並列64ビット倍精度をサポートすることを読みました。フロート部は私に何の問題を与えていないと正常に動作しますが、整数AVX機能は私に頭痛を与えているが、私は証明す

    -1

    1答えて

    私はJavaの下でx86命令エミュレーションを試しています(楽しいため)。命令が持つ可能性のある「オーバーライドプレフィックス」の問題に遭遇しました。 接頭辞は命令の動作を変更することがあります "オペランドサイズのオーバーライド接頭辞"を指定すると、オペランドのサイズを変更できます。 16ビットから32ビット、またはその逆。 問題は今:16ビットモードでプログラムを実行すると、すべての演算がch

    0

    1答えて

    は、私は、コンソールウィンドウに複数並ぶ文字列を印刷するいくつかの問題を抱えています。プログラムを実行してメニューを表示すると、文字列の最初の行だけがコンソールウィンドウに表示されます。 は、どのように私は複数行に表示する文字列変数を作成することができますか? INCLUDE Irvine32.inc .386 .model flat,stdcall .stack 4096 ExitPr

    0

    2答えて

    nasm x86アセンブラで[]を使用してアドレスを操作する方法を理解したいと思います。 MY_TABLE TIMES 10 DW 0 ; Allocates 10 words (2 bytes) each initialized to 0 MOV EBX, [MY_TABLE] ; Effective Address of MY_TABLE in EBX MOV [EBX], 110

    2

    1答えて

    私は本書からこのアセンブリプログラムを勉強していましたが、私はそれについて質問します。このプログラムの目的は、単にstring1をstring2にコピーすることです。私の質問は、次の2つの命令に関する: mov AX,DS mov ES,AX 私はそれらなしで参照、プログラムが正しく動作しませんが、私はそれはあなたが必要なすべてのだろう、string2のにESI string1とするとE

    0

    1答えて

    私は一度有効なPE実行可能ファイルだったが、すべてのヘッダが消去されたバイナリファイルを持っています(DOSヘッダ、PEヘッダ、セクションテーブル)。私はIDAのasmに変換された場合、有効なasmコードを表示するので、あるセクションが.textであると推測しました。 .rdataには、プログラムのロジックに対応する文字列が含まれているため、簡単に見つけられました。しかし、それ以上の進歩はありませ

    10

    3答えて

    Intel PMUを使用して、コアごとの読み取り/書き込みメモリ帯域幅の使用量を測定できますか?ここで、「メモリ」は、DRAMを意味する(すなわち、いかなるキャッシュレベルにも当てられない)ことを意味する。

    0

    2答えて

    なぜ以下の命令を仮想化する必要があるのですか?これを仮想化できないと問題を引き起こす可能性があります。 sgdt、SLDT、SIDT、SMSW fcall、longjump、SRT LAR、VERR、VERW、LSL PUSHF、POPF、IRET