【C语言】计算机是如何存储整数和小数的?

13 篇文章 3 订阅
订阅专栏


前言

一条数轴上的数可以分为整数和小数,整数包括正整数、负整数和0,小数也包括正小数和负小数。

人类借助"+“、”-“、”."、"0~9"等符号以及约定俗成的摆放顺序来表示和存储不同的数字。

但计算机只认识0和1,要想在计算机中表示和存储不同的数字,就需要借助一套完整的存储规则。

对于不同类型的数字,存储规则也是不一样的。


一、正整数和0

正整数和0在计算机中的表示方法最为简单,就是转化的二进制数本身。

如3在计算机中就表示为0000_0011。

二、负整数

先说答案,负整数在计算机中采用补码表示。

转化过程:
先取得负整数绝对值的二进制形式(注意符号位为1),得到原码,按位取反(符号位不用管)得到反码,再加1即可得到补码。

举一个例子:
-7的原码为1000_0111,反码为1111_1000,补码为1111_1001。

问:为什么负数要以这样的形式存储在计算机中呢?

答:为了方便进行数值运算。如要实现-7+3 = -4,

在计算机中是这样进行的:

1111_1001 + 0000_0011 = 1111_1100

而-4的原码为1000_0100,反码为1111_1011,补码为1111_1100,这样就跟上面的计算结果相吻合了。

而如果不用补码,假设用1000_0111表示-7,其中左边第一位为符号位,那进行如下计算:

1000_0111 + 0000_0011 = 1000_1010,结果并不能表示-4。

这里涉及补码向十进制的转换,反过来就行:

-4的补码为1111_1100,先减一,为1111_1011,按位取反为1000_0100,即-4的原码。

三、小数

先说答案,现代计算机采用浮点数的方式保存小数。

但早期的计算机使用定点数的方式保存小数。

1、定点数

(1)什么是定点数

注意:定点数不是指一类数字,而是指一种小数在计算机中的存储方法。

定点数就是指小数点位置不动的小数存储方式。

定点数存储法其实就是将小数直接转化为二进制存储在计算机中。这跟正整数和0的存储方法是一样的,其实正整数和0也是按照定点数的方式存储的,只是此时小数部分全为0省略了而已。

如用8bit空间存储定点数,约定前4位为整数部分,后4位为小数部分。很显然这样小数点的位置就固定在了第3位和第4位之间。
在这里插入图片描述

这样做的好处就在于能一眼看出所要表示的数字。

比如这里就能一眼看出所要表达的小数为1011.0111

转化为十进制就是:
在这里插入图片描述

现在我们来分析定点数表示法的精度和范围。

(2)表示精度

首先精度在这里就是表示数学上的准确数值与计算机中实际存储的数值的误差。

为了说明这个误差有时候是不可避免的,我举一个例子:

数学上的π是一个无限不循环小数,要存储它理论上需要一块无限大的空间,但这是不可能的,计算机的存储空间是有限的,因此只能存储π的近似值,由此误差就产生了。

以上面的8bit空间为例,其中4位表示小数,因此这种情况下精度是1/16,即0.0625。

这里结合之前写的博文 【科普】精度和分辨率的区别与联系

可以知道,由于没有系统误差,因此这里的精度等价于分辨率。

这样就好理解了,4位小数的分辨率就是1/16。

(3)表示范围

如上所述的8bit空间可以存储的最大数字为1111_1111=8+4+2+1+1/2+1/4+1/8+1/16=15.9375

最小可以表示的正数为0000_0001=1/16=0.0625。

(4)优缺点

优点:

——简单易懂:定点数表示法相对于其他复杂的表示方法(如浮点数)来说更加简单和直观,易于理解和实现。

——固定精度:定点数具有固定的位数来表示整数和小数部分,因此精度是固定的。这在某些应用中可能是有益的,可以保持一致的精度。

——运算速度快:相比于浮点数运算,定点数运算通常更加高效,因为定点数的运算只涉及整数运算,无需处理浮点数的特殊规则。

