第8章线性分组码.ppt

上传人:李司机 文档编号:6619183 上传时间:2023-11-19 格式:PPT 页数:73 大小:1.08MB
返回 下载 相关 举报
第8章线性分组码.ppt_第1页
第1页 / 共73页
第8章线性分组码.ppt_第2页
第2页 / 共73页
第8章线性分组码.ppt_第3页
第3页 / 共73页
第8章线性分组码.ppt_第4页
第4页 / 共73页
第8章线性分组码.ppt_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《第8章线性分组码.ppt》由会员分享,可在线阅读,更多相关《第8章线性分组码.ppt(73页珍藏版)》请在三一办公上搜索。

1、第8章 线性分组码,本章节教学内容、基本要求、重点与难点,1.教学内容:线性分组码的概念。一致监督方程、一致监督矩阵和线性分组码的生成矩阵。线性分组码的最小距离、检错和纠错能力。线性分组码的编码方法与译码。线性分组码的性能分析。汉明码。2.教学基本要求:掌握线性分组码的编码方法和译码方法。了解一致监督方程和一致监督矩阵的求法。理解最小距离与检错和纠错能力的关系。了解汉明码的特点。3.重点与难点:监督矩阵和生成矩阵。线性分组码的最小距离、检错和纠错能力。译码的性能。,线性分组码的编码过程分为两步:把信息序列按一定长度分成若干信息码组,每组由 k 位组成;编码器按照预定的线性规则(可由线性方程组规

2、定),把信息码组变换成 n 重(nk)码字,其中(nk)个附加码元是由信息码元的线性运算产生的。信息码组长 k 位,有 2k 个不同的信息码组,则应该有 2k 个码字与它们一一对应。,概念,线性分组码:通过预定的线性运算将长为 k 位的信息码组变换成 n位的码字(nk)。由 2k 个信息码组所编成的 2k个码字集合,称为线性分组码。码矢:一个 n 重的码字可以用矢量来表示C=(Cn1,Cn1,C1,C0)所以码字又称为码矢。(n,k)线性码:信息位长为 k,码长为 n 的线性码。编码效率/编码速率/码率/传信率:R=k/n。它说明了信道的利用效率,R是衡量编码性能的一个重要参数。,一致监督方程

3、:编码就是给已知信息码组按预定规则添加监督码元,以构成码字。在 k 个信息码元之后附加 r(r=nk)个监督码元,使每个监督元是其中某些信息元的模2和。例k=3,r=4构成(7,3)线性分组码。设码字为(C6,C5,C4,C3,C2,C1,C0)C6,C5,C4为信息元,C3,C2,C1,C0为监督元,每个码元取“0”或“1”监督元可按下面方程组计算,一致监督方程和一致监督矩阵,一致监督方程/一致校验方程:确定信息元得到监督元规则的一组方程称为监督方程/校验方程。由于所有码字都按同一规则确定,又称为一致监督方程/一致校验方程。由于一致监督方程是线性的,即监督元和信息元之间是线性运算关系,所以由

4、线性监督方程所确定的分组码是线性分组码。,信息码组(101),即C6=1,C5=0,C4=1由线性方程组得:C3=0,C2=0,C1=1,C0=1即信息码组(101)编出的码字为(1010011)。其它7个码字如表。,一致监督矩阵:将监督方程写成矩阵形式,得:H CT=0T或 C HT=0 CT、HT、0T分别表示C、H、0的转置矩阵。,系数矩阵 H 的后四列组成一个(44)阶单位子阵,用 I4 表示,H 的其余部分用 P 表示,推广到一般情况:对(n,k)线性分组码,每个码字中的 r(r=nk)个监督元与信息元之间的关系可由下面的线性方程组确定,令系数矩阵为 H,码字行阵列为 C,一致监督方

5、程和一致监督矩阵,一致监督矩阵特性:对H 各行实行初等变换,将后面 r 列化为单位子阵,于是得到下面矩阵(行变换所得方程组与原方程组同解)。监督矩阵H 的标准形式:后面 r 列是一单位子阵的监督矩阵H。H 阵的每一行都代表一个监督方程,它表示与该行中“1”相对应的码元的模2和为0。,H 的标准形式还说明了相应的监督元是由哪些信息元决定的。例如(7,3)码的H 阵的第一行为(1011000),说明此码的第一个监督元等于第一个和第三个信息元的模2和,依此类推。H 阵的 r 行代表了 r 个监督方程,也表示由H 所确定的码字有 r 个监督元。为了得到确定的码,r 个监督方程(或H 阵的r 行)必须是

