問題タブ [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.

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

windows - %errorlevel%を介して終了コードを取得するにはどうすればよいですか?アセンブリプログラムでは機能しなくなります

チュートリアルアセンブリプログラムの終了コードを取得したい(masm32とリンクを使用)。正常に機能%errorlevel%していました。echoと入力すると、後に入力した終了コードが表示されinvoke ExitProcessます。今ではもう動作しません。OpenSuse 12.1ホストでVirtualBoxを使用し、ゲストとしてWindows VistaHomePremiumを使用しています。答えを探しましたが、足りませんでした。ほとんどの苦情はバッチファイルの使用に関するものですが、これは私がやろうとしていることではありません。これが簡単なプログラムです

hello_world.asm

2を返すと思いますが、 echo %errorlevel%0を返します。何か足りないものはありますか?ありがとう、そして私はこの質問が死ぬまで答えられたことをお詫びします。答えが見つかりません。

編集:実際、私は私の答えの一部を見つけました。を使用してリンクした場合にのみ機能し/SUBSYSTEM:CONSOLEます。使用する/SUBSYSTEM:WINDOWSと常に0が返されます。これをどうすればよいかわかりません。Windowsプログラムの終了コードはどこにありますか?どんな情報でも大歓迎です。

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

assembly - アセンブリ言語の紹介

私はアセンブリ言語に比較的慣れていません。ML64とMASM32を使用してHelloWorldアプリケーションを作成する方法を説明するチュートリアルをたくさん見つけましたが、プログラムの詳細を説明しているチュートリアルはありません。たとえば、私がオンラインで見つけてコンパイルした以下の例を見てください(64ビット):

私はこれをフォローすることができます。汎用レジスタとセグメントレジスタがあることは理解していますが、どちらを使用するかをどのように決定しますか。たとえば、「r8」にr9ではなくキャプションが含まれているのはなぜですか。WinAPIのアセンブリリファレンスはありますか?これが基本的な質問だと思います。これは64ビットの例を使用した一般的な質問であるため、MASM32タグを選択しました。

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

winapi - masm (アセンブリ コード) を使用して単純な文字列をコンソールに書き込む

writeconsole API を使用してコンソール出力に文字列を書き込みたいのですが、うまくいきません。

ここにコードがあります

exe出力を実行すると、次のようになりました

C:\masm32>18.exe

C:\masm32>

空の出力

だから何かアドバイス

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

assembly - x86アセンブリ初心者:基本的な数値の加算と格納の問題

こんにちは私はアセンブリに不慣れで、2部構成のプログラムを機能させるのに苦労しています。このx86アセンブリにはVisualStudioを使用しています。

パートI)私の最初の目標は、最大13までカウントし、そこに向かう途中で各値を追加することです。例:0 + 1 + 2 + 3 ... + 13=91。その合計を合計で保存したいと思います。

パート2)次に、2^0から2^6までの2の累乗でカウントアップしたいと思います。例、0、1、2、4、8、32、64。私はそう思っています*私はそうしていますが、私は行くにつれてそれぞれの値を保存していません。これらを連続したメモリ位置に保存したい。

私はこれまでにこれを持っています、

私が理解するのに役立つ質問。

  • 連続するメモリ位置に値を格納するにはどうすればよいですか?
  • ジャンプとラベルの説明を正しく使用していますか?
  • これらの問題を実行するには、eaxなどの特定のレジスタを使用する必要がありますか?なんで?

どんな助けでも大歓迎です、ありがとう。

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

assembly - コンソールから読み取るとクラッシュする - masm32

cmdから入力を読み取って出力することを想定したt.exeというmasmプログラムを作成しました。それを行う別の方法かもしれないことは知っていますが、「Readconsole」を使用して作成したい

`コードは次のとおりです。

実行しようとしましたが、Microsoft エラーが発生し、プログラムが終了します (" t.exe に問題が発生したため、終了する必要があります。ご迷惑をおかけして申し訳ありません")。実際、誰かがmasmから始めるのに良い本を知っていれば...私はデータ型に苦労しているのでそれが必要であり、不快なコメントはしないでください:)

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

assembly - Dllインジェクションコード

dllインジェクションコードを作成しようとしています。テストプロセスはメモ帳で、プロセスIDはハードコードされています。

コードは次のとおりです。

実行すると、次のエラーが発生しました

kinject.exeで問題が発生したため、閉じる必要があります。ご不便をおかけしてしまい申し訳ございません。

だから、plaftromはwindowsxpsp3であるとアドバイスします

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

inline-assembly - masmでの文字列の長さ

I try to ouput the string length of hello in cmd screen using the following masm code. I create a function called strlo to compute string length.

When I run it, I get no output.

F:\masm32>len.exe

F:\masm32>

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

assembly - 2 つのバッファを char X86 MASM で比較する

X86 アセンブリを使用しており、2 つのバッファーを文字ごとに比較し、それらが一致するかどうかを 3 番目のバッファーに反映する必要があります。

疑似コード:

各文字の へのアクセス方法がわかりません。

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

assembly - x86アセンブリ、メモリに格納されている変数を追加する方法は?

プラットフォーム:WindowsXPを実行しているPentium4プロセッサ(私は本当にアップグレードする必要があります:)。現在、MASM32で組み立てています。

私はアセンブリの初心者であり、変数を追加する方法を理解しようとしています。変数を定義する方法、データをレジスターに配置する方法、およびレジスターをスタックに配置する方法は理解していますが、2つの変数の値を(追加して)組み合わせる方法がわかりません。

また、x86アセンブリに関するわかりやすいチュートリアルへのリンクなどを教えてもらえますか?これまでに見つけたものはすべて本当に高レベルのものであり、あまり説明されていません。それは本当にありがたいです。

よろしくお願いします、Progrmr

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

assembly - x86アセンブリ-2番目のASCII文字ではなく整数2を表示する方法

私はこのコードを持っています:

1 + 1を実行してから、結果をコンソールに表示することになっています。実行すると、数値2ではなく2のASCII文字(2番目のASCII文字)が表示されます。2番目のASCII文字ではなく数値2を表示する方法がわかりません。それ、どうやったら出来るの?

前もって感謝します、

プログラム