次の文章で、私は 2 つの質問をしました。また、私の考えを理解していただけるように、これらの質問について私が知っていることも説明しました。以下のテキストに関する貴重なコメントが必要です。
以下は第1問の詳細です
1メガバイトのメモリがある場合、このメモリをアドレス指定するには20ビットが必要です。もう1つのことは、各メモリセルには1Mbメモリで20ビットの物理アドレスがあることです。IAPX88 の IP レジスタは 16 ビットです。私の見解では、アドレス指定には 20 ビットのアドレスが必要ですが、IP レジスタは 16 ビットであるため、IP レジスタによってメモリにアクセスすることはまったくできません。64k のメモリがある場合、IP レジスタはこのメモリにアクセスできます。これは、このメモリのアドレス指定には 16 ビットが必要だからです。しかし、1MB のメモリ IP の場合、私が正しいかどうか教えてくれません。メモリの物理アドレスが 11000000000000000101 だとすると、このメモリ位置に 16 ビットでアクセスするにはどうすればよいでしょうか。
以下は、次の質問の詳細です。
私の次の質問は、IP レジスタがメモリ位置を指していて、セグメント レジスタもメモリ位置 (セグメントの開始) を指していると仮定します。メモリは 1MB で、これら 2 つの 16 ビットによってメモリ位置にアクセスする方法レジスタは、20 ビットのアドレス指定可能なメモリ位置がどのようにアクセスされるかの一連の手順を教えてくれます。あなたの答えが、セグメント値を取得し、それを 4 ビット左にシフトしてから、それに IP 値を追加して 20 ビット アドレスを取得すると、アドレス バスという別の問題が発生します (アドレス バスは 20 である必要があります)。ビット幅)、セグメント レジスタと IP レジスタの両方のレジスタはそれぞれ 16 ビットです。アドレス バスが 20 ビット幅の場合、これはアドレス バスがこれらの両方のレジスタに接続されていることを意味します。
1066 次