1

私は質問を少し間違って定式化したかもしれません。紙とペンを使って IPv4 ヘッダーのチェックサムを 16 進数で計算する必要があります。このリンクhttp://en.wikipedia.org/wiki/IPv4_header_checksum で、最後の例を示しています。

それらが16進数で直接カウントされる方法を理解するのに少し問題があります。紙に書き出すとき、たとえば 48 のように 15 を超える数字が出たら、どのリマインダーを使用し、何を書き留めますか?

これを処理する方法を説明できる人はいますか?

ありがとうございます。質問を間違って作成して申し訳ありませんが、今は変更しました:)

4

3 に答える 3

1

プロセスを詳しく説明しているhttp://www.youtube.com/watch?v=UGK8VyV1gLEを参照してください。

16 進数 (基数 16) での数え方は、10 進数 (基数 10) での数え方と同じですが、F を超えて数えたときにのみ剰余を持ち始める点が異なります。

したがって、コメントからの例では、10 進数で数えて余りのないものと同じです。

 15
 24
---
 39

単純な真の HEX 加算は次のとおりです。

 11
  F
---
 20

1 + F = 10 = 1 剰余 + 1 = 20

15 over 48 も単純です。

 15
 48
---
 5D

8 + 5 = D 余りなし、1 + 4 = 5 余りなし

于 2012-10-22T15:19:55.763 に答える
0

16 進数は単なる数値の表現です。コンピューターに足し算を手伝ってもらうには、16 進数で表された数値を数値自体に変換してから足し算を行い、元に戻す必要があります。バイナリも異なる表現であるため、これはバイナリへの変換ではありません。

16 進数からの変換を望まない場合は、この変換を望まない理由を説明する必要があります。

于 2012-10-20T21:14:14.607 に答える
0

これはばかげた答えのように聞こえるかもしれませんが、あなたが質問を書いた方法で私ができる最善のことです.

16 進数での加算は、10 桁ではなく 16 桁であることを除いて、10 進数とまったく同じように機能します。したがって、実際には、あなたが求めているのは、一般的な加算方法 (10 進数を含む) です。10 進数では、9 + 1 = 10. .

于 2012-10-20T21:20:54.087 に答える