我可能会提出这个问题有点不对劲。我需要用纸和笔计算十六进制的IPv4标头校验和。在此链接http://en.wikipedia.org/wiki/IPv4_header_checksum 在最后一个例子中,他们这样做。
我有一些问题需要了解它们如何直接用十六进制计算。在纸上做的时候,如果我得到一个超过15的数字,例如48我将使用什么提醒以及我会写下什么?
任何可以解释如何处理此事的人?
谢谢你,并且对于错误地提出问题而感到抱歉,但我现在已经改变了它:)
答案 0 :(得分:1)
请参阅http://www.youtube.com/watch?v=UGK8VyV1gLE,其中非常清楚地描述了该过程。
以十六进制计数(基数为16)就像计算十进制数(基数为10),只是当你计算过去F时才开始携带余数。
因此,在您的评论示例中,它就像计算十进制而没有余数:
15
24
---
39
一个简单的真正的HEX添加是:
11
F
---
20
1 + F = 10 = 1余数+ 1 = 20
15比48也很简单:
15
48
---
5D
8 + 5 = D没有余数,1 + 4 = 5没有余数
答案 1 :(得分:0)
十六进制只是数字的表示。为了让计算机帮助您添加,您必须将十六进制表示的数字转换为数字本身,然后执行添加,然后将其转换回来。这不是转换为二进制,因为二进制也只是一种不同的表示。
如果您不希望从十六进制转换,则必须解释为什么您不希望进行此转换。
答案 2 :(得分:0)
我认为这听起来像是一个愚蠢的答案,但这是我用你写这个问题的方式给出的最好的。
十六进制加法与十进制完全相同,除了16而不是10位数。所以实际上,你要问的是如何一般地添加(包括十进制)。在十进制中,9 + 1 = 10.在十六进制中,F + 1 = 10.显然,相同的加法规则适用于