其他分享
首页 > 其他分享> > 【计算机组成原理】 强制类型转换

【计算机组成原理】 强制类型转换

作者:互联网

定点整数

长度相同的无符号和有符号数转化

无符号数与有符号数:不改变数据内容,改变解释方式。

C 中的int short 等类型都是用补码的形式存储的。

short x=-4321;

内存中存储为X:1110 1111 0001 1111  计算机真值显示为:-4321

unsigned short y=(unsigned short) x;

内存中存储为y:1110 1111 0001 1111 计算机真值显示为:61215

长数据强转为短数据(强制转化)

长整数变短整数:高位截断,保留低位。

int short a=165537,b=-34991;  //int型占用4个字节
short c=(short)a,d=(short)b;//short型占用2个字节

 

 

 短整数变长整数:符号扩展。

short x=14321;//x:1110 1111 0001 11110xeflf

int m=x;//  有符号再内存保存为补码,因此有符号短整->长整,需在前面加1111 1111 。  x:1110 1111 0001 1111  真值0xeflf

unsigned short n= (unsigned short) x;  //n: 1110 1111 0001 1111 0xef1f  真值61215

unsigned int p=n;//p: 0000 0000 0000 00001110 1111 0001 1111  无符号转化前面直接填0

 

标签:类型转换,short,计算机,int,unsigned,1111,1110,强制,0001
来源: https://www.cnblogs.com/cdaniu/p/16391942.html