假定编译器规定int和short型长度分别为32位和16位,执行下列C语言语句:
unsigned short x=65530;
unsigned int y=x;
得到y的机器数为( )。
A. 0000 7FFAH
B. 0000 FFFAH
C. FFFF 7FFAH
D. FFFF FFFAH
x(16位) =》65530 = FFFA H
y(322位) =》 0000 FFFA H
小王桐学 回复 小王桐学: 32
参考答案:B
解析:将一个 ...
用户登录可进行刷题及查看答案
解析:将一个 16 位 unsigned short 转换成一个 32 位的 unsigned int,新表示形式的所有附加位都用 0 进行填充。X 的 16 进制表示为 FFFA,所以 y 的十六进制表示为 0000FFFA。
x=65530=65536−6=216−1−5=FFFFH−5H=FFFAH 。
unsigned short转unsigned int,高位补0,y=x=0000FFFAH。
登录后提交答案