缺点:

——固定精度:虽然固定精度是定点数的一个优点,但在某些情况下也可能成为缺点。当处理非常大或非常小的数值时,固定的精度可能不足以保持所需的准确性,导致舍入误差。

——难以表示极小或极大的数值:定点数通常不适用于表示极小或极大的数值范围。对于超出表示范围的数值,定点数无法准确表示,因此需要使用更高精度的表示方法。

这里可以举一个例子:

普朗克长度约等于1.6x10^-35米,即0.00000000000000000000000000000000016m,用定点数表示为(也就是转化为二进制):

0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011010100101011010010110110111111110000111101000001111。

大约需要20多个字节才能存储得下。

地球的质量5.965×10²⁴kg,即59650000000000000000000000千克,用定点数表示为(也就是转化为二进制):

11000101010111011000001111101010111100011100110010101101011101010000000000000000000000

需要十几个字节才能存储得下。

注意:这里用了一个整数的例子,既在说明极大的数字用定点数方式存储的缺点,也在说明整数也可以用定点数表示,只是此时全部位都用来表示整数。

可以发现在表示极大或极小的数字时,定点法非常消耗存储空间。

为了解决上述问题,更复杂的浮点数诞生了。

2、浮点数

(1)什么是浮点数

跟定点数一样,浮点数也不是指一类数字,它指的是一种小数在计算机中的存储方法。

浮点数就是指小数点位置会变动的小数存储方式。

浮点数表示法跟科学计数法很相似:
在这里插入图片描述
Float:要表示的小数
s:符号位,1表示负数,0表示正数
M:尾数
E:指数

(2)将小数转为浮点数

举两个例子:

–将15.625转化为浮点数
首先将其转化为二进制1111.101(这其实就是定点数表示法)
用浮点形式表示为:
在这里插入图片描述

–将0.01875转化为浮点数
首先将其转化为二进为0.0011
用浮点形式表示为:
在这里插入图片描述

可以看到小数点位置发生了变动,因此称为浮点数,浮即浮动,点即小数点

(3)浮点数在计算机中的存储格式

要存储一个浮点数,需要存储三个东西:符号、指数和尾数。

这里C语言提供了两种浮点数封装格式:float和double
在这里插入图片描述

其中符号位为0就表示正数,符号位为1就表示负数。

通过上面的例子可以发现尾数取值范围为 [1,2),也就是说尾数的整数部分一定为1,这样就没必要浪费空间存储整数部分了。对于1.111101只要存储后面的111101就行。因此计算机真正存储的只是尾数的后半部分。

指数部分可能为正数也可能为负数,如果再添加一个符号位按照补码的方式存储未免过于繁琐,这里聪明的科学家设计了一个巧妙的方法。

(4)浮点数中的指数部分如何存入计算机

先说答案,以float为例,在存入指数前,先加上127,这样即使指数为负数,加上127后也会变为正数。这样就不用再用补码表示负数了。

因此,读取指数时也要先减去127。

举2个例子:

15.625浮点形式为:
在这里插入图片描述
符号位为0,尾数为1.111101,只存储后面的111101,指数部分为3,加上127后为130,其二进制为1000_0010。

因此15.625在计算机中的最终存储格式为0_10000010_11110100000000000000000。

0.01875浮点形式为:
在这里插入图片描述
符号位为0,尾数为1.1,只存储后面的1,指数部分为-3,加上127后为124,其二进制为0111_1100。

因此0.01875在计算机中的最终存储格式为0_01111100_10000000000000000000000。

:为什么要加上127?
:这个偏移值是按照下式计算的:
在这里插入图片描述

如float的指数占用8bit,那么其偏移值就是
在这里插入图片描述

而double的指数占用11bit,其偏移值为
在这里插入图片描述

到此,我们可以发现,计算机中存储的尾数并不是真正的尾数;存储的指数也并不是真正的指数。

