例子3:x=-7,计算x的二进制原码和补码
源码:x = 1,0111
补码:x = 1,1001
是否是这样计算的:
我们使用重复相除法将十进制的7转换为二进制 是111,因为n表示x的位数(这里n的值为什么要设置为4???)所以,我们需要补齐位数 也就是0111,还需要一个符号位,因而源码等于1,0111.
计算补码的过程:2^5 - 7 = 32 - 7 = 25; 将25转换为二进制 也就是11001 (那么视频中为何要表示 2 ^5 - 7 = 100000 - 0111,表示成二进制数相减 有何意义);接着 因为 n等于4 计算出的结果 首位也是1 所以补码就等于 11001(可是只要是一个整数 使用重复相除法 最后商0 必定是余1的 这样是不是将计算出的首位当作符号位 感觉有点牵强)
恳请老师解答疑惑.谢谢