今天在 Reader 里看到阮一峰老师在他的 Blog 里介绍了《关于2的补码》的知识,说得很清楚易懂,想必看后就不用再到网上找其他的英文资料学习了。各位还不太清楚其中原因的同学可以来看看。
什么是2的补码?《关于2的补码》原文地址在这里: http://www.ruanyifeng.com/blog/2009/08/twos_complement.html 。
它是一种数值的转换方法,要分二步完成:
第一步,每一个二进制位都取相反值,0变成1,1变成0。比如,00001000的相反值就是11110111。
第二步,将上一步得到的值加1。11110111就变成11111000。
所以,00001000的2的补码就是11111000。也就是说,-8在计算机(8位机)中就是用11111000表示。
此外,我还找到了看过的一本数电教材,Ronald C. Emery 所著的 Digital Circuits,其中的 Arithmetic with Binary Numbers 一节让我学到了不少东西。这本教材在 Google Books 上就可以找到足够详细的可读章节,请点击这里阅读。
Never, never, never, never give up
回复删除-----------------------------------
Leiden