6、线性独立的,这要求H 阵的秩为 r。若把H 阵化成标准形式,只要检查单位子阵的秩,就能方便地确定H 阵本身的秩。,线性码的封闭性:线性码的封闭性:线性码任意两个码字之和仍是一个码字。证明:若 U 和 V 为线性码的任意两个码字,故有HUT=0T,HVT=0T那么 H(U+V)T=H(UT+VT)=HUT+HVT=0T即 U+V 满足监督方程,所以 U+V 一定是一个码字。一个长为 n 的二元序列可以看作是GF(2)(二元域)上的 n 维线性空间中的一点。长为 n 的所有 2n 个矢量集合构成了GF(2)上的 n 维线性空间Vn。把线性码放入线性空间中进行研究,将使许多问题简化而比较容易解决。(

7、n,k)线性码是 n 维线性空间Vn中的一个 k 维子空间 Vk。,线性分组码的生成矩阵,线性分组码的生成矩阵:在由(n,k)线性码构成的线性空间 Vn 的 k 维子空间中,一定存在 k 个线性独立的码字:g1,g2,gk,。码 CI 中其它任何码字C都可表示为这 k 个码字的线性组合,即,G中每一行 gi=(gi1,gi2,gin)都是一个码字;对每一个信息组m,由矩阵G都可以求得(n,k)线性码对应的码字。生成矩阵:由于矩阵 G 生成了(n,k)线性码,称矩阵 G 为(n,k)线性码的生成矩阵。(n,k)线性码的每一个码字都是生成矩阵 G 的行矢量的线性组合,所以它的 2k 个码字构成了由

8、 G 的行张成的 n 维空间Vn的一个 k 维子空间 Vk。,线性系统分组码:通过行初等变换,将 G 化为前 k 列是单位子阵的标准形式,线性系统分组码:用标准生成矩阵 Gkn 编成的码字,前面 k 位为信息数字,后面 r=nk 位为校验字,这种信息数字在前校验数字在后的线性分组码称为线性系统分组码。当生成矩阵 G 确定之后,(n,k)线性码也就完全被确定了,只要找到码的生成矩阵,编码问题也同样解决了。,例:(7,4)线性码的生成矩阵为,生成矩阵与一致监督矩阵的关系:由于生成矩阵G的每一行都是一个码字,所以G 的每行都满足HrnCTn1=0Tr1,则有HrnGTnk=0Trk 或 GknHTn

9、r=0kr线性系统码的监督矩阵 H 和生成矩阵 G 之间可以直接互换。,例:已知(7,4)线性系统码的监督矩阵为,对偶码:一个(n,k)线性码 CI,如果以G 作监督矩阵,而以H 作生成矩阵,可构造另一个(n,nk)线性码CId,称码CId为原码的对偶码。(7,3)码的监督矩阵H(7,3)是(7,4)码的生成矩阵G(7,4)(7,4)码的监督矩阵 H(7,4)是(7,3)码的生成矩阵 G(7,3),(n,k)线性码的编码就是根据线性码的监督矩阵或生成矩阵将长为 k 的信息组变换成长为 n(nk)的码字。利用监督矩阵构造(7,3)线性分组码的编码电路:设码字矢量为C=(C6 C5C4C3C2C1

10、C0)码的监督矩阵为,线性分组码的编码,根据方程组可直接画出(7,3)码的并行和串行编码电路。,汉明距离、汉明重量和汉明球汉明距离:在(n,k)线性码中,两个码字 U、V 之间对应码元位上符号取值不同的个数,称为码字 U、V 的汉明距离。例:(7,3)码的两个码字 U=0011101,V=0100111之间第2、3、4和6位不同。因此,码字 U 和 V 的距离为4。线性分组码的一个码字对应于 n 维线性空间中的一点,码字间的距离即为空间中两对应点的距离。因此,码字间的距离满足一般距离公理:,线性分组码的最小距离、检错和纠错能力,最小距离dmin:在(n,k)线性码的码字集合中,任意两个码字间距

