問題タブ [masm32]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
assembly - Masm32 アセンブリ プログラムが期待どおりに動作しない
Youtube ビデオ チュートリアルで入手したアセンブリ プログラムの次のソースがあります。
プログラムをバッチファイルでコンパイルします
バッチ ファイルを assemble.bat と呼ぶので、ソースのアセンブルを呼び出すと、実行可能ファイルがアセンブルされます。
問題は、プログラムを実行すると (プログラムはエラーなしで正常にアセンブルされます)、プログラムが単に何もしないことです。コンソール プロンプトで呼び出すと、何も実行されず、プログラムは空白行を表示するだけで、何も起こらなかったかのようにコマンド プロンプトに戻ります。
ビデオチュートリアルでは、男は自分のプログラムを組み立ててコンパイルし、正常に動作しましたが、私には何も起こりません.
masm32 - MASM32 文字列比較
2 つの文字列を比較する次のコードを作成しました。1 つは事前定義されており、もう 1 つはユーザーからの入力として取得されます。しかし、プログラムがそれらを不平等として表示するたびに。私を助けてください。MASM32 アセンブラを使用しています。
assembly - アセンブリ言語: ax コマンド ラインの値を出力するにはどうすればよいですか?
アセンブリ言語。私はmasm32を使用しています。ax = 100h があるとしましょう。コマンド ラインで ax の値を出力するにはどうすればよいですか。ありがとう
string - MASMでバイナリ文字列変数を定義する方法は?
C ++では、次のようなバイナリ文字列の定義を使用できます。
今私はMASMでそれをやろうとしています、私はこれを試しました:
ただし、MASMは、組み立て時に「数字が数字でない」というエラーを表示します。MASMでこれをどのように行う必要がありますか?
string - masm の 16 進数のデコード (null バイトの問題)
私はmasmで16進数のバイナリ文字列をデコードしようとしています.最初はhtodwを試しましたが、正しくデコードされていなかったので、hex2binを試しました.これは正常にデコードされているようですが、nullバイトに問題があります. 16 進数でエンコードされた文字列は、最初のヌル バイト (0x00) で終了します。
これが私のコード例です:
含まれている文字の種類に関係なく、どのような種類の 16 進数でエンコードされた文字列をデコードするにはどうすればよいですか?
memory - .data は大量にスタックまたはヒープに移動しますか?
MASM の .data セグメントで変数を宣言すると、それらの変数はどこに割り当てられますか? スタックまたはヒープメモリ内? そして、「.data?」はどうですか? セグメント?
http - 大量のバッファに追加しますか?
ウェブサイトのコンテンツを masm の文字列として取得したいのですが、wininet を使用していますが、ページは正常に要求されますが、InternetReadFile を使用してコンテンツを読み取る場合、すべてを同じバッファーに入れる方法がわかりません。一気読み。
コードは次のようになります。
それはターミナルでページ全体を印刷しますが、最後に読み取ったチャンクだけでなく、ページ全体を Buffer に入れたいです。
C++ では、次のように使用します。
MASMでそれを行うにはどうすればよいですか?
assembly - MASM .DATAはどのように機能しますか?ディレクティブは内部で機能します
Kip Irvinesの本で、私は次のことに出くわしました。
データ?ディレクティブは初期化されていないデータを宣言します。初期化されていないデータの大きなブロックを定義する場合、.DATA?ディレクティブは、コンパイルされたプログラムのサイズを縮小します。たとえば、次のコードは効率的に宣言されます。
。データ?
bigArray DWORD 5000 DUP(?); 20,000バイト、初期化されていません
一方、次のコードは、20,000バイト大きいコンパイル済みプログラムを生成します。
。データ
bigArray DWORD 5000 DUP(?); 20,000バイト
.dataとは正確には何ですか?プログラムを20k小さくするために、上記の例の内部で実行するディレクティブ。
assembly - bx と bp の違いは?
bx
とはどう違いbp
ますか?例:
それらは同じメモリを参照していますか?ss
や と同じsp
ですか?
windows - x86asmの関数に配列を渡す
私はx86asmを学習し、masmを使用しており、次のc関数と同等のシグネチャを持つ関数を作成しようとしています。
実装方法がわかりませんか?
asmファイルはwin32DLLにコンパイルされます。
これを行う方法を理解できるように、誰かがこの非常に単純な関数をasmに変換してくれませんか。
このような関数をCで記述してコンパイルし、OllyDbgを使用してexe内の対応する逆アセンブルされたコードを調べてみましたが、関数が見つかりませんでした。
よろしくお願いします。