(5)表示精度

这里以0.35举例对比一下两种表示法的精度

用32bit来存储0.35,规定1位为整数部分,其余为小数部分,用定点法表示为0.0101100110011001100110011001100,再转回来就是0.34999999962747097,依然存在误差 0.00000000037252903。

将0.35首先转化为浮点数形式:1.01100110011001100110011001100*2^(-2),如果是float格式(同样是32bit),则尾数部分只能截取01100110011001100110011,指数部分为-2+127=125,即0111_1101
因此0.35的float格式为0_0111_1101_01100110011001100110011

再将其转化为十进制为1.01100110011001100110011*2^(-2),即0.3499999940395355,误差为0.0000000059604645,比用定点法表示的误差略大。

因此可以得出结论

同样的存储空间,浮点数相比定点数的表示精度更低。

这也就是浮点数能表示更大范围数字所付出的代价。

也就是说使用相同存储空间,定点数精度较高,但范围小;浮点数范围大,但精度较低。凡是皆有代价,不是吗?

(6)表示范围

在float的内存分布中,指数部分占据8位,可以表示0~255,由于进行了偏移,因此可以表示负数,能表示的指数范围为-127 ~ 128。

真的吗?

float实际只能存入的指数范围为-126 ~ 127。因为指数部分全为1或全为0用于表示其他特殊情况了。

在这里插入图片描述

1)规格化的值
一般情况下,即指数在(0,255)范围内时,转化规则为:

真实的尾数=1.存储的尾数
真实的指数=指数部分-偏移值

因此规格化的值能表示的范围为:
在这里插入图片描述

其中1.11…11中一共有24个1。

2)非规格化的值
当指数位全为0时,转化规则发生了变化:

真实的尾数=0.存储的尾数
真实的指数=1-偏移值

当尾数的所有二进制位都为 0 时,整个浮点数的值就为 0:
如果符号 sign 为 0,则表示 +0;
如果符号 sign 为 1,则表示 -0。

因此非规格化的值能表示的范围为:
在这里插入图片描述

这里有必要解释一下

偏移值为127,因此真实的指数为1-127=-126

指数部分是不变的,变的只有尾数部分,真实的尾数范围为0~0.11…11

因此非规格化的值能表示的范围为:
在这里插入图片描述
非规格化的值能表示的最接近0的值为:

在这里插入图片描述

在这里插入图片描述

3)无穷大
当指数全为1,且尾数部分为0,则表示无穷大。

s=0表示正无穷;s=1表示负无穷

4)NaN
当指数全为1,且尾数部分不为0,则表示是一个无效的数字NaN。

从上面的讨论可以看出,float的整体表示范围为:
0~+∞

其中规格化的值的表示范围为:
在这里插入图片描述
即:
在这里插入图片描述

非规格化的值表示范围为:
在这里插入图片描述
其中1.11…11*2^(-127)略小于 2 ^ (-126)

当符号位为1时,float表示负数,此时float表示的数字范围为
-∞~ 0

同样,double能表示的数字范围为:
在这里插入图片描述

(7)优缺点

优点:

——大范围:浮点数表示法可以表示非常大和非常小的数值范围,例如可以表示非常大的天文数字和非常小的微观粒子。
——硬件支持:现代计算机硬件对浮点数运算进行了优化,可以高效地执行浮点数计算。

缺点:
——精度损失:相同存储空间,定点数精度更高
——舍入误差:由于尾数位数的限制,进行浮点数计算时可能会发生舍入误差,特别是在连续的浮点数运算中,舍入误差可能逐渐积累导致结果偏离预期。
——复杂度和成本:浮点数计算的硬件实现相对复杂,同时存储和处理浮点数所需的内存和计算资源也更多,相比于定点数来说更加昂贵。

同样举上面的例子:

普朗克长度约等于1.6x10^-35米,用二进制表示为:

1.010101000100100001001001001100101101001011100111001*2^(-116)

