百科问答小站 logo
百科问答小站 font logo



为什么欧洲分子生物实验室的DNA存储选择了三进制? 第1页

  

user avatar   q-mick 网友的相关建议: 
      

结论放前头,DNA储存选择三进制的原因是为了降低出错率。

(PS:这里的DNA储存是指电子计算机使用DNA作为储存介质的技术,也就是把DNA当硬盘用的技术,为避免误会故在此说明)

二进制的电子计算机有高电平低电平两种状态,而学过高中生物都知道,DNA由ATCG四种碱基组成,那么很自然会想DNA储存是不是就应该是用四进制呢(比如A代表0,C代表1,G代表2,T代表3)?这样可以最大化地提升数据密度而且可以跟普通计算机兼容,毕竟四进制跟二进制的互相转换是很快的。

但是DNA跟普通的闪存、磁盘是有很大区别的,DNA信息的读取是通过测序来完成的,而DNA有一个特性是当同样的碱基对连续出现时(也就是均聚物)会显著增加测序出错的概率。普通文件里面连续的0或者1是非常常见的,如果直接以四进制编码成DNA,会出现连续同样的碱基对,导致读取出错。

所以DNA储存使用了一种叫做“旋转编码(rotating code)”的编码方案(如下图所示)来避免相同碱基的连续出现。

简单来说,就是上一个碱基如果是A,那么下一个碱基只能是C、G、T,其中C代表0,G代表1,T代表2;如果上一个是C,下一个只能是G、T、A,其中G代表0,T代表1,A代表2,以此类推。以这种方式进行编码,任意一个碱基和前后的碱基都是不一样的,也就避免了均聚物的出现。但是这样一来,就只能同时使用四种碱基中的三种来表示状态,也就是最多只能用三进制。

下图是实际编码过程的示例。其中的Huffman code是用于二进制跟三进制转换的编码方式,与题目无关此处就不多做解释了。

文中图片均来自于参考文献。

参考文献:

Bornholt J, Lopez R, Carmean D M, et al. A DNA-based archival storage system[C]//Proceedings of the Twenty-First International Conference on Architectural Support for Programming Languages and Operating Systems. ACM, 2016: 637-649.




  

相关话题

  一个没有进化出视觉的生物,可以意识到光的存在吗? 
  3 月 14 日微软宣布比尔盖茨将退出董事会,会带来什么影响? 
  如何解读 2015 年诺贝尔生理学或医学奖?在对抗寄生虫病上的成就和影响有哪些? 
  鸟类的翅膀能在一定条件下重新演化为类似于其兽脚亚目恐龙祖先的有爪的前肢吗? 
  为什么编程语言中没有一种 if,来判断大概率为真(或假)的情况,来提升 CPU 分支预测的速度呢? 
  地球上有不存在蚊虫的地方么? 
  如何评价不认为C++三大特性是封装、继承、多态的程序员? 
  为什么葫芦兄弟是一条藤上结出来的,但是却表现出七种不同的性状? 
  自然界有哪些很美好的现象? 
  中国已有 18 例确认感染的「超级真菌」耳念珠菌是什么?威胁有多大?有爆发性流行的风险吗? 

前一个讨论
《地球脉动》里的雪崩的镜头是怎么拍的?
下一个讨论
从侵略者的角度拍抗日片会怎么样呢?





© 2024-12-22 - tinynew.org. All Rights Reserved.
© 2024-12-22 - tinynew.org. 保留所有权利