メモ帳のようなアプリケーション プログラムを備えた 32 ビット OS を実行している 32 ビット マシンがあるとします (想定)。'A' という 1 文字だけを含むプログラムで .txt ファイルを作成し、そのファイルを ANSI コーディング (または ASCII) でディスクに保存するとします。ワードと呼ばれる単一のアドレス指定可能なメモリ ブロックを構成する 32 ビットでは、ワードの 4 バイトをどのように使用して「A」(つまり、ASCII の 65 番) を格納するのでしょうか? 現在、65 はバイナリで 0100 0001 に変換されます。
質問する
779 次
1 に答える
0
ASCII は、1 文字につき 1 バイトだけを使用していることを意味します。多くのエンコーディングは文字ごとに 1 バイトしか使用しませんが、utf16 のように、文字ごとに常に 2 バイトを使用するものもあります。
これらの文字を CPU のレジスタで処理し、それらを整数としてロードする場合、32 ビットが適切になります。次に、1 バイトが 32 ビット整数に変換され、CPU によって処理されます。もう一度保存すると、長さは 1 バイトになります。
1 バイトを 32 ビット整数に変換する方法。たとえば、ここで説明します: http://en.wikipedia.org/wiki/Endianness
于 2012-12-16T10:51:29.887 に答える