对于只有顶部位设置的有符号值是否有技术术语?

时间:2018-03-01 05:04:54

标签: binary terminology notation twos-complement

在二进制补码表示法中,总有一个奇数输出值来补偿0 /原点值,概念上既不是正值也不是负值。为了实用主义,我们将0视为正数,并且我们将其对应物(最高位为1,其余为0)视为负值,但从概念上讲,它们都是没有符号的特殊值,因为两者都是例如,-v == v。

例如,在带符号的32位值中,此数字可能以下列其中一种形式表示:

0b10000000000000000000000000000000
0x80000000
-2147483648

我个人一直用这个奇怪的价值一段时间,我将在下面作为我自己的答案分享,并让你们都决定它是否值得,但如果已经有一个我不会感到惊讶公认的名称。

我把剩下的留给你......

编辑:在进一步的研究中,我确实发现一些网站声称“它有时被称为奇怪的数字”,但这些模糊信息始终从维基百科条目中逐字复制,以两个补码表示法为准。本身只引用了2006年的大学研究论文,该论文在指定地点无法获得,但我找到了here,其中只提到了这样的传递。维基百科也引用了一本书,但该书的用法似乎是基于维基百科条目的文本,该文章在本书编写之前就已存在。我不相信除了一位东京大学的学生以外的任何人都称其为“奇怪的数字”在实践中

2 个答案:

答案 0 :(得分:0)

根据具体情况,我可能会将其中性地称为 死亡值 ,或者,如果我感觉像拟人化,我称之为 死亡 即可。我认为那个单独的顶级作为各种镰刀。

我称之为有两个原因:

  1. 在作为二进制补码表示法的环上,它的对应部分为0,我们通常将其称为原点 origin 的一个反义词是 death

  2. 这个特殊的价值观虽然含糊不清,但往往会让许多程序员感到困惑。它实际上是许多毫无防备算法的 death

  3. 在编写简洁程序集时,我倾向于将其缩写为“D”,例如,如果我的条件满足所有大于零的值,死亡,我可能会称之为国旗“GZD”。

答案 1 :(得分:0)

我简单地称之为最小整数最小值,因为这确实是二进制补码。

它也在C标准limits.h(和C ++等效)标题中进行了描述,例如使用SCHAR_MININT_MINLONG_MIN等等。