0

宿題として、次の質問がありました。

Bob はポインターを使用して C 文字列を保存しました。すばらしい。" RAM のアドレス 100 subscript(16) にあります。メモリを 2 つの列を持つテーブルとして表します。最初の列は RAM のアドレスで、2 番目の列はそのアドレスに保存されているデータです。

100 subscript(16) で格納された C 文字列 Bob のメモリとその内容をバイナリで表示します。言い換えると、指定された C 文字列のアドレスを 2 進数で、バイトを 2 進数で、2 つの列を持つテーブルとして記述します。最も左の列はアドレスです。

正しい軌道に乗っていることを確認したいだけです。ASCII を使用して文字列をバイナリに変換し、100 16を 10 進数の 256 に変換します。次に、文字列を 8 ビット コンポーネントに分割し、アドレス 256 に最初の 8 ビット (最初の文字) を配置し、アドレス 257 に 2 番目を配置します。 8 ビット (2 番目の文字) など?

4

2 に答える 2

3

James はポインターを使用して、C 文字列「Test」を RAM のアドレス 10 subscript(16) に保存しました。

 Address    data
0001:0000  0101-0100
0001:0001  0110-0101
0001:0010  0111-0011
0001:0011  0111-0100
0001:0100  0000-0000

(文字→ASCII→バイナリ変換を頭の中でやっていたので、ちょっとズレてるかも)

(編集済み:コメントに記載されているように、ばかげた間違いを修正しました)

于 2013-01-28T21:09:47.363 に答える
1

あなたの解釈は正しいです。

ただし、これはおそらく SO ではあまり有用な質問ではありません。

于 2013-01-28T21:07:29.220 に答える