表現情報パート1章IIコンピュータシステムの処理の第2のパス深さ理解

 

二回目の時間の2〜3時間、週を過ごす、この本を読んで、あなたは(28ページの章を参照してください)読んでどのくらい読むことができます

対応するノートはリンク最初のパス  https://www.cnblogs.com/stone94/p/9824395.html

 

整数は、コンピュータに格納されている場合、それは一般的に、補体の形で格納されています

計算を補完するため、コンピュータは、(すべてのビットが値を持つように直接的に)符号ビットが、加算を減算に置き換えるために使用されてもよいことができないかを判断する(以下のアルゴリズム)

 

仮想アドレスと仮想アドレス空間のためのコンテンツの抜粋を置く、理解していません。

「バイトの非常に大きなアレイとしてマシンレベルのプログラムメモリに、仮想アドレス(仮想メモリ)と呼ばれる。一意の番号によってメモリの各バイトを識別するために、そのアドレス(アドレス)と呼ばれる、すべての仮想アドレス空間(仮想アドレス空間)と呼ばれるアドレスの可能なセット。名前が示唆するように、これはマシンレベルのプログラムの概念的なイメージショーのためだけの仮想アドレス空間です。」

 

仮想アドレスがそう決定の単語は、最も重要なシステムパラメータであり、符号化されたそのような単語であるので、「すべてのコンピュータは、ワード長(ワードサイズ)を有しているデータに、公称サイズ指定ポインタ(通常サイズ)仮想アドレス空間の最大サイズ。、機械のWビットのワード長のために、仮想アドレス範囲が2 ^ Wバイト "までアクセスするために、0〜2 ^ W-1であります

ここでは読み取ることができますが、自分の言葉で出てくることができません

 

そのため、C言語のC言語の文の中で、特にレコードポインタ、あまりにも精通していないです。

任意のデータ・タイプT、for文

Tの* P;

これは、型Tのオブジェクトをポイントし、pがポインタ変数であることを示し たとえば、

CHAR * P

これはchar型のオブジェクトを指すようにポインタとして宣言されるであろう。

 

「プログラマー図ストレスはそれらの異なるマシンおよびコンパイラのポータブル・アプリケーションにする。移植性の側面は、異なるデータ型のデジタル.C範囲のための標準言語の異なるデータ型の正確な大きさに鈍感プログラムが提供されるようにすることです1980年頃2010年頃から、32ビットおよび32ビットマシンプログラムが主流の組み合わせであるので、次が、最後ではない。64ビットマシンの普及とともに、新しいマシンに移植され、これらのプログラムで、ワード長に多くの隠された依存性が出てくると、エラーとなるであろう。例えば、多くのプログラマは、宣言型intは、プログラムオブジェクトのポインタを格納するために使用することを前提としています。この32ビットマシンのほとんどをそれは素晴らしいが、64ビットマシン上で動作しますが、それは問題が発生します。」

私は理解して:

32ビットまたは64ビットマシンの両方INT、それは4バイト、または32ビットであり、
2 ^ 64ビットマシン上で、ワード長により決定された仮想アドレス範囲、すなわち、0の仮想アドレス範囲64-1は、仮想アドレスに格納されたポインタ値、従って64ビットマシン、ポインタINTを格納するために使用することができません。

 

 

質問:

進表記は、特定の場所で使用されていますか?これはのみ行うマシンレベルのプログラムで使用されていますか?

マシンレベルのプログラムは、どのようなプログラムですか?マシンレベルのアセンブラプログラムは、それを参照しますか?

4ギガバイトの仮想アドレス空間に32ビットのワード長の制限、32ビットマシン上で、プログラムは、メモリの4ギガバイトまでのデータにロードすることができるように、理解することができますか?

 

おすすめ

転載: www.cnblogs.com/stone94/p/11449336.html