Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Binary 如何用二进制表示一个字节的-128?_Binary - Fatal编程技术网

Binary 如何用二进制表示一个字节的-128?

Binary 如何用二进制表示一个字节的-128?,binary,Binary,为了避免在以字节表示有符号整数时以两种不同的方式表示0,例如 10000000 及 按照惯例,可以说10000000=-128。这是正确的吗?是的,但不完全符合惯例——这是一个公式。根据同样的公式-1将是11111 请阅读此处了解详细信息显然有不同的表示形式,包括您提到的表示0的两个不同数字的表示形式 二的补码是我所知道的唯一一种在计算机中使用的表示法,对于这一种,你的假设是正确的。在有时称为有符号字符的数据类型中,二进制10000000实际上是-128。见: 是的,这是两个补码表示法。

为了避免在以字节表示有符号整数时以两种不同的方式表示0,例如

10000000


按照惯例,可以说
10000000
=-128。这是正确的吗?

是的,但不完全符合惯例——这是一个公式。根据同样的公式-1将是11111


请阅读此处了解详细信息

显然有不同的表示形式,包括您提到的表示0的两个不同数字的表示形式

二的补码是我所知道的唯一一种在计算机中使用的表示法,对于这一种,你的假设是正确的。在有时称为有符号字符的数据类型中,二进制
10000000
实际上是-128。见:


是的,这是两个补码表示法。
00000000