可按Ctrl+D收藏 蚂蚁资源网

蚂蚁资源网

源码补码反码(原码反码补码博客园)

  • 全部评论(3)
  • qian
  • 用16bit表示,三个码分别是:原码、反码、补码-0: 1000 0000 0000 0000、1111 1111 1111 1111、0000 0000 0000 0000-6875: 1001 1010 1101 1011、1110 0101 0010 0100、1110 0101 0010 0101-11: 1000 0000 0000 1011、1111 1111 1111 0100、1111 1111 1111 0101如果是8位,:原码、反码、补码分别为:-0: 1000 0000、1111 1111、0000 0000-11: 1000 1011、1111 0100、1111 01016875 无法表示,因为8位的最大表大范围是-128 ~ 127正数:原码=补码负数:原码 = 正数部分(去掉负号)的二进制值,且符号位(最左边的比特位)为1反码 = 正数部分(去掉负号)的二进制值,按位取反补码 = 反码 + 1
  • 2021-02-20 06:40:01
  • 葬爱落雨
  • 数在计算机中是以二进制形式表示的。数分为有符号数和无符号数。原码、反码、补码都是有符号定点数的表示方法。一个有符号定点数的最高位为符号位,0是正,1是副。以下都以8位整数为例,原码就是这个数本身的二进制形式。例如1000001 就是-10000001 就是+1正数的反码和补码都是和原码相同。负数的反码是将其原码除符号位之外的各位求反[-3]反=[10000011]反=11111100负数的补码是将其原码除符号位之外的各位求反之后在末位再加1。[-3]补=[10000011]补=11111101一个数和它的补码是可逆的。为什么要设立补码呢?第一是为了能让计算机执行减法:[a-b]补=a补+(-b)补第二个原因是为了统一正0和负0正零:00000000负零:10000000这两个数其实都是0,但他们的原码却有不同的表示。但是他们的补码是一样的,都是00000000特别注意,如果+1之后有进位的,要一直往前进位,包括符号位!(这和反码是不同的!)[10000000]补=[10000000]反+1=11111111+1=(1)00000000=00000000(最高位溢出了,符号位变成了0)有人会问10000000这个补码表示的哪个数的补码呢?其实这是一个规定,这个数表示的是-128所以n位补码能表示的范围是-2^(n-1)到2^(n-1)-1比n位原码能表示的数多一个
  • 2021-02-11 17:48:15
  • 225548545
  • 源码 反码 补码的概念,源码就是程序的源代码 这个没法举例不过我猜你想问的是原码...原码就是指令转换成原始的机器码反码是2进制机器码的一种操作 比如求00110011的反码就是11001100补码就是计算机里存储指令都用补码举例就是9的原码是00001001 反码是11110110 补码是00001001 (如果是-9)那么符号位变成1 就是10001001
  • 2021-02-11 17:48:15
  • 商品推荐