百科问答小站 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.




  

相关话题

  苏联三进制计算机Сетунь到底是怎样一个计算机? 
  如何看待有些人认为计算机专业是「拿命换钱」? 
  为何有的动物可怜有的就不可怜了? 
  为什么这个世界是混沌无序的,而人们发现的用于解释这个世界的原理却都是有序简洁而优美的? 
  如何让电脑有种很高端的感觉? 
  有机体到底包不包括病毒? 
  化学类专业真的就这么这么坑? 
  为什么Linux用户用sudo命令而不直接使用root用户? 
  唐老鸭是什么鸭? 
  在英国试验有效率达到 89% 的 Novavax 新冠疫苗,与其他公司的疫苗相比有何不同? 

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





© 2024-11-24 - tinynew.org. All Rights Reserved.
© 2024-11-24 - tinynew.org. 保留所有权利