理解补码的“按位取反,末尾加一”

钟表时针指向10点,要将它拨向6点,有两种拨法:① 倒拨4格 ② 顺拨8格。时钟是模12系统,8是-4对模12的补码

对于某一确定的模,某数减去小于模的另一数,总可以用该数加上另一数负数的补码来代替:10-4=6 等价于 (10+8)(mod 12)=6

8位机器上的补码,按位取反再加一的其实就是用1 0000 0000(= 1111 1111 + 1)去减该数

 

50年代以来,所有计算机都用补码来表示定点整数;反码现已不用于表示数值数据;原码现用来表示浮点(实)数的尾数

你可能感兴趣的:(理解补码的“按位取反,末尾加一”)