nasm

    2

    1答えて

    を呼び出します。これはstdcall呼び出し規約を使用し、商を戻します。これらの仕様は次のとおり 入力:[EDX、EAX(配当)、[ECX、EBX(除数) 出力:[EDX、EAX(商)、[ECX、EBX(余り) これを行うにはどうすればよいですか? (私の主な問題は、EBPとESPを正確に理解することではなく、ローカル変数とどう関係するかです。) ありがとうございました!

    0

    1答えて

    現在、コードをコンパイルするのにNASMを使用していますが、コードをシミュレートするツールはありません。シミュレーション用に使いやすいツールをお勧めします。 ありがとうございました。

    3

    1答えて

    シンプルなasmブートローダとC++カーネルを書くことにしました。私は、チュートリアルをたくさん読んで、私はアセンブリファイルをコンパイルカントこのように思える: [BITS 32] [global start] [extern _k_main] start: call _k_main cli hlt (私はCファイルからk_main機能番目呼び出すしたいと

    3

    1答えて

    最初のUSBドライブを意味する引数(レジスタdl)を知っていますか? 私はNASMのチュートリアルをいくつか試していますが、物理的なブートをしたいと思います(私はqemuでクリーンなものを手に入れることができます)。 これは、ディスクからの「カーネル」のデータをロードするコードのセクションです: loadkernel: mov si, LMSG ;; 'Loading kernel',1

    0

    1答えて

    私はいくつかのx86アセンブリを学習しようとしています。私はコンパイラとしてNASMを使用しています。私はthis codeが働いていますが、コンパイルするとエラーが発生します。 $ nasm -f bin -o myfirst.bin myfirst.asm myfirst.asm:46: error: parser: instruction expected どのようなアイデアが間違って

    1

    2答えて

    ラベルアドレス/オフセットの最上位ビットを設定する必要があります。 は、私が試した: test.nasm: BITS 32 dw mylabel | 0x8000 mylabel: dd 0 しかし、これを組み立てるしようとしたとき、私は得る: nasm -f bin test.nasm test.nasm:3: error: `|' operator may only be ap

    1

    3答えて

    アセンブリで部分文字列を検出する方法がより効率的かどうか、現在計画していることがありますか? 文字列命令 "scansb/scasw/scads"は、EAXの値とEDIで指定された値を比較できます。しかし、わかっている限り、この方法論を使って一度に1文字しか検索することはできません。 文字列 "pleasehelpme"で "help"の位置を探したい場合は、scansbを使ってhのオフセットを見

    2

    1答えて

    オペレーティングシステムのブートローダと同じ考えです。私はCのソースコードとアセンブリのソースコードを持っています。アセンブリコードでCアプリケーションに制御を渡す必要があります。私はLinuxで作業していて、コンパイルにGCC + NASMを使用しています。私は特別な方法でそれらをコンパイルする必要がありますか? cアプリケーションを読み込んで起動するために使用されるアセンブリコードは何ですか?

    0

    1答えて

    nasmアセンブリでprintfを複数回呼び出すと、同じ行に出力できます。 例:10は、改行文字を表すので、私は 56 をご希望のに対し 5 6 で SEGMENT .text mov eax,5 push eax push format_num call printf add esp,8 ...other code mov eax,6 push eax push

    0

    2答えて

    1 == 1のような関係式が真であれば1、偽であれば0を与えたいと思います。 nasmアセンブリでこれを行う簡単な方法はありますか?