問題タブ [x86-64]

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

python - OS X 10.6 で 64 ビット Python をビルドする方法 -- 64 ビットのみ、普遍的なナンセンスなし

これを自分の開発マシンでビルドしたいだけです.Python.orgからのバイナリインストールはまだ32ビットであり、拡張機能(MySQLdbなど)をインストールすると、すべての拡張機能の適切なフラグを見つけようとして頭がおかしくなります。

明確化: 私はシステム Python を置き換えませんでした。Python.org バイナリを /System/Library/... ではなく /Library/... の通常の場所にインストールしただけです。

他のすべてはデフォルトで 64 ビットをビルドしているようで、デフォルトの Python 2.6.1 は 64 ビットでした (Python.org ビルドに置き換える前は、それが直接の置き換えであると考えていました)`

1台のマシンで手間をかけずに実行できる64ビットのみのビルドが必要です。

誰も簡単な答えを持っていますか?

どうもありがとう、ssteinerX@gmail.com

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

assembly - x64オペレーティングシステムでx86アセンブリを実行することは可能ですか?

最近、プログラムなどのデバッグを容易にするために、基本的なx86アセンブリを試してみる価値があると判断しました。そこで(約1週間前に)x86アセンブリの学習を開始し、その間にコンピューターをにアップグレードしました。 8GBのRAMなので、明らかに私のx86 Windows XPインストールはそのすべてのメモリを浪費していました。現在、x64 Windows 7コピーを実行しているので、問題は次のとおりです。

x64オペレーティングシステムでx86アセンブリを操作することは可能ですか?エミュレータで正しく動作しますか?または、x64アセンブリを学ぶ必要がありますか?

0 投票する
6 に答える
16363 参照

assembly - Visual Studio が xchg ax,ax を使用する理由

私は自分のプログラムの逆アセンブルを調べていました (クラッシュしたため)。

私はそれをグーグルで検索し、それが本質的にnopであることがわかりましたが、なぜビジュアルスタジオはnoopではなくxchgを行うのですか?

アプリケーションは、Visual Studio によってコンパイルされた C# .NET3.5 64 ビット アプリケーションです。

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

c# - 64 ビット .NET アプリでの 32 ビット ActiveX コントロール

「すべての CPU」用にコンパイルできるようにしたい C#.Net アプリケーションを作成しています。また、このアプリの UI に特定の ActiveX コントロールを含めたいのですが、使用しようとしている ActiveX コントロールは 32 ビットをサポートしていません。このコントロールを機能させるために使用できるトリックまたは回避策はありますか?

ActiveX コントロールを Web ブラウザ コントロールに埋め込む場合はどうでしょうか。これでも機能しますか?

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

directx - DirectXのx64ライブラリファイルとx86ライブラリファイルの違いは何ですか?

最近、新しいコンピューターでVisual Studioを入手し、DirectXをセットアップするには、[ツール]>[オプション]>[プロジェクトとソリューション]>[VC ++ディレクトリ]に移動し、[ライブラリファイル]の下に新しいエントリを作成しました。C:\Program Files\Microsoft DirectX SDK (August 2009)\Lib\x86

そして今、テストプログラム(本質的にはDirectXを初期化したばかり)を実行し、それはうまく機能しました。ただし、に変更...\Lib\x86すると、未定義...\Lib\x64のリンカーエラーが発生します。Direct3DCreate9

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

linux - nasmおよびldのアセンブリ/リンクの問題

nasmでコンパイルしたサンプルアセンブリファイルがあります。

これにより、syscall.oファイルが生成されます。私はそれをldとリンクしようとします:

ldコマンドは、次のエラーで失敗します。

しかし、私がそうするなら

コマンドは成功し、syscall実行可能ファイルを取得します。

nasmがx86-64形式のオブジェクトコードを生成していないことを確認し、syscall.asmファイルの先頭に「BITS64」ディレクティブを追加しました。

次に、nasmを使用してsyscall.asmをアセンブルしようとすると、次のエラーが発生しました。

私の端末で「file/usr / bin / nasm」を実行すると、次のようになるため、これは奇妙に思えます。

私の64ビットFedoraCore11には最新バージョンのnasmがインストールされており、私のCPUはIntel Core 2DuoE7200です。

[編集]

私の質問は、nasmにi386:x86-64と互換性のあるオブジェクトファイルを出力させる方法です。

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

gcc - x86_64 でのアセンブリ JMP 関数の使用

私はプログラミングに本当に慣れていません(一般的に-それは哀れです)、64ビットで実行するためにハッキングしているこのアプリで、いくつかのPython関連のアセンブリが発生しました。

基本的に、コードは次のようになります。

FUNCTION(name) 構文は、私が知る限り、外部の Python ライブラリのヘッダーを定義するために約 50 回使用されています (完全に理解しているとは言いません。バグ修正を行っているだけです)。

x86_64 用にコンパイルしているため、FUNCTION(name) インスタンスごとに GCC によって次のエラーが吐き出されます。

x86-64 では 32 ビットの絶対アドレス指定はサポートされていません

符号付き 4 バイトの再配置を実行できません

これを x86_64 で実行するにはどうすれば「修正」できますか?

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

x86 - myNum + = a [b [i]] *c[i];をベクトル化することは可能ですか。x86_64で?

x86_64で以下をベクトル化するためにどの組み込み関数を使用しますか(ベクトル化が可能である場合)?

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

assembly - アセンブリを学習するには、32 ビットと 64 ビットのどちらから始める必要がありますか?

私は本当にアセンブリを学びたいと思っています。私は c/c++ がかなり得意ですが、下位レベルで何が起こっているのかをよりよく理解したいと思っています。

以前にアセンブリ関連の質問があったことは承知していますが、私の状況に特有の方向性を探しているだけです:

Windows 7 を実行していますが、アセンブリの作業を開始する方法について混乱しています。Windows 7 を実行しているため、x64 から開始する必要がありますか? 「最初は 32 ビットから始めてください」と言う人もいますが、これを行うにはどうすればよいですか? 「32」または「64」ビットのアセンブリを作成する能力と、オペレーティング システムとの関係は何ですか。実際、「n ビット」アセンブリとはどういう意味ですか?n は数字です??


編集:

アセンブリを開始するのに役立つリンクをいくつか示します。始めたばかりの人は、役に立つかもしれません。組み立ての旅を続けながら、このリストを更新し続けます:)

注: 学んできたので、masm32 を使用したプログラミングに集中することにしました。したがって、以下のリソースのほとんどはそれに焦点を当てています。

  • タグ wiki (ビギナー ガイド、リファレンス マニュアル、ABI ドキュメントなど)
  • www.masm32.com
  • X86 アセンブリ WikiBook
  • X86 Dissassembly WikiBook (いくつかの規則を理解するのに最適で、高レベルのコードをアセンブリに変換する方法の基本)
  • WinAsm IDE (masm32 とうまく連携)
  • はじめに: Windows 用のアセンブリ(すべてのコード例は masm32 用です)
  • 割り込み一覧
  • アセンブリ チュートリアル(主要な概念を理解するのに役立ちます)
  • x86 組み立てガイド
  • Agner Fog のソフトウェア最適化リソースには、さまざまなプラットフォーム (Windows と Linux/OS X) での呼び出し規則に関するいくつかの優れた情報や、特定のことを効率的に行う方法の多くの例が含まれています。まったくの初心者向けではありませんが、中級者から上級者向けです。

    (彼はまた、Intel および AMD CPU の各命令の詳細なパフォーマンス情報を提供しており、深刻なパフォーマンスのマイクロ最適化に最適です。一部の初心者は、CPU がどのように機能するか、およびなぜ何かを行うのかについて考え始めるために、その一部を調べたいと思うかもしれません。別の方法ではありません。)

0 投票する
6 に答える
328 参照

c - i386でのトレースバックの実装

現在、コードをアルファ版(Tru64)からCのi386プロセッサ(Linux)に移植しています。例外処理ルーチンの移植を検討するまで、すべてが順調に進んでいます。現在、多くのサブプロセスを生成する親プロセスがあり、これらのサブプロセスの1つが致命的な(フィールド化されていない)場合、プロセスをキャッチするルーチンがあります。

私は現在、エラーログに関数アドレスをリストできるトレースバックルーチンを実装するための最良の方法を見つけるのに苦労しています。現在、私のルーチンは、例外の原因となった信号と例外修飾子コードを出力するだけです。

どんな助けでも大いに受け取られるでしょう、理想的には私はすべてのプロセッサのためにエラー処理を書くでしょう、しかしこの段階で私は本当にi386とx86_64だけを気にします。

ありがとう

マーク