如何区分无符号 n 位和有符号 n 位?

How to differ unsigned n bit from signed n bit?

是否可以区分无符号 n 位和有符号 n 位?

因为它们看起来完全一样,例如10001111 可以表示 143 或 -113

这是不可能的,而且这不是唯一不可能的事情。在通常情况下,您甚至不能确定 10001111 代表 143、-113 或 42。您可以发明自己的方式将所有可能的二进制八位字节映射到数字或任何其他虚构的实体。

例如,您可以将 64 位整数视为 16-permutations: such an integer consists of 16 nibbles 的有效表示,并且它们中的每一个都可以采用 16 个不同的值。然后您可以使用常见处理器的位移位和按位逻辑指令实现置换组合,或者在(例如)具有几乎单周期置换组合的FPGA上实现您自己的置换处理器。

对于您能想象到的任何对象的任何其他操作也是如此。