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


定点整数

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

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

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

 

原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/268394.html

(0)
上一篇 2022年6月20日
下一篇 2022年6月20日

相关推荐

发表回复

登录后才能评论