计算二进制实数

Calculate binary real number

提问人:Kangkue 提问时间:2/13/2023 最后编辑:Kangkue 更新时间:2/14/2023 访问量:87

问:

关于小数,我有话要问

我正在尝试计算二进制数。例如。101.01

2^3 2^2 2^1 2^0 (dot/point) 2^-1 2^-2 2^-3

这是照片,如果不清楚的话

就像图片中一样,如果在左边(点),指数是正的 如果在右边(点),则指数为负。

要计算点左侧的数字,是必需的。

101 = 2^0 + 2^2 = 5

并计算点右侧的数字。

01 = 2^-2 = 0.25

我的问题是为什么负数的指数不是 0 (2^0),

而正数的指数为 0。

0 不是中性数,既不是正数也不是负数吗?

浮点 二进制

评论

0赞 chux - Reinstate Monica 2/13/2023
“为什么负数的指数不是 0 (2^0)” --> 为什么你认为负数的值应该是 0 (2^0)?注意:2^0 是 1.0。pow(2,0)
0赞 Kangkue 2/13/2023
@chux-ReinstateMonica,因为我认为,如果正指数有 2^0,那么负指数应该相同
0赞 chux - Reinstate Monica 2/13/2023
康奎,当你有“负数”时,你说的是负数(x < 0)吗?小于 1.0 的值还是什么?
0赞 Kangkue 2/13/2023
@chux-ReinstateMonica 如图所示,正指数以 2^0 开头,而直接负指数为 2^-12^3 2^2 2^1 2^0 (dot/point) 2^-1 2^-2 2^-3

答:

1赞 jojo2357 2/13/2023 #1

这在十进制(常规数字)中的工作方式相同

例如,您可以有 5 个 which = ,或者为了完整起见,我们可以说 05.0 = 。这些数字都不是负数。指数为负数。5*10^00*10^1 + 5*10^0 + 0*10^0

令人困惑的是,数字本身不是负数,而一些指数是负数。我们也可以把它写成05.005.0=0*10 + 5*1 + 0*1/10

回到你的例子,因此,我们可以通过将整个内容写成一个单一的总结来消除混淆。具体如下:101.01

1*(2*2) + 0*(2) + 1*(2/2) + 0*(1/(2)) + 1*(1/(2*2)) = 1*4 + 1*1 + 1/4 = 5.25

1赞 Steve Summit 2/13/2023 #2

我认为简短的回答是,因为 . 或基数点与“中性”点并不完全一致。

较长的答案首先回顾一下您可能已经知道的内容:

实数线在 0 附近对称表示加法。0 是“中性点”,既不是正也不是负。(数学家说 0 是“加性恒等式”。

正数在 1 附近对称表示乘法。1是“中性点”。(数学家说 1 是“乘法恒等式”。

在功率方面,这两个系统非常非常吻合。这就是您链接的图像试图显示的内容。我通常认为表格是这样的:

N 10N 2牛顿米
3 103 1000 23 8
2 102 100 22 4
1 101 10 21 2
0 100 1 20 1
-1 10-1 0.1 2-1 ½
-2 10-2 0.01 2-2 ¼
-3 10-3 0.001 2-3

这张表的中间一行——N = 0 行——是中心点或枢轴点或“中性”行,即一切都是对称的行,N = 0 和 XN = 1。(如果我知道如何在 Stack Overflow markdown 中为这一行着色,我会以不同的方式着色。

我不是一个数学家,不能说它是否天生就必须这样。我记得,当我第一次学习这些东西时,X0 应该意味着什么并不明显,或者 X 升到负数的幂。但是当你画出那张表,并观察模式时,你可以看到 X0 必须是 1,因为当你向下移动列时,你会反复除以 10 或 2(就像你在链接的图像中向右移动时一样)。

另一件需要注意的事情是 X-N 始终等于 1/XN。这最终显示了 X 提高到负幂应该意味着什么,这是另一种方式,即乘法在 1 附近是对称的,并且在 0 附近与加法对称。

但是,回到你的问题,你是对的:当你使用位置符号系统写一个分数时,比如

101.01

角色并不完全处于“中立点”。它的左边是中性点,右边的一切都是负的。我不知道有什么令人满意的方法来解释这种差异。...

你可以想象以更对称的方式标记“中性点”的替代符号,比如 10{1}01,或者在中间 1 下方用点或条形,但我从未听说过这样的事情。 (这可能让人想起阿拉伯语中使用辅音上方的点表示元音的方式。 在常见的对数中也使用了“条形符号”,尽管这也是一种不同的野兽。


附录:在评论中,你问了另外几个例子,虽然恐怕我不太确定你在问什么。我将使用 nonce {} 表示法呈现这些示例,并将它们转换回十进制,如下所示:

                         2³  2²  2¹  2⁰  2⁻¹ 2⁻² 2⁻³
                         8   4   2   1   ½   ¼   ⅛

                                 0   0   0   1
   0b0.01  →   0{0}01  =         0 + 0 + 0 + ¼     =   ¼ =  0.25

                         1   1   0   1   1   0   1
0b1101.101 → 110{1}101 = 8 + 4 + 0 + 1 + ½ + 0 + ⅛ = 13⅝ = 13.625

                             1   0   1   0   1
 0b101.01  →  10{1}01  =     4 + 0 + 1 + 0 + ¼     =  5¼ =  5.25

                         8   4   2   1   ½   ¼   ⅛

对我来说,这一切都是非常有规律和一致的。我把东西排成一行,使 2⁰ = 1 正好在中间运行,这始终是随机数符号中要括起来的地方。{}

评论

0赞 Kangkue 2/14/2023
嗨,先生,感谢您回答我的问题。以前有件事我想问,有件事我想问,如果例子,,这意味着,,是我们的观点是这样的,,或者。0.250.010{0}1{0}01
0赞 Kangkue 2/14/2023
以及中位数线是否受值的影响,例如,总计。(因为它在中间)。13.625 = 110{1}.10171
0赞 Kangkue 2/14/2023
或受哪个数字是整数的影响,例如,“5.25 = 101.01”,因为是整数,成为中心线,(因为任何提高到 的幂的数字都成为 )。10110{1}01
0赞 Kangkue 2/14/2023
例如,如果它受哪个数字是整数的影响,例如,这意味着 .不一致的0.25 = 0.01{0}.01 = 1 (because 2^0) .25
0赞 Steve Summit 2/14/2023
@Kangkue 是的,0.25 会(或者为了清楚起见)在更“平衡”的符号中。中没有 7,因为要获得 7,你需要 。我不知道你说的“受哪个数字是整数的影响”是什么意思,而且我没有看到 1/4 = 0.25 = → 有任何不一致之处。请参阅我刚刚发布的答案的附录。{0}010{0}01110{1}10111{1}0b0.010{0}01