2017.11.27作业
来源:互联网 发布:mac pro配置 编辑:程序博客网 时间:2024/06/07 17:24
1.浮点数在内存当中是如何储存的?
对于大小为32-bit的浮点数(32-bit为单精度,64-bit浮点数为双精度,80-bit为扩展精度浮点数),
1、其第31 bit为符号位,为0则表示正数,反之为复数,其读数值用s表示;
2、第30~23 bit为幂数,其读数值用e表示;
3、第22~0 bit共23 bit作为系数,视为二进制纯小数,假定该小数的十进制值为x;
则按照规定,该浮点数的值用十进制表示为:
= (-1)^s * (1 + x) * 2^(e - 127)
(-1)^a*(1+c)*2^(b-127)
对于49E48E68来说,
1、其第31 bit为0,即s = 0
2、第30~23 bit依次为100 1001 1,读成十进制就是147,即e = 147。
3、第22~0 bit依次为110 0100 1000 1110 0110 1000,也就是二进制的纯小数0.110 0100 1000 1110 0110 1000,其十进制形式为0.78559589385986328125,即x = 0.78559589385986328125。
这样,该浮点数的十进制表示
= (-1)^s * (1 + x) * 2^(e - 127)
= (-1)^0 * (1+ 0.78559589385986328125) * 2^(147-127)
= 1872333
2.头文件是否区分大小写
Windows下的文件名是不区分大小写的。
3.如果有unsigned int两位相加分别注意什么?int与unsigned int相加时,应将int强制转换为unsigned int
两个兼容的不同类型的操作,哪个能表示更大的数就转为哪个类型。例如short+long,就要转为long;unsigned+signed,就要转为unsigned。
在32位机上
unsigned int 最大可表示2^32 - 1
int最大可表示2^31-1
这样int就转为了unsigned int,由于y<0,即y的最高位符号位是1,转为unsigned int后最高为不再是符号位,而是一个最高位的正数,于是两者相加就会是一个很大的正数了。
- 2017.11.27作业
- [2017.11.01]作业06
- 2017.11.2作业
- [2017.11.04]作业08
- 2017.11.3作业
- 2017.11.6作业
- 2017.11.7作业
- 2017.11.10作业
- 2017.11.13作业
- 2017.11.14作业
- 2017.11.14作业
- 2017.11.15作业
- [2017.11.16]作业10
- [2017.11.18]作业12
- 2017.11.21大作业
- [2017.11.26]作业14
- 2017.11.25作业
- 6/27作业:多态
- GreenDao数据库学习小结
- 【Scikit-Learn 中文文档】无监督降维
- 第十七篇 ContentProvider之访问其他程序中的数据
- 论文笔记:ImageNet Classification with Deep Convolutional Neural Networks
- 流氓并不可怕,就怕流氓有文化 -- 这是一个知识改变命运的例子
- 2017.11.27作业
- Brian模拟器的模拟加速——利用编译好的C代码(compiled C code)
- 复习计划
- [算法分析与设计] leetcode 每周一题: Surrounded Regions
- Spark官网链接
- 线性表的一些简单操作
- SpringBoot初使用:从Hello World开始
- Tomcat发布网站
- LeetCode--Find the Duplicate Number(查找重复数字)Python