c语言进阶学习 第一节学习总结

#c进阶学习第一节#

##数据在内存中的存储
1.数据类型介绍
整型:字符类型char 短整型short 整型int 长整型long
浮点型:单精度浮点型float 双精度浮点型double
构造类型:数组 结构体 枚举 联合(共用体)
指针类型:int* pi ; char* pc ; float* pf; viod* pv;
空类型:表示无类型(空类型)

2.-------对于整型来说:数据存放在内存中都是存放的二进制补码形式,因为中央处理器只有加法器只能算加法 ----
二进制由符号位和数值位两部分组成,符号位为1表示“负”,为0表示“正”。
正数的原码,反码,补码都相同;
有符号数需要一定的计算
原码 到反码 符号位不变,数值位取反;
反码到补码 反码加1操纵。

3.----对于浮点型在内存的存储------
浮点数存储本质是对 S M E的存储
对于32位的浮点数n,最高的1bit是符号位S,接着的8位是指数位E,剩下的23位尾数就是有效数字M。
表达形式为 (-1)^ S * M *2^E
(-1)^ 表示符号位,s=0时,n为正数;s=1时,为负数;
M表示有效数字
2^E表示指数位
举例:十进制的5.0,二进制为101.0,化为科学表达式1.01 * 2^2
根据上面的格式 得出 s=0;m=1.01;e=2;
根据规则指数位要加上127 E占的8bit存的值就是127+2=129的二进制
m的有效数字就放到尾数,后面补0到23位即可
最后按 S+E+M
化为二进制为 0 10000001 1010 0000 0000 0000 0000 0000

4.大小端介绍及判断
大端存储模式:数据的低位保存在内存的高地址中,数据的高位保存在内存的低地址中。
小端存储模式:数据的高位保存在内存的高地址中,数据的低位保存在内存的低地址中。
大小端以结尾为单位
例如一个32bit的int型x,在内存中的地址为0x00001111,x的值为0x22223333
那么0x2222为高字节(高数据),0x3333为低字节(底数据)
若把0x3333放入0x1111为小端模式
把0x2222放入0x0000为大端模式

发布了29 篇原创文章 · 获赞 8 · 访问量 2017

猜你喜欢

转载自blog.csdn.net/qq_44785014/article/details/101548124
今日推荐