由于float尾数最多只能存23位,因此尾数存储01010100010010000100100,指数为-116,加上127为11,即0000_1011,因此普朗克长度的float存储形式为:

0_0000_1011_01010100010010000100100

我们只用了32bit就存储了如此小的一个数,相比用定点数存储方式空间消耗量缩小了5倍以上。

但细心的读者也发现了,由于位数限制我在存储尾数的时候做了舍入,由此也造成了舍入误差。

其实除了部分以5结尾的小数外(如0.5,0.125),大部分小数都无法精确存储,0.35都不能精确存储。

四、答疑

1、定点数表示法已经被淘汰了吗?

定点数表示法在某些嵌入式系统、数字信号处理、特定硬件平台和低功耗设备等领域仍有应用,没有完全被浮点数表示法取代。

2、为什么说整数的存储其实也是用定点数存储格式?

对于short、int、 long这样的整数,我们可以将它们视为没有小数部分的定点数,即小数部分为零,小数点在末尾。这样,整数的存储可以看作是定点数存储格式的特例。

这样数字在计算机中的存储格式可以这样划分:

整数采用定点数格式存储;小数采用浮点数格式存储。

也正是因为浮点数和小数紧紧绑定在一起,因此可以视浮点数和小数这两个概念是等价的,可以不用区分。

但严格上来说,浮点数是小数在计算机中的存储格式。

3、硬件FPU单元

硬件浮点单元(Floating-Point Unit,FPU)是一种在计算机处理器中集成的硬件组件,专门用于执行浮点数运算。FPU提供了硬件级别的浮点数运算指令集和计算单元,能够高效地执行浮点数的加减乘除、平方根、取整等运算。

高级芯片中集成有FPU,如Intel的Core系列和AMD的Ryzen系列、智能手机SOC、GPU芯片、FPGA芯片、高端型号的STM32微控制器(如STM32F4和STM32H7系列)。

对于不带硬件FPU的STM32芯片,仍然可以进行浮点数运算,但是需要使用软件库来模拟浮点数运算,这被称为软件浮点数库。软件浮点数库通过软件算法实现浮点数运算,但相比硬件浮点单元,其性能较低。


参考资料

1、 https://fishc.com.cn/thread-67214-1-1.html
2、 http://c.biancheng.net/view/vip_1764.html
3、二进制小数转十进制 https://jisuan5.com/binary-to-decimal/

