自分でアセンブラを作ろうとしていますが(NASM、MASMなどのように)、どこから起動するのか分かりません。私はx86アセンブリを理解していますが、アセンブラの仕組みについてはあまりよく分かりません。私はどこから始めるべきですか?この場合、Googleは私の手助けをしていません。これを学ぶのに有益なサイトはありますか?私自身のアセンブラの作成はどこから始めるのですか?
答えて
アセンブラは、(リンカと混同しないように)2つのことを行いプログラムです:
- それはオペコードにmemotechnical名を変換し、上でそれらを格納し、実際のアドレス
- でラベルを置き換えますいわゆるオブジェクトファイル。
必要なものは、マップ名がオペコードに対応するルックアップテーブルです。それを行うには、まっすぐ進むべきである。
assmbler命令を機械コードに変換し、アドレスを計算し、すべてをオブジェクトファイルに入れる必要があります。すべてを1回のパスで行う必要はありません。
オペコードテーブルをお探しの場合、良い出発点はhttp://ref.x86asm.net/coder32.htmlまたはhttp://www.sandpile.org/です。もちろん、公式のIntelとAMDのドキュメントも使用できます。
オブジェクトファイル形式については、コードで何をしたいかによって異なります。 Alexが指摘したように、純粋なバイナリは、ブートセクタ、カーネル、またはDOS * .comプログラム以上のものには使用できません。その他すべての場合、オブジェクトファイルに再配置情報が必要です。
DOS .COMプログラムは、1つのセグメントを占有し、それを指しているすべてのセグメントレジスタで開始したため、再配置情報を持っていませんでした。仮想から物理へのアドレス変換を使用すると、同様に、それ自身の仮想アドレス空間(.COMセグメントと同様)に存在するすべてのプロセスのメインモジュールの再配置を避けることができます。 –
リンクありがとう! – elijaheac
@Alex:ありがとう、私はそれを忘れてしまった。 – hirschhornsalz
- 1. 独自のストレージシステムの作成:どこから始めるのですか?
- 2. Javaでカスタムインタープリタを作成する:どこから始めるのですか?
- 3. スクリプト私自身のオンラインストアビルダーを作成するための
- 4. 方法は、私は開始クラスのparamフォームENVを送信するために私自身のServiceProviderを作成
- 5. 私自身のDialogFragmentを作成した場合、私自身のボタンを作る必要がありますか?
- 6. PayPalと私のイベントサイトの統合はどこから始めるのですか?
- 7. テクノロジーガマット - どこから始めるのか?
- 8. ソートの練習は、どこから始めるのですか?
- 9. モバイルアプリケーションの開発はどこから始めるのですか?
- 10. どこから始めますか:AndroidアプリケーションでPDFを作成する
- 11. Python 3とHadoopはどこから始めるのですか?
- 12. バイナリ検索ツリーはどこから始めるのですか?
- 13. JSONはどこから始めるのですか? (クローズ)
- 14. ウェブボットはどこから始めるのですか?
- 15. SQLはどこから始めるのですか?
- 16. Facebookのアプリケーションはどこから始めるべきですか?
- 17. Javaスクリプトコードはどこから始めるのですか?
- 18. 私自身のGraphics2Dを作成し、アプレットで別のものと結合することは可能ですか?
- 19. このデータの解析はどこから始めますか?
- 20. このデータベースの設計はどこから始めますか?
- 21. Cassandra CQLSH CSVからのコピー:他の人から私自身の列を作成できますか
- 22. 初心者の質問:HTTPリクエストの作成はどこから始めるのですか?
- 23. この分度器のタスクはどこから始めるのですか?
- 24. モバイルアプリでPCI-DSSをどこから始めるのですか?
- 25. 私自身のHTTP 200結果クラスを作成するには?
- 26. joomlaで私自身のフォームを作成する方法
- 27. vb.netで私自身のCMDを作成する
- 28. このためのPowershellスクリプトの作成はどこから始まりますか?
- 29. 練習のための私の自身の何らかの関数をアンダースコアを作成してください
- 30. どこから始めるか
黙って投票を終了するのではなく、コメントを投稿することはできますか? – elijaheac
また、「アセンブラ」にタグを付けるのはなぜですか? – elijaheac
なぜあなたが投票に投票しているのかと言う人はいませんか? – elijaheac