Binary 二进制绝对值

Binary 二进制绝对值,binary,Binary,如果我想用二进制表示一个绝对值及其符号的数字,我会这样做: F.e.3=11->011(0,因为它是正的) -7=111->1111(我添加了1,因为它是负数) 如果我有这种情况,我用符号和绝对值来表示二进制数 -3=11->111 -7=111->1111 然后我想把它们加起来 1111+ 111 = 这个格式正确吗? 因为在二进制中-3比-7短,如果我用这种方式加一个零 1111+ 0111 = 我会失去-3的符号吗?这是一种危险的数字相加方法,也是为什么将第一位作为符号以及数字的正表示

如果我想用二进制表示一个绝对值及其符号的数字,我会这样做: F.e.3=11->011(0,因为它是正的) -7=111->1111(我添加了1,因为它是负数)

如果我有这种情况,我用符号和绝对值来表示二进制数

-3=11->111 -7=111->1111

然后我想把它们加起来

1111+ 111 =

这个格式正确吗? 因为在二进制中-3比-7短,如果我用这种方式加一个零

1111+ 0111 =


我会失去-3的符号吗?

这是一种危险的数字相加方法,也是为什么将第一位作为符号以及数字的正表示后的所有内容都设置为符号很麻烦的原因

我将通过以下方式解决此问题:

 111
+ 11
=1010 = ten
然后在前面加一个1表示它是负数,得到11010

一般的策略可能是不使用符号位进行加法/减法运算,然后根据结果是负数还是正数在末尾进行加法/减法运算

例如:什么是7-3

7=0111 -3=111,3=011

 111
- 11
=100 = four
然后知道7-3为正,因此在末尾添加符号位以获得0100


这个问题的一个解决方案是“2的补码”

非常感谢您的详细解释,它解决了我的疑问!