タグ付けされた質問 「assembly」

5
LinuxでバイナリにSSE4またはAVXが必要かどうかを確認する方法
Linuxでは、/proc/cpuinfoマシンが持っているすべてのCPUフラグを簡単な方法でチェックできます。 通常、プログラムがマシンの命令セットのスーパーセットを必要とする場合、これを判断する最も簡単な方法は、プログラムを実行して、SIGILLシグナルを発生させるかどうかを確認することです。 しかし、私の場合、すべてのプロセッサーが少なくともSSE4.1とAVXをサポートしています。 それでは、バイナリに特別な命令が含まれているかどうかを確認する簡単な方法はありますか?
20 linux  x86  assembly 

1
「cli」を実行すると実際に何が起こりますか。Linuxシステムでhlt」
だから私は最近HLT、CPUを停止するためのオペコードがあることがわかりました。クール、何が起こるか見てみましょう! user@box:~$ cat > test.c int main(void) { __asm__("HLT"); return 0; } user@box:~$ gcc -o test test.c user@box:~$ ./test Segmentation fault (core dumped) user@box:~$ ああ!なんてつまらない。 判明したことHLTは特権的な命令なので、他のことを試してみましょう。 user@box:~$ mkdir test; cd test user@box:~/test$ cat > test.c #include <linux/module.h> #include <linux/kernel.h> #include <linux/init.h> int init_module(void) { __asm__("hlt"); return 0; } void cleanup_module(void) …
16 linux  assembly 

3
x86およびx64プロセッサでのCPU命令のレイテンシ
アセンブリコードの効率を計算するのに役立つテーブルまたは類似のものを探しています。 私はビットシフトに1 CPUクロックかかることを知っていますが、私は実際にどれだけの加算(減算も同じである必要があります)、乗算、および除算している値がわかっている場合はおそらく除算時間を計算する方法を探しています。 整数値に関する情報が本当に必要ですが、フロート実行時間も歓迎します。
14 64-bit  cpu  latency  x86  assembly 

3
コンパイル後のバイナリファイルの内容を理解できないのはなぜですか?
私の知る限り、すべてのプログラムは、プロセッサレジスタで動作する特定のデータ変数(float、int、char ...)を備えたプロセッサ命令のパックで構成されています。 それで、私が最初に考えたのは(かなり前のことですが)、ASCII値%¨#$¨#(単なるランダムな例)がx86のスタックポインタレジスタ(単なる例)のアドレスとして解釈されることがわかっている場合です。プロセッサ。これが当てはまる場合、バイナリファイルの内容を読み取るときにこの「読み取り不可能な」値が見つかるたびに、スタックポインタレジスタがデータ変数の管理に使用されていると解釈できます。 残念ながらこれは起こりません。以下に、ping.exeWindowsで開いたプログラムの内容の例を示しますnotepad.exe。 バイナリファイルであり、そのデータは私たち人間には理解できません(マシンでは理解できます)。アセンブリコード(機械語の最低レベル)を知っていても、誰にとっても意味がありません。 だから、私がすべてを正しく理解していれば、誰かが説明できますか なぜ、バイナリコードがアセンブリコードに戻ることができないのですか? アセンブリコードを理解できるとしたら、なぜこのコードから生成されたコンパイル済みバイナリが「読み取り可能」にならないのですか

3
古いx64プロセッサーには、cmpxchg16b命令が不足していますか?
アトミック128ビットメモリ交換を行うためのcmpxchg16b命令は、古いバージョンのx64プロセッサではサポートされていませんが、これは数年前から新しいバージョンのプロセッサでサポートされているようです。この命令のない古いプロセッサを搭載した64ビットマシンに遭遇する可能性はどのくらいありますか?
8 assembly 

1
DosBoxでプログラムを実行しても出力ファイルが生成されない
私はWindows 8.1、64ビット版を使っています、そして私は私がDosBoxを使って実行しようとしている16ビットのアセンブラプログラムを持っています。 有効なパラメータで正しく呼び出されているにもかかわらず、プログラムが出力ファイルを生成していないようです。 問題は何でしょうか。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.