assembly

    0

    1答えて

    私は、ファイルを分析し、その情報(名前とサイズ)をファイルに出力するアセンブラプログラムを作成しています。私は基本的に4Ehと4Ehの割り込みを使用してファイルを検索しています。それらは両方とも、そのファイルに関する情報に基づいてDTAオブジェクトを返します。 16ビットのユーザー入力サイズと比較する必要がある32ビットファイルサイズを戻します(指定されたユーザー入力サイズより大きい場合はファイル

    0

    1答えて

    アセンブリレベルでsyscallを実行するときにasがnasmと異なる動作をする理由を理解しようとしています。私は処罰の大食主なので、私はIntel構文を使用しています。私はld -s -o prog prog.oとas -o prog.o prog.sとリンクして組み立て .intel_syntax noprefix .section .rodata .LC0: .stri

    0

    1答えて

    私は新人ですが、最近はバッファオーバーフローの仕組みを理解するためにバッファオーバーフローに取り組んでいます。 私はあなたがアセンブリにこれらを見たときに関数が呼び出されることを知っている: push ebp ; Save the caller's ebp mov ebp, esp ; Update ebp with current stack frame's esp 最初は、私は

    -1

    1答えて

    私はしばらくの間、自分のコードを修正しようとしていましたが、私はwork.Itにそれを得るように見えることはできませんエラーを教えてください:COMファイルを生成することはできません。どのように私はこれを修正することができる任意のアイデア? .model small .386 .stack 100h .data inpM db "Input string: $" inpu

    0

    1答えて

    私は非常に混乱し、ブロックに当たっています。私のクラスの課題は、私が次のことをしていることです。 すべて大文字に入力 変換文字列 変換された文字列を持つユーザーに表示するメッセージ のプロンプトグリートユーザー Iは1と2とは問題を持っていない、必要なとき私は小文字を大文字に変換するループを理解することができます。 cmp $96, %ah jg Subtract call Loop Su

    4

    2答えて

    これは、基本的に、メッセージバッファを転送中にバッファのスワップを実行することです。このステートメントは私に困惑していました(私の組み込みアセンブリコードが不慣れであるため)。これは電源PCの指示です #define ASMSWAP32(dest_addr,data) __asm__ volatile ("stwbrx %0, 0, %1" : : "r" (data), "r" (dest_ad

    0

    1答えて

    DX:AXの単語の符号付き除算をしようとしていますが、単語[b] = 10で1234567としましょう。 a dd 1234567 b dw 10 mov ax,[a] mov dx,[a+2] idiv word [b] 商は123456である必要がありますが、大きすぎるためaxに収まりません。この問題を解決するにはどうすればよいですか?

    0

    1答えて

    これを見て、アドレスを印刷するのに数時間を費やしてしまいました。これは、QTSpimで実行される簡単なアセンブリプログラムです。プログラムは、配列の中で最小の2つの整数を見つけ出し、配列の直後の位置のメモリに格納されたmainに追加して返します。 プログラムは配列の20個の値を取りますが、次にデータ/スタック読み取り値0x10040000の不良アドレスを計算して吐き出します。他のすべてのデータは0

    1

    1答えて

    .objがあります。元のソースファイルはありません。 私は、元の内容をスラッシュしないように私が使用するスタックレジスタにプッシュ/ポップすることに注意して、特定の指示に私自身のアセンブリを挿入することによって、結果のアセンブリファイルを変更します。 なぜですか?たぶん、特定のアセンブリ命令が実行されるたびに(つまり、デバッガ/ JTAGなしで)ピンを切り替えることができます。 次に、.objにア

    0

    1答えて

    私はTBBがどのようにアセンブリのswitch文のために働くかを理解しようとしています。私は教科書/オンラインマニュアルにそれがどのように記述されているのかを見ていますが、分岐表のオフセットがどのように働くのか分かりません。 分岐テーブルから命令にどのように移行しますか?正しいオフセットを得るためにラベルを減算する方法と、なぜ2で除算するのですか?私の教科書で それは次のようにプログラムが 分岐が