私たちがいつも知っているように、マイクロプロセッサによってタスクを実行する手順は、メモリからバイナリ命令を1つずつ実行するだけであり、次の命令のアドレスを保持するプログラムカウンターがあります。したがって、私が間違っていなければ、これがプロセッサがタスクを実行する方法です。しかし、プログラムカウンターとほぼ同じことを行うスタックポインターという名前の別のポインターもあります。私の質問は、なぜメモリ (スタック) のアドレスを指すためにスタック ポインターが必要なのですか? スタック ポインターとプログラム カウンターの主な違いについて誰か教えてもらえますか?