小数在内存中是如何存储
LanceHAHA2020的博客
01-28 1796
小数点如何保存在计算机
C语言浮点数存储方式
热门推荐
IOCode的博客
09-04 1万+
对于浮点类型的数据采用单精度类型(float)和双精度类型(double)来存储,float数据占用 32bit,double数据占用 64bit.其实不论是float类型还是double类型,在计算机内存中的存储方式都是遵从IEEE的规范的,float 遵从的是IEEE R32.24 ,而double 遵从的是R64.53。   无论是单精度还是双精度,在内存存储中都分为3个部分:  1) 符号
【C语言小数存储方式
crr411422的博客
03-08 1662
32位的浮点数:最高的一位是符号位s,接着的8位是指数E,剩下的23位为有效数字M64位的浮点数:最高的一位是符号位S,接着的11位是指数E,剩下的52位为有效数组M一个浮点数在计算机里是运用"科学计数法"的方式来表示的~用2的多少次方来表示,2^E (2的E次方)E越大,能表示的数据范围就越大,M越大,能表示的数据的精度就越高,所以一般在使用小数时建议double类型存储
c语言小数在内存中的存储
qq_33436509的博客
09-06 3403
转至:https://blog.csdn.net/tqs_1220/article/details/73550899 首先看float和double在内存中是怎么存储的? float:符号位(1位)+指数位(8位)+尾数位(23位) 范围:-2^-128 ~2^127  (-3.40E-38~3.40E+38) double:符号位(1位)+指数位(11位)+尾数尾(52位) 范围:-2...
小数计算机中如何存储
最新发布
m0_70830092的博客
07-05 131
1100.10001 ---------->0.110010001*2的4次方。0.56的二进制,不断乘以2,取整。第三步:计算机会把最终结果做一个规格化存储。第一步:先求出整数部分的二进制。第二步:求小数部分的二进制。知识1:小数计算机中如何存储
C语言整数转字符串和小数转字符串
10-07
C语言 整数转字符串和小数转字符串。
c语言实现两个整数的混合拼接
05-14
c语言实现两个整数的混合拼接,将两个int类型的数根据其数位不同拼接起来的函数实现方法
【c语言】输入一个浮点数(小数点后面有三位数),然后分别求出输出该数的整数部分和小数部分。
05-03
输入一个浮点数(小数点后面有三位数),然后分别求出输出该数的整数部分和小数部分。当时学习留的作业 发出来共享
c语言double类型默认输出小数几位
12-20
不像整数小数没有那么多幺蛾子,小数的长度是固定的,float 始终占用4个字节,double 始终占用8个字节。 c语言double类型默认输出几位小数? C语言中,输出double类型(双精度实型)以及float类型(单精度实型)时,...
(完整版)计算机二级C语言重点笔试复习资料.doc
11-17
"计算机二级C语言重点笔试复习资料" 本文档提供了计算机二级C语言的重点笔试复习资料,涵盖了C语言的基本知识点、数据类型、运算符、控制结构、函数、数组、指针、结构体、文件输入/输出等方面的知识点。 【考点1...
C语言---计算机小数存储
一念之间、
06-21 4965
今天在一个老师讲的C语言视频中学到了小数计算机中的存储方式,特此来分享一下,同时感谢老师的讲解。          在计算机整数存储是大多数人能够轻易理解得,比如在数据宽度为1个字节时,如果整数表示无符号数时就是0--15.如果整数用作有符号数时:0000--01111代表十进制的0--7。而1000--1111表示从(-8)--(-1)。然而计算机存储数据的方式都是一样的,并没有区分有符
计算机小数如何储存,小数在内存中是如何存储的?
weixin_30537231的博客
07-28 5547
小数在内存中是如何存储的?文本关键字:小数、float、double、浮点数、精度一、IEEE 754(二进制浮点数算术标准)在学习进制转换时,我们了解到:我们经常使用的十进制数是转换为二进制进行存储的,只需要按照顺序将转换后的结果放在对应的位置上就行了。其实小数存储也是基于二进制的,不过由于小数整数部分和小数部分组成,为了方便表示和比较,会使用另外的方式来存储。IEEE 754是最广泛使用的...
小数计算机中的存储方式
行仔ovo的博客
08-17 5305
文章目录0. 小数计算机中的存储1. 定点数2. 浮点数2.1 科学计数法2.2 浮点数的存储2.3 浮点数的精度损失 0. 小数计算机中的存储 两种方法: 定点 浮点 1. 定点数 顾名思义,小数点的位置固定的。 也就是说,用固定数量的bit存储整数部分,也用固定数量的bit存储小数部分,另外再用一个bit存储符号位。 计算时,将三个部分拼接起来,加个小数点即可。 优点:小数点位置固定,方便计算。 缺点:表示输的范围受限。 2. 浮点数 浮点数在计算机中的存储依赖科学计数法。 2.1 科学计数法
小数计算机存储形式
个人主页
11-11 1341
4.25转为二进制的过程:拆分为整数部分和小数部分,整数部分为4,小数部分为0.25。4转二进制为:1000.25转二进制为:0.01将两个二进制相加就是:100.01,所以4.25的转为二进制就是100.010.25转二进制的过程:0.25*2=0.5,取整数为00.5*2=1.0,取整数为1这时小数部分为0时结束,0.25的二进制的小数部分就是01。19.625转为二进制过程:19转二进制为:100110.625转二进制的过程:0.625*2=1.25,取整数部分 1。
C/C++中float和double的存储结构
陈庆霆技术专栏
07-05 1万+
在C/C++中float是32位的,double是64位的,两者在内存中的存储方式和能够表示的精度均不同,目前C/C++编译器标准都遵照IEEE制定的浮点数表示法来进行float,double运算。 无论是float还是double,在内存中的存储主要分成三部分,分别是: (1)符号位(Sign):0代表正数,1代表负数 (2)指数位(Exponent):用于存储科学计数法中的指数部分,并且
c语言小数如何存储,怎么学C语言小数在内存中怎么存储,你以为是只是教科书上说的那些?...
weixin_28829173的博客
05-17 396
考试也要结束了,那些想学习编程的人想学习C语言的人,也可以开始行动了。我会每天更新一篇文章,用来讲解c语言中隐匿的知识点,一些极其重要,却很少被入门学习者学习到的知识点。假如看了我的文章后还有些的地方不太了解的都可以关注我,然后私信问我,我会做有空的时候给你解答,下面开始进入正题。前面在介绍整型做内存里怎么存储的时候说到了,计算机只认识二进制,然而把小数换成二进制放到内存里,需要的字节也大的吓人。...
小数在内存中究竟是如何存储的(C语言代码详细讲解 1)
~晨曦静竹~的博客
09-25 3791
小数在内存中是如何存储的,揭秘诺贝尔奖级别的设计(长篇神文 1)   小数在内存中是以浮点数的形式存储的。浮点数并不是一种数值分类,它和整数小数、实数等不是一个层面的概念。浮点数是数字(或者说数值)在内存中的一种存储格式,它和定点数是相对的。 C语言使用定点数格式来存储 short、int、long 类型的整数,使用浮点数格式来存储 float、double 类型的小数整数小数在内存中的存储格式不一样。 我们在学习C语言时,通常认为浮点数和小数是等价的,并没有严格区分它们的概念,这也并没有影响到我们的
小数在内存中究竟是如何存储的(C语言代码详细讲解 3)
~晨曦静竹~的博客
09-25 1199
小数在内存中是如何存储的,揭秘诺贝尔奖级别的设计 IEEE 754 标准   浮点数的存储以及加减乘除运算是一个比较复杂的问题,很多小的处理器在硬件指令方面甚至不支持浮点运算,其他的则需要一个独立的协处理器来处理这种运算,只有最复杂的处理器才会在硬件指令集中支持浮点运算。省略浮点运算,可以将处理器的复杂度减半!如果硬件不支持浮点运算,那么只能通过软件来实现,代价就是需要容忍不良的性能。 PC 和智能手机上的处理器就是最复杂的处理器了,它们都能很好地支持浮点运算。   在六七十年代,计算机界对浮点数的处理比
C/C++——小数在内存中的存储方式
weixin_47586883的博客
10-25 2505
小数存储方式分为定点数存储和浮点数存储,但是根据IEEE 754 标准,现在用的编译器都是浮点数存储的。 首先所有的数据都要先转化成二进制数才能进行存储,但是在转换的过程中会遇到一个问题,小数部分转换成二进制使用“乘二取整法”(就是不断乘以 2,直到小数部分为 0),一个有限位数的小数并不一定能转换成有限位数的二进制,只有末位是 5 的小数才有可能转换成有限位数的二进制,其它的小数都不行。这就造成了转化出来的截取的二进制小数最后一位精度是不确定的。 定点数存储,即小数点固定。 用4个字节(32位)来存储
C语言分解小数整数小数部分
03-10
C语言可以使用modf函数将小数分解为整数小数部分。例如: ```c #include <stdio.h> #include <math.h> int main() { double num = 3.1415926; double int_part, frac_part; frac_part = modf(num, &int_part); printf("整数部分:%lf,小数部分:%lf\n", int_part, frac_part); return ; } ``` 输出结果为: ``` 整数部分:3.000000,小数部分:.141593 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • 【科普】精度和分辨率的区别与联系 20034
  • 【C语言】形参实参以及参数传递 11746
  • 【模电知识总结】MOS管 9405
  • 【模电知识总结】三极管 8758
  • 【科普】BCD码 7413

分类专栏

  • C语言总结 13篇
  • 模电 3篇
  • 科普 4篇
  • 芯片使用指南 3篇
  • 数据结构与算法 2篇
  • 算法
  • VS2019 3篇
  • STM32 8篇
  • VS Code 1篇
  • FreeRTOS 2篇
  • 数电

最新评论

  • 【芯片应用】DAC8554

    lyflyf6666: 讲的非常好!,感谢感谢

  • 【芯片应用】DAC8554

    薛定e: 大佬,那个dac register能不能具体讲讲结构表情包

  • 【C语言】形参实参以及参数传递

    随便写写的萌新: 写得不错

  • 【C语言】形参实参以及参数传递

    yangzuhao2020: 写的太棒了!

  • 【模电知识总结】MOS管

    CN1号: 好吧 原来是阈值电压的简写 懂了

大家在看

  • 利用telnet向163邮件服务器提交邮件 173
  • Sass详解
  • Java中的Stream API及其应用
  • gdb调试iperf3 2130
  • 分布式锁的几种形式以及优缺点

最新文章

  • 【C语言】关键字
  • 【其它】玩一玩无线网桥PicoStation M2
  • 【芯片应用】PA93
2023年3篇
2022年38篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

两个鬼故事琉璃免费观看电视剧全集西瓜起睿名湄公河在我国境内的名称是什么男孩国学起名字大全公司八字起名子窃听风云3粤语先进基层党组织刷ip工具女儿姓氏郑 起名凶鸟猎食图谱数字城堡劲舞源源辅助都市游龙葫芦兄弟高清下载男孩鸿字起名高档汽车美容店起名取名姓陈的女孩起名字红色通缉令在线观看工程材料公司起名dota2控制台刘姓八字起名新生婴儿起名字2020年商标起名网免费取名高字辈起名大全金三角电影供应链物流公司起名网亚洲古典另类欧美在线肉类公司起名为新生儿起名adultflashgame少年生前被连续抽血16次?多部门介入两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”淀粉肠小王子日销售额涨超10倍高中生被打伤下体休学 邯郸通报单亲妈妈陷入热恋 14岁儿子报警何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言张家界的山上“长”满了韩国人?男孩8年未见母亲被告知被遗忘中国拥有亿元资产的家庭达13.3万户19岁小伙救下5人后溺亡 多方发声315晚会后胖东来又人满为患了张立群任西安交通大学校长“重生之我在北大当嫡校长”男子被猫抓伤后确诊“猫抓病”测试车高速逃费 小米:已补缴周杰伦一审败诉网易网友洛杉矶偶遇贾玲今日春分倪萍分享减重40斤方法七年后宇文玥被薅头发捞上岸许家印被限制高消费萧美琴窜访捷克 外交部回应联合利华开始重组专访95后高颜值猪保姆胖东来员工每周单休无小长假男子被流浪猫绊倒 投喂者赔24万小米汽车超级工厂正式揭幕黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发当地回应沈阳致3死车祸车主疑毒驾恒大被罚41.75亿到底怎么缴妈妈回应孩子在校撞护栏坠楼外国人感慨凌晨的中国很安全杨倩无缘巴黎奥运校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变王树国卸任西安交大校长 师生送别手机成瘾是影响睡眠质量重要因素国产伟哥去年销售近13亿阿根廷将发行1万与2万面值的纸币兔狲“狲大娘”因病死亡遭遇山火的松茸之乡“开封王婆”爆火:促成四五十对奥巴马现身唐宁街 黑色着装引猜测考生莫言也上北大硕士复试名单了德国打算提及普京时仅用姓名天水麻辣烫把捣辣椒大爷累坏了

两个鬼故事 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化