c语言整型变量表示
1.无符号的表示
无符号的表示一般是将所有组成整型的比特位,按照正权,乘以对应比特位的值,再将所有得到的值相加得到
形式上可以表示成这样:

向量x表示对应比特位
2.有符号的表示(补码)
有符号的表示是最高位按负权表示,其余位按照正权表示
形式上可以表示成这样:

3.无符号和有符号的转换
无符号转换成有符号,相当于按无符号表示来重新计算各比特位
因为只有最高位的权不同,所以根据最高位的值为0或1可以分为两种情况
最高位为0,符号转换后,值不会发生变化
最高位为1,符号转换后,值发生变化,以无符号转有符号为例:

4.有符号的其余表示形式
反码:最高位的权是-(2w-1-1),而不是-2w-1,其余和补码一样:

原码:最高有效位是符号位,用来确定剩下的位取正权还是负权:

浙公网安备 33010602011771号