一个雷死人的英文句子

最近在翻译RFC文档的时候遇到这样一个句子,是关于校验和的:

The Checksum is the 16-bit one's complement of the one's complement sum of the whole IGMP message (the entire IP payload).

本来对校验和还是挺亲切的,可是,反复看几遍one's complement of one's complement sum。。。顿时脑子里满是浆糊。。。one's complement到底是什么东西?1的补码?上网一搜,终于找到一个例句:《Computer Network》(Andrew S. Tanenbaum )在中国的翻译版《计算机网络》(清华大学出版社)对于校验和是这样翻译的:

(原文)The checksum algorithm is simply to add up all the 16-bit words in one's complement and then to take the one's complement of the sum.

(译文)校验和的算法是简单地将所有16位字以补码形式相加,然后再对相加和取补。

仔细一看,终于感觉茅塞顿开。其实两句的意思是一致的,只是《Computer Network》讲的稍微详细一点而已,作者在这里直接将one's complement翻译成“补码”。继续google,发现还有two's complement, 1's complement, 2's complement等,原来补码在英文文档里有1的补码和2的补码两种,1的补码是指正数=原码、负数=反码,而2的补码是指正数=原码,负数=反码+1(忽略溢出)。翻译的时候很多人会直接将它们译成“补码”,所以导致中文里1的补码和2的补码说法不常见。

为了避免混淆和保持英文愿意,将上文的句子翻译如下:校验和是IGMP报文(整个IP负载)16比特长度补码和的补码(这里补码类型为1的补码)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值