原码就是将数值大小转换为二进制数值。
反码就是在原码的基础上符号位不变,数值位取反。
补码就是在反码的基础上+1。
在计算机系统中,对数据处理使用的是补码进行运算,因为使用补码可以将符号位和数值域统一处理。同时,加法和减法也可以统一处理(cpu中只有加法器)。此外,原码和补码可以使用相同的电子线路相互转换,不需要额外的硬件电路。
整型提升是C程序设计语言中的一项规定:在表达式计算时,各种整型首先要提升为int类型,如果int类型不足以表示则要提升为unsigned int类型;然后执行表达式的运算。
整型提升分为有符号和无符号两种。
1.有符号的:整型提升按照变量被截断时的最高位是什么进行补位的,如果截断后最高位(最左端)数字为1,则在前面补够32位1即可。若最高位数字为0,则在前面补够32位0即可。
2.无符号的:直接在被截断的前面补0即可。
整型提升的意义;CPU寄存器对数据进行计算的时候,表达式各种长度可能小于int长度的整型值,都必须转换为int或者unsigned int,然后送入CPU进行计算 。不同的类型提升的方式不同,在计算和编程的时候需要特别注意整型提升的方式。
因篇幅问题不能全部显示,请点此查看更多更全内容