可以說我有一個整數(32位),它存儲一個n位無符號數(帶有n < 32)。 如何使用二進制補碼將其有效轉換爲符號解釋?將n位整數從無符號轉換爲有符號
一個簡短的例子來闡明我的意思:
int numUnsigned = 15; // Store a 4-bit value 0b1111
int numSigned = ???; // Convert to 4-bit signed value using two's complement
// Now numSigned should be -1, since 0b111 == -1
我一直在與位全部搞亂上午,但似乎無法得到它的權利。
如何只延長MSB(4日),直到位32?這應該給你第4位數字的有符號表示。 –
你從哪裏得到'n'有點不清楚。 –
@Caleb我知道這不是2的補充。我只是誤解了這個問題。 –