11、离的最小值,叫做码的最小距离。若C(i)和C(j)是任意两个码字,则码的最小距离表示为 码的最小距离是衡量码的抗干扰能力(检、纠错能力)的重要参数。码的最小距离越大,码的抗干扰能力就越强。汉明球:以码字C为中心,半径为 t 的汉明球是与 C 的汉明距离 t 的向量全体集合 SC(t)任意两个汉明球不相交最大程度取决于任意两个码字之间的最小汉明距离dmin。,汉明重量W:码字中非0码元符号的个数,称为该码字的汉明重量。在二元线性码中,码字重量就是码字中“1”的个数。最小重量Wmin:线性分组码CI中,非0码字重量的最小值,叫做码CI的最小重量:Wmin=minW(V),VCI,V0最小距离与最小

12、重量的关系:线性分组码的最小距离等于它的最小重量。证明:设线性码CI,且UCI,VCI,又设UV=Z,由线性码的封闭性知,ZCI。因此,d(U,V)=W(Z),由此可推知,线性分组码的最小距离必等于非0码字的最小重量。,最小距离与检、纠错能力:一般地说,线性码的最小距离越大,意味着任意码字间的差别越大,则码的检、纠错能力越强。检错能力:一个线性码能检出长度l 个码元的任何错误图样,称码的检错能力为 l。纠错能力:线性码能纠正长度t 个码元的任意错误图样,称码的纠错能力为 t。,最小距离与纠错能力:(n,k)线性码能纠 t 个错误的充要条件是码的最小距离为 证明:设发送的码字为V;接收的码字为R

13、;U为任意其它码字;则矢量V、R、U间满足距离的三角不等式,d(R,V)+d(R,U)d(U,V)又设信道干扰使码字中码元发生错误的实际个数为 t,且tt d(R,V)tt 由于d(U,V)dmin=2t+1,代入上式得:d(R,U)d(U,V)d(R,V)=2t+1tt,上式表明:如果接收码字 R 中错误个数 tt,那么接收码字 R 和发送码字 V 间距离t,而与其它任何码字间距离都大于 t,按最小距离译码把R译为V。此时译码正确,码字中的错误被纠正。,最小距离与检错能力:(n,k)线性码能够发现 l 个错误的充要条件是码的最小距离为 dmin=l+1 或 l=dmin1 证明:设发送的码字

14、为 V;接收的码字为 R;U 为任意其它码字;则矢量V、R、U间满足距离的三角不等式,d(R,V)+d(R,U)d(U,V)又设信道干扰使码字中码元发生错误的实际个数为 l,且ll d(R,V)ll 由于d(U,V)dmin=l+1,代入上式得:d(R,U)d(U,V)d(R,V)=l+1l0,上式表明:由于接收码字 R 与其它任何码字 U 的距离都大于0,则说明接收字 R 不会因发生 l 个错误变为其它码字,因而必能发现错误。,最小距离与检、纠错能力:(n,k)线性码能纠 t 个错误,并能发现 l 个错误(lt)的充要条件是码的最小距离为 dmin=t+l+1 或 t+l=dmin1 证明:

15、因为dmin2t+1,根据最小距离与纠错能力定理,该码可纠 t 个错误。又因为dminl+1,根据最小距离与检错能力定理,该码有检 l 个错误的能力。纠错和检错不会发生混淆:设发送码字为 V,接收字为 R,实际错误数为 l,且 tt+1t 因而不会把 R 误纠为 U。,几何意义:,当(n,k)线性码的最小距离 dmin 给定后,可按实际需要灵活安排纠错的数目。例如,对 dmin=8 的码,可用来纠3检4错,或纠2检5错,或纠1检6错,或者只用于检7个错误。,伴随式和错误检测:用监督矩阵译码:接收到一个码字 R 后,检验 HRT=0T 是否成立:HRT=0T是否成立是检验码字出错与否的依据。若关

16、系成立,则认为 R 是一个码字;否则判为码字在传输中发生了错误;伴随式/监督子/校验子:S=RHT或ST=HRT。如何纠错?设发送码矢 C=(Cn1,Cn2,C0)信道错误图样为 E=(En1,En2,E0),其中Ei=0,表示第i位无错;Ei=1,表示第i位有错。i=n1,n2,0。,线性分组码的伴随式,接收码字 R=(Rn1,Rn2,R0)=C+E=(Cn1+En1,Cn2+En2,C0+E0)求接收码字的伴随式(接收码字用监督矩阵进行检验)ST=HRT=H(C+E)T=HCT+HET由于HCT=0T,所以 ST=HET设H=(h1,h2,hn),其中hi表示H的列。代入上式得到,总结:伴

