作业帮 > 综合 > 作业

int a=-1;C语言整型数分配2个字节,在计算机中下列十六进制表示的a()是正确的.

来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/05/06 01:52:29
int a=-1;C语言整型数分配2个字节,在计算机中下列十六进制表示的a()是正确的.
A.ffff; B.8001; C.1001; D.0001;
int a=-1;C语言整型数分配2个字节,在计算机中下列十六进制表示的a()是正确的.
答案是A 这儿用到一个编码的概念:补码 在计算机系统中,数值一律用补码来表示(存储).对于负数来说:补码=反码+1. -1的原编码为1000 0000 0000 0001最高位1是标志位,表示这是一个负数,那么他的反码(符号位不变,其它位取反)就是1111 1111 1111 1110,所以-1的补码就应该是反码1111 1111 1111 1110再加上1变成1111 1111 1111 1111这个16位的2进制数就相当于十六进制的FFFF