假定编译器规定int和short类型长度分别为32位和16位,执行下列C语言语句: unsigned short a= 65534; unsigned int b ; b=a; 得到b的机器数为( )。

admin2021-01-07  30

问题     假定编译器规定int和short类型长度分别为32位和16位,执行下列C语言语句:
    unsigned short a=  65534;
    unsigned int  b  ;
    b=a;
    得到b的机器数为(  )。

选项 A、00007FFEH
B、0000FFFEH
C、FFFF7FFEH
D、FFFFFFFEH

答案B

解析 本题考查数据表示的基础知识。
    各种数据在计算机中表示的形式称为机器数,其特点是采用二进制计数制,数的符号用0、1表示,小数点则隐含表示而不占位置。机器数对应的实际数值称为数的真值。二进制表示中,用最高位作为符号位,“0”代表“+”,“1”代表“.”,其余数位用作数值位,代表数值。有符号数的编码方式,常用的是补码。而无符号数的表数范围是非负数,全部二进制均代表数值,没有符号位。即第一个“0”或“1”不表示正负。C语言支持所有整型数据类型的有符号数和无符号数运算。16位的无符号整数a等于65534,十六进制表示为FFFEH,32位的无符号整数b等于a,即65534,十六进制表示为0000FFFEH。
转载请注明原文地址:https://kaotiyun.com/show/6jWZ777K
0

随机试题
最新回复(0)