永发信息网

补码是对它的原码(除符号位外)各位取反,并在未位加1?

答案:5  悬赏:30  手机版
解决时间 2021-01-29 20:38
  • 提问者网友:风月客
  • 2021-01-29 08:04
不要抄书!!!!!!!!!!!!!

为什么补码是对它的原码各位取反,并在末位加1?
最佳答案
  • 五星知识达人网友:零点过十分
  • 2021-01-29 09:22
这个和微机原理的记数系统有关
减一个数字等于加上这个数字的补码,因此,补码要同时满足运算的符号和数位的变换
在2进制中,这种数位变换经过计算后刚好为原来数码的反码加1
所以计算是我们就用原码的反码加1并称为补码进行加法运算
全部回答
  • 1楼网友:想偏头吻你
  • 2021-01-29 13:33
错。 负数的补码是对它的绝对值的原码逐位取反再末位加1。 而正数的补码是原码本身。
  • 2楼网友:渡鹤影
  • 2021-01-29 12:04
正数的补码与其原码相同; 负数的补码是对它的原码(除符号位外)各位取反,并在未位加1. 引入补码的目的是使减法运算变加法运算,让符号位也一起参加运算,使运算变得简单. 这就是对正数补码定义不同于负数补码的原因.
  • 3楼网友:洒脱疯子
  • 2021-01-29 11:00
除了下限(字长8位的-128、字长16位的-32768、……)之外, 题目的那句话是正确的。 . 求负数补码可用另一方法:[x]补 =x +模 例如,字长8位的模 =2^8 =256 [-128]补 =(-128) +256 =128 =1000 0000b 又如,字长16位的模 =2^16 =65536 [-32768]补 =(-32768) +65536 =32768 =1000 0000 0000 0000b
  • 4楼网友:七十二街
  • 2021-01-29 10:46
计算机中的数和数的符号都是用二进制表示的,这样的数称为机器数(原,补,反) 一般用最高有效位来表示数的符号 @@@@@@@@ 正数用0表示 @@@@@@@@@ @@@@@@@@ 负数用1表示 @@@@@@@@@ 机器数可用不同的码制来表示,常用的有原码、补码和反码表示法。 机器数的组成(8或16)以后会 ######################################################################################### 原码表示:符号 + 绝对值 n=8bit(机器字长n是指参与运算的数的基本位数,标志着计算精度,一般是字节的整数倍,有8位、16位、32位等) [+3] = 0 000 0011 =03H [-3] = 1 000 0011 =83H ######################################################################################### 反码表示:正数的反码同原码,负数的反码数值位与原码相反 n=8bit [+5] = 0 000 0101 =05H [-5] = 1 补码是为了将 减法 化作 加法 进行计算 a - b = a + (-b) 0001 ->取反:fffe->加一:ffff 1 = 0001 -1= ffff 所以定义就是这样的了 --------------------------------- 正数的补码就是本身 负数的补码就是取反再加1
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