問題タブ [irvine32]

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 に答える
8831 参照

assembly - アセンブリ内の非再帰的フィボナッチ数列

いくつかの宿題では、アセンブリでフィボナッチ数列プログラムを作成する必要があります。このコードを作成しましたが、正しく機能していないようで、理由がわかりません。私はこれを正しく行っていると思いますが、EAXはループごとに「2」のままです。

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

winapi - 基本的なユーザー入力

アセンブリ言語(x86 Irvine.32 windows7)の学習に取り組んでおり、ユーザーからの入力方法について質問がありました。私が持っている本はそれをあまり深く掘り下げていません。ユーザーにプロンプ​​トを表示したい:

次に、ユーザーはXを入力します。ユーザーが入力した内容を読み取って変数に入れるにはどうすればよいですか?

それは次のように単純ですか?

SomeVairableは.dataでバイトとして定義されていますか?

編集:

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

arrays - 配列に数値を追加する際に問題が発生しました--x86MASMアセンブリ

27から58までの100カウントのランダムな範囲を作成してから、100の位置にあるすべての数値を合計して合計する必要があります。ただし、これを行うと、結果として乱数と99個の32が得られます。私はどこでも検索し、可能な解決策を試しましたが、同じ結果またはランダムなゴミが表示されます。誰かが助けを提供できますか?

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

assembly - DumpMemを使用してアセンブリにスタックを表示する方法

さて、ここに私の問題があります。変数をスタックにプッシュした後、ローカル変数用のスペースを作成します。手順から戻る前に、DumpMemを使用してスタックを表示するにはどうすればよいですか?

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

assembly - Irvine を使用したアセンブリ乱数

アセンブリで提供された乱数生成手順を実装すると、半分の時間でゼロ除算エラーが発生し、残りの半分で完全に機能します。コードを適切に実装していると思いますが、どのように記述したかを説明します。


これは、Visual Studio から提供された RandomRange の逆アセンブリです。

このエラーの原因を知っていますか?

独自の乱数ジェネレーターを作成したくなります。

RandomRange メソッドの背景:簡単です。Randomize でシードを設定し、10 を eax に移動すると、RandomRange が 0 から 9 の間で維持されます。これが、その関数について見つけたすべてのドキュメントです。

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

string - アセンブリに 2 つの文字列をコピーする

これは2つの文字列をコピーするためのコードです


esi,0 を移動します。インデックスレジスタ

インデックスが 0 で始まると仮定する理由 SOURCE のインデックスが 0 であることをどのように知ったのか

???

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

assembly - アセンブリ内の範囲で乱数を生成する

アセンブリで-27から+33までの乱数を生成しようとしています。

0からnまでの乱数を生成するというプロシージャがありますRandomize。nは上限です。

下限を0ではなく-27にシフトする方法は?

これはコードです:

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

loops - アセンブリインテルでテキストと背景を設定する

考えられるすべての組み合わせの背景とテキストを実行して設定するプログラミングの割り当てがあります。基本的に次のような値を設定するSetTextColorと呼ばれる事前定義された関数を使用しています。

基本的に、これによりテキストが白に設定され、背景が青に設定されます(16を掛ける背景を設定するため)。基本的に、組み合わせは16 X 16=256です。

基本的に私はネストされたループをやっています。私の考えでは、単純に1 *(1 * 16)を実行してから、ネストされたループに1 *(16 * 16)まで値を含めます。以下のエラーが発生します

エラーA2026が発生しています:定数が期待されます

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

assembly - LNK 2001 未解決の外部シンボル _mainCRTStartup MASM

私は大学でアセンブリを学んでおり、MASM 615 が収録された CD を受け取り、Irvine32 インクルード ライブラリを使用しています。学校のコンピューターではすべて正常に動作しますが、自宅のコンピューターで同じコードをコンパイルして実行しようとすると、リンク エラーが発生します。

このコードは、学校の PC で正常に動作します。自宅で DOS に入り、パスを MASM フォルダーに設定し、Make32 ファイルを実行します。

これは私が得るエラーです:

プログラムはコンパイルされます (.lst、.obj、および .pdb ファイルを取得します) が、それだけです。自宅に 64 ビットのオペレーティング システムがあるためだと思いますが、これを 64 ビット環境で起動して実行する方法がわかりません。CD や本には 64 ビット システムに関するものは何もありません。make16 または make32 の .bat ファイルしかありません。回避策がない限り、家で仕事をすることができないので、本当に残念です。

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

assembly - 配列をディスク ファイルに書き込むアセンブリ プログラム

CreateOutputFileWriteToFileおよびCloseFileIrvine32 プロシージャを使用して、ダブルワード配列をディスク ファイルに書き込もうとしています。これが私のコードです。

毎回デバッグすると、テキストファイルは正常に作成されますが、テキストファイル内に認識できないコードがいくつかあります。16進数で示した配列だったはずだと思います。

どこで間違いを犯すのか本当にわかりません。私を助けてください!ありがとう!