答えの大部分は次のとおりです。エッセイやメモを保存するのと同じように、C++ ソース コード (または高レベルのプログラミング言語) はテキスト ファイルに保存されます。ただし、テキスト文字は数値形式で格納されます。したがって、コンパイラがこのデータを処理するときは、別の形式の数値計算を行い、データを評価し、正確な規則に従って決定を下します。
それでも問題が解決しない場合は、次のことを想像してみてください。あなたは、日本語は知っているが英語は知らない人からの手紙を読む仕事をしています。一方、あなたは英語は知っていますが、日本語は一言も知りません。
しかし、日本語の文字を英語の文字に翻訳する方法を説明した説明書があるとします。説明書自体は英語で書かれているので、問題なく使用できます。
そのため、日本語がわからなくても、指示に注意深く従うことで、必要なすべての日本語を翻訳できます。
それがコンピュータープログラムとは、実際のところ、CPU によって読み取られる指示書です。コンピュータ プログラムは不活性なもの (一連の命令とデータ) ですが、コンピュータ内部の「知識」はそのプログラムから生じます。プログラムは、C++ を含むテキスト ファイルの翻訳など、あらゆる種類の巧妙なことをコンピューターに実行させます。
もちろん、コンパイラは非常に特別なプログラムですが、それが行うことはまったく奇妙でも不可能でもありません。コンピュータープログラムとしては、説明どおりの「説明書」です。実行方法は、C++ ソース コードを含むテキスト ファイルを読み取り、別の指示書を出力することです。この出力は、実行可能な形式の C++ プログラムです。
最初のコンパイラはマシンコードで書かなければなりませんでした。その後、古いコンパイラを使用して新しいコンパイラを作成できるようになりました...そのため、ブートストラップ プロセスを通じて、熟練したプログラマーでさえ、マシン コードの記述に依存することが少なくなりました。