递归火山软件开发平台

标题: 这个字节集怎么回事? [打印本页]

作者: pengsujie520    时间: 4 天前
标题: 这个字节集怎么回事?
(, 下载次数: 0)
(, 下载次数: 0)

求助教一下谢谢。这个回事,摸索半天也没看明白哪里出问题了。

作者: weilai    时间: 4 天前
无符号字节到整数 才行,因为字节是有符号的,所以直接转成整数也是有符号的
作者: rinipp    时间: 4 天前
字节范围从-128到127
作者: rinipp    时间: 4 天前
deepseek解释
计算 0x8F 作为 sbyte 的值
0x8F 的二进制表示是:1000 1111

第一步:看符号位
最高位是 1,所以我们立刻知道这是一个负数。

第二步:求值(计算补码)
要找出这个负数对应的十进制值,我们需要执行补码的逆过程:

取反(Invert all bits):将 1000 1111 的每一位取反(1 变 0, 0 变 1)。

取反后得到:0111 0000

加一(Add one):给取反后的结果加 1。

0111 0000 + 1 = 0111 0001

转换为十进制:将结果 0111 0001 转换为十进制。

0111 0001 = 64 + 32 + 16 + 1 = 113

加上符号:因为我们第一步就知道它是负数,所以最终的值是 -113。

这个过程也可以理解为:这个负数的值是 -(其补码的值)。 0x8F 的补码是 0x71 (即 113),所以值是 -113。
作者: pengsujie520    时间: 4 天前
weilai 发表于 2025-9-8 22:16
无符号字节到整数 才行,因为字节是有符号的,所以直接转成整数也是有符号的 ...

是的 是的,感谢。
作者: pengsujie520    时间: 前天 01:48
urenai 发表于 2025-9-9 11:42
大脑发育没跟上可能,十六进制31的十进制就是49啊
开玩笑,不当真

自言自语的在哪说啥呢?是49啊。没错啊。
作者: pengsujie520    时间: 前天 01:49
urenai 发表于 2025-9-9 11:42
大脑发育没跟上可能,十六进制31的十进制就是49啊
开玩笑,不当真

谁的大脑发育没跟上?
作者: urenai    时间: 前天 11:23
pengsujie520 发表于 2025-9-10 01:49
谁的大脑发育没跟上?

火山的字节是有符号的
作者: pengsujie520    时间: 前天 11:32
嗯嗯嗯,这个话题结束 问题已经得到解决了 感谢各位的参与!为你们的热心表示感谢。!




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4