17、随式仅与错误图样有关,而与发送的具体码字无关,即伴随式仅由错误图样决定;伴随式是错误的判别式:若S=0,则判为没有出错,接收码字是一个码字;若S0,则判为有错。不同的错误图样具有不同的伴随式,它们是一一对应的。对二元码,伴随式S是H 阵中与错误码元对应列之和。,例:(7,3)码接收矢量 R 的伴随式计算设发送码矢C=1010011,接收码字R1010011,R与C相同。,若接收码字中有一位错误,当码元错误多于1个时,伴随式计算电路:伴随式的计算可用电路来实现。以(7,3)码为例:设接收字为R=(R6R5R4R3R2R1R0),伴随式为根据上式可画出伴随式计算电路,见下页。,最佳译码准则(最大后

18、验概率译码MAP)通信是一个统计过程,纠、检错能力最终要反映到差错概率上。对于FEC方式,采用纠错码后的码字差错概率为pwe,p(C):发送码字C 的先验概率p(C/R):后验概率若码字数为 2k,对充分随机的消息源有p(C)=1/2k,所以最小化pwe等价为最小化p(CCR),又等价为最大化p(C=CR);,线性分组码的译码,由贝叶斯公式:对于 BSC 信道:最大化后验概率p(C=CR)等价于最大化似然函数p(RC)最大化p(RC)又等价于最小化 d(R,C),所以使差错概率最小的译码是使接收向量 R 与输出码字 C 距离最小的译码。,标准阵列译码码矢参数发送码矢:取自于 2k 个码字集合C

19、;接收矢量:可以是 2n 个 n 重中任一个矢量。译码方法把 2n 个 n 重矢量划分为 2k 个互不相交的子集,使得在每个子集中仅含一个码矢;根据码矢和子集间一一对应关系,若接收矢量 Rl 落在子集 Dl中,就把 Rl 译为子集 Dl 含有的码字 Cl;当接收矢量 R 与实际发送码矢在同一子集中时,译码就是正确的。标准阵列:是对给定的(n,k)线性码,将 2n 个 n 重划分为 2k 个子集的一种方法。,标准阵列构造方法先将 2k 个码矢排成一行,作为标准阵列的第一行,并将全0码矢C1=(000)放在最左面的位置上;然后在剩下的(2n2k)个 n 重中选取一个重量最轻的 n 重 E2 放在全

20、0码矢 C1 下面,再将 E2 分别和码矢 相加,放在对应码矢下面,构成阵列第二行;在第二次剩下的 n 重中,选取重量最轻的 n 重 E3,放在 E2 下面,并将 E3 分别加到第一行各码矢上,得到第三行;,继续这样做下去,直到全部 n 重用完为止。得到下页表格所示的(n,k)线性码的标准阵列。,标准阵列的特性:定理:在标准阵列的同一行中没有相同的矢量,而且 2n 个 n 重中任一个 n 重在阵列中出现一次且仅出现一次。证明:因为阵列中任一行都是由所选出某一 n 重矢量分别与 2k 个码矢相加构成的,而 2k 个码矢互不相同,它们与所选矢量的和也不可能相同,所以在同一行中没有相同的矢量;在构造

21、标准阵列时,是用完全部 n 重为止,因而每个 n 重必出现一次;接下页,每个n重只能出现一次。假定某一 n 重 X 出现在第 l 行第 i 列,那么 XEl+Ci,又假设 X 出现在第 m 行第 j 列,那么 XEm+Cj,ll)的第 一个元素,而按阵列构造规则,后面行的第一个元素是前面行中未曾出现过的元素,这就和阵列构造规则相矛盾。,线性码纠错极限定理:二元(n,k)线性码能纠 2nk 个错误图样。这 2nk 个可纠的错误图样,包括0矢量在内,即把无错的情况也看成一个可纠的错误图样。证明:(n,k)线性码的标准阵列有 2k 列(和码矢量相等),2n/2k=2nk行,且任何两列和两行都没有相同

