C 将十六进制数转换为其2';补语
我应该用C写一个程序,把十六进制数转换成它的补码2。 e、 g)000000 8F至FFFFFF 71C 将十六进制数转换为其2';补语,c,hex,twos-complement,C,Hex,Twos Complement,我应该用C写一个程序,把十六进制数转换成它的补码2。 e、 g)000000 8F至FFFFFF 71 到目前为止,我已经知道如何打印出二进制的2'c补码,但十六进制对我来说似乎是另一回事。 关于我应该看哪个方向有什么建议吗?要计算n位十六进制数字的两个补码,可以: 对每个数字进行补码(0表示F,1表示E,依此类推),然后将一个数字加到整个数字上,或 将数字从(十六进制)1减去n个零 如果数字不是十六进制数字的整数,则必须对第一个数字的上述内容进行一些调整: 对于第一种方法,使用适当的位数
到目前为止,我已经知道如何打印出二进制的2'c补码,但十六进制对我来说似乎是另一回事。
关于我应该看哪个方向有什么建议吗?要计算n位十六进制数字的两个补码,可以:
- 对每个数字进行补码(0表示F,1表示E,依此类推),然后将一个数字加到整个数字上,或
- 将数字从(十六进制)1减去n个零
- 对于第一种方法,使用适当的位数对第一个数字进行补码。例如,对于22位,第一个十六进制数字只使用两位,因此0表示3,1表示2,2表示1,3表示0
- 对于第二种方法,从2的适当幂中减去。例如,对于22位,从(十六进制)400000中减去