选D.
c的char数据属于基本类型,基本类型其中还包括-整型,实型,枚举类型!
数据在内存中是以二进制形式存放的。数值是以补码表示的。
整型:
一个正数的补码和其原码的形式相同。而负数的补码方式是将其绝对值的二进制形式“按位求反再加1”
实型:
在内存中占4个字节,是按照指数形式存储的,实型数据分为小数部分和指数部分,分别存放!计算机用二进制表示小数部分,用2的幂次来表示指数部分!
字符型:
在内存中字符的存储实际上是把字符相对应的ASCII代码放到存储单元中的。而这些ASCII代码值在计算机中也是以二进制形式存放的。这个与整型的存储很相似。因此这两类之间的转换也比较方便!
‘贰’ c语言中整数-8在内存中的存储形式是 求解释!在线等!! 答案是1111 1111 1111 1
你要是反码补码搞不清楚,教你一种方法
-8等0-8吧
0000 0000 0000 0000 - 0000 0000 0000 1000 = 1111 1111 1111 1000
0-1要向前借位,一直借到符号位
‘叁’ c语言中,int类型的负整数在内存中以什么存在
int类型的负整数在内存中以这个数的补码形式存在。举例说,-1,就是
11111111 11111111 11111111 11111111 (4字节int)
‘肆’ 在c语言中,-1、-2、-15在内存单元中的存放形式。
1、计算机都是以二进制存储数据的,即不是0就是1
2、负数在内存中就是以补码形式存在的,所以根本就不用考虑负数的原码.
负数的补码,可以由其绝对值的原码,各位取反后加1得到.
比如1的原码是00000001,取反是11111110,加1是11111111,这就是-1的补码.
-2同样,2是00000010,取反是11111101,加1是11111110.
‘伍’ C语言 整数在内存中的储存形式
-8 是一个整数在计算里表示一个有符号数的形式是,看开始的字节最高位是多少,如果是0则为是正数,是1则为负数 负数的数值部分的表示方式是按补码加1算出的。 如题:-8则最高位是1余下的数值8的二进制是000 0000 0000 1000,进行求补为 111 1111 1111 0111,因为计算机内存的表示方式是补码的形式加1,所以最后的值的结果就是 111 1111 1111 1000 再加上负号位:即:1111 1111 1111 1000
‘陆’ 在c语言中,整数-8在内存中的存储形式是
用两字节表示整数,所以整数-8在内存中的存储形式是二进制补码:
1111111111111000
‘柒’ C语言的基本类型在内存中怎么储存的
C语言的基本类型在内存中以二进制的形式储存的。
1、整型数据:所有整数(正负零)在内存中都是以补码的形式存在。对于一个正整数来说,它的补码就是它的原码本身。对于一个负整数来说,它的补码为原码取反再加1。
2、字符型数据:把字符的相对应的ASCII码放到存储码单元中,而这些ASCII代码值在计算机中同样以二进制补码的形式存放的。
3、实型数据:也叫浮点数,在计算机中也是以二进制的方式存储,关键在于如何将十进制的小数转化为二进制来表示。
扩展资料:
根据计算机的内部字长和编译器的版本,C语言的基本类型表示的数的长度范围是有限定的。十进制无符号整常数的范围为0~65535,有符号数为-32768~+32767。八进制无符号数的表示范围为0~0177777。十六进制无符号数的表示范围为0X0~0XFFFF或0x0~0xFFFF。
如果使用的数超过了上述范围,就必须用长整型数来表示。长整型数是用后缀“L”或“l”来表示的。长整数158L和基本整常数158在数值上并无区别。
‘捌’ 负整数赋值给无符号变量的结果及它们在内存中的表示形式
整型数据是带符号数还是无符号数,其实在C语言中内部处理是没有区别的,区别仅仅在于输出的时候。
如果给的是带符号数,那么就存储它的补码示,否则存储它的绝对数值对应的二进制值。
比如一个16位(二进制位数)整型数据在内存中是两个字节,它的每一位都是1。如果该数据定义时未使用unsigned,那么它就是一个带符号的整数,它的值就是-1;而如果该数据定义时使用了unsigned,那么它就是一个带符号的整数,它的值就是65535。
#include<stdio.h>
intmain(){
shorta;
unsignedshortb;
a=-1;
b=-1;
printf("a=%d,b=%d ",a,b);
a=65535;
b=65535;
printf("a=%d,b=%d ",a,b);
}
上面的代码的输出如下,说明不管你怎么赋值,
a=-1,b=65535
a=-1,b=65535
‘玖’ C语言中整数在内存中的储存形式
无符号的整数和有符号的正整数都是用二进制原码来表示,而负整数则是使用补码来表示(补码的算法:负数的绝对值的原码安位取反再加一)。举个例子来说吧:
假设机器使用的是16位来存储整数。
10 的存在形式是0000000000001010
-10的存在形式:
(1) |-10| = 10 ,10原码为0000000000001010
(2)安位取反: 1111111111110101
(3)加1: 1111111111110110(最终结果)