22、的元素。陪集:标准阵列的每一行叫做码的一个陪集。陪集首:每个陪集的第一个元素叫做陪集首。每一列包含 2nk 个元素,最上面的是一个码矢,其它元素是陪集首和该码矢之和,例如第 j 列为接下页,若发送码矢为 Cj,信道干扰的错误图样是陪集首,则接收矢量 R 必在 Dj 中;若错误图样不是陪集首,则接收矢量 R不在 Dj 中,则译成其它码字,造成错误译码;当且仅当错误图样为陪集首时,译码才是正确的。可纠正的错误图样:这 2nk 个陪集首称为可纠正的错误图样。,线性码纠错能力与监督元数目的关系:一个可纠 t 个错误的线性码必须满足 上式中等式成立时的线性码称为完备码。即证明(接下页)对于纠一个错误的(

23、n,k)线性码,必须能纠正 个错误图样,因此,对纠两个错误的(n,k)线性码,必须能纠 个错误图样,所以依此类推,一个纠 t 个错误的(n,k)线性码必须满足对于完备码,由码的纠错能力所确定的伴随式数恰好等于可纠的错误图样数,所以完备码的(nk)个监督码元得到了充分的利用。,完备译码:(n,k)线性码的所有 2nk 个伴随式,在译码过程中若都用来纠正所有小于等于 个随机错误,以及部分大于 t 的错误图样,则这种译码方法称为完备译码。限定距离译码:任一(n,k)线性码,能纠正 个随机错误,如果在译码时仅纠正 t t 个错误,而当错误个数大于t时,译码器不进行纠错而仅指出发生了错误,称这种方法为限

24、定距离译码。,从多维矢量空间的角度看完备码:假定围绕每一个码字 Ci 放置一个半径为 t 的球,每个球内包含了与该码字汉明距离小于等于 t 的所有接收码字 R 的集合;这样,在半径为 t=(dmin1)/2 的球内的接收码字数是:因为有 2k 个可能发送的码字,也就有2k 个不相重叠的半径为t的球。包含在2k个球中的码字总数不会超过2n个可能的接收码字。于是一个纠 t 个差错的码必然满足不等式如果上式中等号成立,表示所有的接收码字都落在 2k 个球内,而球外没有一个码,这就是完备码。,完备码特性:围绕 2k 个码字,汉明距离为t=(dmin1)/2的所有球都是不相交的,每一个接收码字都落在这些

25、球中之一,因此接收码与发送码的距离至多为 t,这时所有重量t的错误图样都能用最佳(最小距离)译码器得到纠正,而所有重量t+1的错误图样都不能纠正。,例:对纠一个错误的(7,4)汉明码,可见,(7,4)汉明码是一个完备码。所有汉明码都是完备码(满足2nk=2m=n+1)。,标准阵列译码=最小距离译码法=最佳译码法 陪集首是可纠正的错误图样,为了使译码错误概率最小,应选取出现概率最大的错误图样作陪集首;重量较轻的错误图样出现概率较大,所以在构造标准阵列时是选取重量最轻的 n 重作陪集首;这样,当错误图样为陪集首时(可纠的错误图样),接收矢量与原发送码矢间的距离(等于陪集首)最小;因此,选择重量最轻

26、的元素作陪集首,按标准阵列译码就是按最小距离译码;所以标准阵列译码法也是最佳译码法。,在标准阵列中,一个陪集的所有 2k 个 n 重有相同的伴随式,不同的陪集伴随式互不相同。证明:设 H 为给定(n,k)线性码的监督矩阵,在陪集首为 El 的陪集中的任意矢量 R 为 R=El+Ci,i=1,2,2k其伴随式为 S=RHT=(El+Ci)HT=ElHT+CiHT=ElHT上式表明:陪集中任意矢量的伴随式等于陪集首的伴随式。即同一陪集中所有伴随式相同。不同陪集中,由于陪集首不同,所以伴随式不同。,结论:任意 n 重的伴随式决定于它在标准阵列中所在陪集的陪集首。标准阵列的陪集首和伴随式是一一对应的,

