2019 组成原理 类型转换补码 选择题
第 13 题

考虑以下C 语言代码:

unsigned short usi = 65535; short si =usi;

执行上述程序段后,si 的 值 是 ( ) 。

A. -1 B. -32767 C. -32768 D. -65535

[tag_link]

正确答案:A

unsigned short 类型为 无符号 短整型,长度为 2 字节,因此 unsigned short usi 转换为二进制代码即 1111 1111 1111 1111。short 类型为短整型,长度为 2 字节,在采用 补码 的机器上 short si 的二进制代码为 1111 1111 1111 1111,因此 si 的值为 -1,所以选 A。