计算一个补码的非的两种方法

计算一个补码的非的两种方法:

1. 对每一位求补,再将结果加1.

举例:

假设字长为4,即可表示的最大数值范围为:-8 ~ 7

5 -> -5

0101 求补: 1010 加1: 1011(-5)

7 -> -7

0111 求补: 1000 加1: 1001(-7)

 

2. 从右边开始寻找第一个1的位置,将1左边全部位求补。

举例:

-4 -> 4

1100 右边第一个1左边的位全部求补:0100(4)

-8 -> -8

1000 右边第一个1在最左边,故无需求补:1000(-8)

posted @ 2011-01-02 11:00  Linjian  阅读(640)  评论(0编辑  收藏  举报