問題タブ [masm]

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.

0 投票する
4 に答える
1948 参照

c - C コードをアセンブリに変換する

この C コードをアセンブリ言語コードに変換する必要があります

上記の C コードのように、アセンブリ言語で変数を文字列と組み合わせる方法を知る必要があるだけです。それ以外は対応できると思います。誰か教えてくれませんか。ある種の参照[]を使用する必要がありますか。

注: 私は MASM を使用しており、Kip Irvine のアセンブリ言語 x86 プロセッサの第 6 版ブックを使用しています。

回答者の回答の1つからMASMに書き込もうとしたコードを更新します。エラーが発生し続けます。前に言ったように、私は Kip Irvine のアセンブリ言語を使用しているので、ライブラリ リンクを含める必要があります INCLUDE Irvine32.inc

これはエラー>>>> programb.obj です: エラー LNK2019: 未解決の外部シンボル _scanf が関数 _main@0 で参照されています

含む Irvine32.inc

誰かがこれを正しくするのを手伝ってくれますか

アセンブリ言語のコードで申し訳ありません....読みやすいようにフォーマットする方法がわかりません....

0 投票する
2 に答える
11080 参照

winapi - エラー LNK2001: 未解決の外部シンボル _MessageBox

masm32 ライブラリではなく、masm のみを使用して helloworld プログラムを作成しようとしています。コード スニペットは次のとおりです。

私はmasmを使ってこれを組み立てることができます:

ただし、リンクできません:

リンク中にライブラリを含めていますが、未解決のシンボルがまだ表示されている理由がわかりませんか?

アップデート:

更新 2: 最終的な作業コード!

0 投票する
1 に答える
490 参照

assembly - masm 変数定義でシンボリック名を使用するにはどうすればよいですか?

.data セクションで私は定義しました:

しかし、どうすれば MyString に等しい変数を設定できますか??

ありがとう!

0 投票する
1 に答える
8518 参照

assembly - パック 10 進数から ASCII アセンブリへ

パック 10 進数を ASCII 文字列に変換しようとしています。これまでの私の理解は次のとおりです。

以下:

「解凍」した後、10 進数の 34 に変換する必要があります。今、これを行う最善の方法がわかりません。この 16 進数を 2 進数に変換すると、次のようになります...

ここで、手順で一度に各 4 ビットのバイナリ値を出力する場合、数字の ASCII 文字列を出力する必要があります。正しいですか? したがって、ループを通過すると、最初の 4 ビットの 2 進数を取得し、その実際の値を出力して、3 を出力します。次に、同じことを行い、4 を出力します。

だから、ここに私の一般的な考えがあります:

8ビットの値「34h」を取り、AHとALに移動します。AH では、以下を使用してビットの後半をクリアします。

AL では、以下を使用してビットの前半をクリアします。

したがって、AH = 0110b または 3 および AL = 0100b または 4 であり、それに応じてこれらを出力します。

これは良いアプローチですか?それとも、完全に間違っているか、考えすぎているのでしょうか?

編集:元の値が 12345678h の最終的な解決策は次のとおりです。助けてくれたすべての人に感謝します!

P

0 投票する
3 に答える
2831 参照

assembly - INVOKE MASM レジスタを自動的に保存しますか?

masm で Invoke ディレクティブを使用すると、CPU レジスタを自動的に保存できますか?

0 投票する
1 に答える
1421 参照

masm - MASM611 での乗算

こんにちは、5 ビット以上の乗算に問題があります。MASM611 で作業しています。MASM611 で少なくとも 8 ビットの乗算を行うための解決策を教えてください。

0 投票する
3 に答える
337 参照

c++ - __int16とint(32)がC ++で異なるasmを生成するのはなぜですか?

私は最近masmアセンブリを学び始めました、ivは見ているだけで私のプログラムの多くを分解しています。__int16(word)を使用すると、その値が最初にeaxにコピーされ、次に変数自体にコピーされることに気付きましたが、int(dword / 32)を使用すると、変数に直接コピーされます。

__int16のサイズが16...eaxの半分のサイズであることに気付きました。これが最初にeaxに入れられ、次にaxだけがxに入れられる理由ですか?

また、どちらが最速ですか?

おすすめの良いmasmサイトはありますか?

ご入力いただきありがとうございます

0 投票する
3 に答える
1339 参照

assembly - アセンブリの最初の演習

私はアセンブリを使用してビジュアルスタジオ2005で作業しています(私は初心者です)。そのルールで算術累進を計算するプログラムを作成したいと思います: A n = 2*A n-1 + A n-2 but. レジスタの操作方法が本当にわかりません。演習を続けるには、例を 1 つだけ挙げてください。

これは私のコードです:

0 投票する
3 に答える
4693 参照

windows - WindowsでのPEファイル(exe)の最小ファイルサイズはいくつですか?そして、最小限のメモリ割り当て?

WindowsでのPEファイル(exe)の最小ファイルサイズはいくつですか?そして、最小メモリ割り当て?

次のコードをアセンブルしました(VS 10に付属のMASM(ml.exe)とlink.exeを使用)。kernel32.libとExitProcessを除外 できません。除外すると、プログラムがクラッシュします。

Sleepコマンドは、プログラムが終了する前にメモリ使用量を読み取ることができるようにするためにのみ含まれています。

ここで、次のことを測定します。.exeファイルのサイズは正確に2.5 KB(user32.libとMessageBoxAを含めると、サイズは3 KB->ブロックになりますか?)、アプリケーションの実行時に136 KBのRAMを使用します(Vista 32ビット)。

このような単純なプログラムでは、それだけのメモリではありませんか?exeファイルが非常に大きく、RAM要件がexeファイルよりもはるかに大きいのはなぜですか?

最小のメモリサイズはありますか?ファイルはどうですか?サイズが0.5KBのブロックに編成されているように見えますが、この最短のプログラムでは0.5KBではないでしょうか。

これについてはどこで読むことができますか(チェックアウトするhttp://msdn.microsoft.com/en-us/magazine/cc301805.aspxを除く)?

ありがとう(ここで私の最初の質問)

0 投票する
1 に答える
97 参照

windows - 組み立ての問題

WindowsコマンドプロンプトでDEBUGを使用して5桁の小数を掛けようとしていますが、非常に遠いのではないかと心配しています。私のプログラムは 10 進数値 1303 になります。4320 になるはずです。10 進数は 15、12、4、2、3 です。