問題タブ [opcode]

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 投票する
1 に答える
427 参照

mips - 逆コンパイラのルールを定義する良い方法を探しています。アドバイスが必要です

私は MIPS アーキテクチャ用の非常に単純な逆コンパイラに取り組んでおり、進行するにつれて、コード分析のための多くのルールを定義する必要あります。bneであり、現在の前のアドレスを参照しています -ループを作成します問題 - そのようなルールがたくさんあり、それらを定義する良い方法を見つけることができません。すべてのルールに個別の関数を書き、素敵な OOP ベースロジッククラスを定義し、それらを拡張して作成しようとしましたルール、失望したコードで正規表現を試してみましたが(驚いたことに、これは予想よりもうまく機能します)、何を試しても、コードをすぐに大きくして読みにくくなりました。それ。

これは、私が間違ったツールを使用してこのタスクを解決しようとしているという結論に達します(そのような複雑なタスクにはあまりにも愚かであることは言うまでもありません:))が、何を試すべきかわかりません。現在、テストされていない 2 つのアイデアがあります。1 つはある種の DSL を使用することです (私はこれについてまったく経験がないので、完全に間違っている可能性があります)。

誰かが私を正しい方向に向けてくれることを願っています.thx.

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

.net - CLR 4.0で導入されたOpCodeは何ですか?

3.5と比較して.NET4.0で新しいILオペコードはありますか?ある場合、それらのリストはどこにありますか?

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

python - Pythonにはオペコードキャッシャーがありませんか?

私は現在PHPを使用しています。次のプロジェクトで Django を使い始める予定です。

しかし、私は Python の経験がありません。いくつか検索しても、まだ Python オペコード キャッシャーが見つかりません。

(PHP 用のオペコード キャッシャーは多数あります: APC、eAccelerator、Xcache など)

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

c# - Reflection.Emitの短い形式のオペコードでエラーが発生しました

hlslピクセルシェーダーと非常によく似ていますが、サポートする小さな言語を作成しています。この言語はreflection.emit、同じ機能を実装する.NETアセンブリを構築するために使用します。私は現在、分岐命令の実装をテストしていますifが、ユニットテストの1つ(if内部が大きいif/else)で次のエラーメッセージが表示されて失敗しました。

System.NotSupportedException:位置:32の不正な1バイトブランチ。要求されたブランチは:132でした。

私の場合、短い形式の指示を使用することで問題を追跡しましたOpCodes.Br_S。解決策は単純でしたが、私は置き換えましたOpCodes.Br_SOpCodes.Br、この解決策についていくつか質問があります。

このソリューションは、生成されたコードのパフォーマンスに影響を与えますか?

Br_Sシングルバイトを正しく生成したい場合、およびBrその他の場合はどうすればよいですか?ここでの問題は、ビジターパターンを使用してifいて、出力する必要があるような分岐命令の場合、BrまたはBr_s最初に、残りのコードがジャンプするのに1バイト以上必要かどうかを知る方法がないことです。ラベル。私の質問をよりよく説明するために、これは次のステートメントに対して生成するコードです。

私の言語:

IL:

この場合、私は2つの短い形式の命令を使用しble.sており、.NETコンパイラと同じようbr.sにを実装しています。ifただし、.NETコンパイラは選択することができますが、br.s場合brによっては、私の問題は、どのようにして同様のことを実行できるかということです。

Tnks

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

assembly - 機械語命令のコードはどこにありますか

つまり... nop は 90、push は 55 ... その他は?リンクは?Google で検索しても何も出てこない...

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

wordpress - APC キャッシングの最適化

ここに私のAPCの実行方法へのリンクがあります:[削除済み]

ご覧のとおり、すぐにいっぱいになり、キャッシュ フル カウントが 1000 を超えることがあります。

私のウェブサイトはワードプレスを使用しています。

新しい投稿を作成したり、投稿を編集したりするたびに、2 つのことが起こることに気付きました。

1) APC メモリの「USED」がリセットされる 2) フラグメントが大量に発生する

APC (512 mb) により多くのメモリを割り当てようとしましたが、時々クラッシュします。384 が最適なようです。また、apache を再起動し、すべての APC のフラグメントと使用済みメモリを 4 時間ごとにクリアする Cron ジョブもあります。繰り返しますが、APC が長時間実行されていると、Apache がクラッシュします。フラグメントの蓄積が原因だと思います。

apc.Filters を使用して、キャッシュすべきではないものを除外する必要がありますか?

私はこの種のもので本当に初心者なので、誰かが完全な指示で説明できるなら、どうもありがとう!!!

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

assembly - なぜこれが無効なオペランドなのですか?

私が書いているコンパイラによって生成された次のASMファイルがあります。

コンパイルしようとすると、次のエラーが発生します。

test.asm:16:エラー:オペコードとオペランドの組み合わせが無効です
test.asm:19:エラー:オペコードとオペランドの組み合わせが無効です
test.asm:29:エラー:オペコードとオペランドの組み合わせが無効です

NASMのドキュメントによると、次のことが許可されているため、これは実際には意味がありません。

MOV mem_offs、reg_eax 386

なぜこの操作を実行できないのですか?

0 投票する
5 に答える
7692 参照

gcc - gcc で完全なアセンブラ出力を取得するにはどうすればよいですか?

以下を使用して、コンパイラによって生成されたアセンブラソースコードを取得できることを知っています。

面倒なことに、プロセスの一部としてオブジェクトファイルが提供されません。

しかし、コンパイルされたコードに関するすべてを取得するにはどうすればよいでしょうか? アドレス、生成されたバイトなどを意味します。

によって出力された命令gcc -Sは、命令の長さやエンコーディングについて何も教えてくれません。これは私が見たいものです。

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

assembly - ia-32アセンブリで3オペランドのimul命令は正確に何をしますか?

指示を読んでいます

そして私はそれが正確に何をしているのか困惑しています。imulが乗算されることは理解していますが、構文がわかりません。

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

x86 - x86インテルオペコードアセンブリ

アセンブリニーモニックと命令の代わりに純粋なx86Intelオペコードを使用してプログラムを記述し、それをMLとLINKでコンパイルする方法はありますか。たとえば、プッシュの代わりに55を書き込もうとすると、ebpMLはそれが整数であると見なします。特別なコンパイラが必要ですか、それともオペコードプログラムをどのように記述してコンパイルしますか。