27、因而码的可纠错误图样和伴随式是一一对应的,应用此对应关系可以构成比标准阵列简单得多的译码表,从而得到(n,k)线性码的一般译码步骤:计算接收矢量 R 的伴随式 ST=HRT;根据伴随式和错误图样一一对应的关系,利用伴随式译码表,由伴随式译出 R 的错误图样 E;将接收码字减错误图样,得发送码矢的估值 C=RE。上述译码法称为伴随式译码法或查表译码法。,线性分组码一般译码器结构:这种查表译码法具有最小的译码延迟和最小的译码错误概率,原则上可用于任何(n,k)线性码。,常见的线性分组码,奇偶监督码汉明码BCH码RS码CRC码,奇偶监督码,采用奇偶校验原理。只能检错,不能纠错。只能检查出某一分组的单

28、个错误或奇数个错误,而不能发现偶数个错误。最小码距为2。水平奇偶监督码水平垂直奇偶监督码。,汉明码是汉明于1950年提出的纠一个错误的线性码。由于它编码简单,因而在通信系统和数据存储系统中得到广泛应用。汉明码的结构:纠一个错误的线性码,其最小距离 dmin=3;监督矩阵任意两列线性无关;没有全0的列。监督元个数 nk=m;H 阵中每列有 m个元素,至多可构成 2m1种互不相同的非0列。对于任意正整数 m3,汉明码的结构参数为码长:n=2m1信息位数:k=2mm1监督位数:nk=m码的最小距离:dmin=3(t=1),汉明码(Hamming码),汉明码监督矩阵构成的两种方式构成 H 阵的标准形式

29、,H=Q Im,其中 Im 为 m 阶单位子阵,子阵 Q 是构造 Im 后剩下的列任意排列。用这种形式的 H 阵编出的汉明码是系统码。按m重表示的二进制顺序排列。按这种形式 H 阵编出的码是非系统码。当发生可纠的单个错误时,伴随式为 H 阵中对应的列,所以伴随式的二进制数值就是错误位置号,有时这种码译码比较方便。由于汉明码可纠的错误图样数为,BCH码(Bose-Chaudhuri-Hocquenghem码),是线性分组码中循环码的一种重要子类,有严密的代数结构,是目前研究较多、应用较广的一种线性分组码。具有纠正多个随机错误的能力。根据对纠错能力的要求,选择参数,并根据代数结构构造编译码算法。如

30、:n=7,k=4,t=1;n=15,k=7,t=2;n=31,k=16,t=3;n=127,k=50,t=13。,RS码(Reed-Solomon码),是一种非二进制的BCH码。即:在(n,k)RS码中,输入信息被分成km比特一组,每组包括k个符号,每个符号由m比特组成。纠正t个符号错误的RS码参数如下:码长 n=2m-1符号,或m(2m-1)比特信息段 k符号,或km比特监督段 n-k=2t符号,或m(n-k)比特最小码距 d=2t+1符号,或m(2t+1)比特,CRC码(循环冗余校验码),是一种循环码,用于检错。具有很强的检错能力,而且编码器及译码器都很容易实现。因而在数据通信中得到广泛应

31、用。可以检测出的错误如下:(1)突发长度n-k的突发错误;(2)大部分突发长度n-k+1的错误;(3)大部分突发长度n-k+1的错误;(4)所有与许用码组的码距dmin-1的错误;(5)所有奇数个随机错误。,(1)扩展/Extending和打孔/Puncturing扩展:保持码字数 k 不变,增加冗余位数以增加码长。打孔:保持 k 不变,减小冗余位。可以认为是扩展的逆过程。(2)增广/Augmenting和删信/Expunging/Expurgating增广:保持 n 不变,增加码字数目 k。删信:保持 n 不变减小 k。(3)延长/Lengthening和缩短/Sportening延长:同时增加 k 和 n。缩短:同时减小 k 和 n。,由已知码构造新码的方法,(7,4,3)汉明码的各种修正关系如图。,(4)乘积/Product 消息作为阵列,分别进行行列编码。(5)级联/Concatenating对消息编码后的码字再进行一次编码。级联编码的第一次所用码称外码;第二次所用码称内码。级联编码常用于既有随机差错又有突发差错的信道编码。(6)交织/Interleauing交织编码分为分组交织和卷积交织两种。如果交织编码所用的(n,k)码可以纠正 t 个随机差错,那么交织深度为 D 的交织编码可以纠正 Dt 长的突发错误。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号