遇到32位16进制整数需要求取带符号型输出和无符号型输出两种情况下的值可以用一下方法解决。
16进制数带符号型整数求值:先把16进制数用二进制数表示看符号位是0还是1,是0的话就直接求值是1就把最后一位作为符号位,在按其他的位求得这个二进制数的补码(因为负数在计算机中用补码存储所以这里嘚二进制数是某一个数A的补码B,要求一个已知补码B的原码A只需要对求取这个已知的补码B的补码C,就得到了已知补码的原码A, C就等于A)再求值。
16进制数无符号整型求值:直接求值
1:在计算机中整数的存储
16进制数带符号型整数求值:先把16进制数用二进制数表示,看符号位是0还是1是0的话就直接求值,是1就把朂后一位作为符号位在按其他的位求得这个二进制数的补码(因为负数在计算机中用补码存储,所以这里的二进制数是某一个数A的补码B要求一个已知补码B的原码A,只需要对求取这个已知的补码B的补码C就得到了已知补码的原码A, C就等于A),再求值
16进制数无符号整型求值:直接求值。
这是我之前弄的参考网上的代碼改的,但是结果不对可以帮忙看看问题出在哪里么?谢谢