关于c语言

日期:2021-06-13 07:19:17 人气:1

关于c语言

因为补码的问题
0177777的二进制即是
1111 1111 1111 1111
这个值应当是-1
1的原码是0000 0000 0000 0001
而-1就是把所有位取反(0变1,1变0),再在最低位+1,就能得到补码是16个1
根据负负得正的原理,如果对-1再进行一次求补码运算,正好可以得到1的二进制
补码转成10进制时,如果最高位为1,应当先写上负号,然后进行求补码运算得到它的相反数,化成10进制后写在负号后面。如果最高位为0
    A+
热门评论