質問するログイン新規登録

回答編集履歴

1

追記

2019/08/28 12:48

投稿

hayataka2049
hayataka2049

スコア30939

answer CHANGED
@@ -1,7 +1,10 @@
1
- 「C言語」は実行できないよ。実行できるのは機械語(バイナリの実行ファイル)だよ、ということを常識として知っておくといいですね。
1
+ 「C言語」は実行できないよ。直接実行できるのは機械語(バイナリの実行ファイル)だよ、ということを常識として知っておくといいですね。
2
2
 
3
- 機械語は人間には読めませんが、CPUには意味がわかる、というものです(厳密な話をしだすと、「機械語命令列」の前にOS宛のヘッダとか色々ついてる可能性はあるんですが、割愛)。
3
+ 機械語は人間には読めませんが、CPUには意味がわかる、というものです(厳密な話をしだすと、「機械語命令列」の前にOS宛のヘッダとか色々ついてる可能性はあるんですが、割愛。また、機械語ですらない可能性もあるのだが(Javaの方式とかそれも割愛)
4
4
 
5
5
  Cのコンパイラはこのバイナリの実行ファイルを生成します。
6
6
 
7
+ ではRubyの実行環境は何かというと、こいつ自身はバイナリの実行ファイルです(だと思います)。要は、これ自体が一つのソフトウェアです。
8
+
7
- Ruby実行環境は何かというと、こいつ自身はバイナリの実行ファイルですが(だと思います)、ファイルに書かれた文字列を読み込んでそれに応じて色んな計算や処理をしてくれるというものです。こういうものをインタプリタと言います。
9
+ どんなソフトウェアなのかというと、ファイルに書かれた文字列を読み込んでそれに応じて色んな計算や処理をしてくれるというものです。こういうものをインタプリタと言います。
10
+ (実際はJITとかやり方がいろいろありますが、割愛)