プログラムは、CPU がアクセスして実行する前にメモリに保存する必要があり、命令レジスタの内容は最初にアドレス バスに転送される必要があります。PC がプログラムを実行するときは、プログラムを外部メモリからRAMに転送し、CPU動作中にフラッシュから直接プログラムを読み込みます。
#CPU がプログラムを実行するとき、命令はメモリ上に存在し、命令レジスタの内容をそのアドレスに転送する必要があります。まずはバス。
x86cpu やマイコンがプログラムを読み込む具体的な方法 プログラムを実行する際、PC はプログラムを外部メモリ (ハードディスク) からRAM に転送して実行します。 from プログラムやデータは RAM から読み込まれますが、マイコンのプログラムはフラッシュに固定されており、CPU の動作時にはプログラムはフラッシュから直接読み出され、データは RAM から読み出されます。 x86 アーキテクチャの CPU は Feng Neumann システムに基づいており、データとプログラムが一緒に保存されており、PC の RAM リソースは数十 M から数百 M、さらには数 G にも及ぶ非常に豊富です。客観的に見て大量のプログラムデータに耐えることができます。
Havalシステムであり、プログラムとデータが別々に保存され、シングルチップのオンチップRAMリソースは非常に限られています。内部 RAM はコストがかかりますが、大幅な改善が見られます。上記の分析から、アーキテクチャと RAM リソースの量という 2 つの考慮事項に基づいて、マイクロコントローラーのプログラムをフラッシュに保存できることがわかります。
フォン ノイマン構造 を採用しており、代表的なものは Intel の X86 マイクロプロセッサです。命令の実行とオペランドのフェッチは両方とも同じバス上で行われ、時分割で実行されます。欠点は、高速で実行する場合、命令とオペランドを同時にフェッチできないため、送信プロセスにボトルネックが形成されることです。
プログラミングについて詳しく知りたい場合は、php training 列 !# に注目してください。
##
以上がCPU がアクセスして実行できるようになる前に、プログラムを保存する必要がある場所の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。