回答編集履歴

1 ちょい

asm

asm score 10561

2018/03/17 08:33  投稿

> なぜなら、複数のアセンブリプログラムを一つにするのがリンカ
の役割で、その一つにしたアセンブリプログラムをメモリに収納するまでが、リンカの仕事で、あとはアセンブルが単純にアセンブリ命令に対応した機械語を出力するだけですので。
間違った認識です。
- アセンブラ(`as`)
- リンカ(`ld`)
中間生成物(hello.o)から実行ファイル(hello.exe)を作成する。
- ローダー(ツールというかOSもしくはBIOS)
実行ファイル(hello.exe)を実行するよう命令された**OS**が(多くの場合、仮想の)メモリ上に
実行ファイルやライブラリ(.dll)等を読み込み。実行ファイルに指定されたアドレスをエントリーポイントとして呼び出します。
アセンブリ言語は規格化された言語とは違いますので、アセンブラ毎に処理や生成物等が違う可能性がありますが
少なくともGNUアセンブラではこんな感じです。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る