DNA遺傳指令,引導生物發育與生命機能運作。(與計算機指令功能相似)


我不是生物學專業。

DNA的作用方式是轉錄成mRNA,而mRNA則是把氨基酸合成蛋白質的一級結構(氨基酸序列),然後再經過蛋白質摺疊過程形成蛋白質的三級結構(立體)。

蛋白質摺疊是一個複雜過程,模擬需要大量運算,所以有了Folding@home這個世界上最大型的分散式計算項目之一。如果說「將DNA運行起來」是去到這步驟,那麼現在的技術應該是成熟的。但什麼時候去合成那種蛋白質,各種蛋白質又如何在環境下運作,又是另一些複雜的問題。若要從蛋白質這樣的分子層面去模擬蛋白質以及環境的交互作用,以構成生物的運作,即使是最簡單的單細胞生物似乎也暫時不可能。但是可以從分子層面抽象成更高層去作有限度的模擬。

計算機的指令是人為規定的,生物的密碼是需要更多的科學家去解密的

計算機指令當初這樣設計就是為了更好的去模擬圖靈機,我們了解它的細枝末節,即使我們自己不了解,也有人了解,至少intel了解。

但生物體則不然,它就在那裡,美妙的運轉。我們對它的認知依然非常淺薄,遠遠沒有達到可以模擬它來運行「生命」的程度。

具體複雜在哪裡?

DNA到蛋白質十分漫長,除了高中的轉錄和翻譯,還會有非常多的修飾和加工存在,考慮到近期很多microRNA機制的發現,這個調控網路變得異常的複雜。簡單來說,就是針對每一個不同的蛋白質,按照當前的眼光看,它們的調控網路都是有差別的,而且相互之間是有很多干擾的,與此同時,生物體的容錯性其實並不強,偶然的個別核苷酸錯誤,就會導致很大的問題。因此,指令集要模擬的對象尚不很清楚,怎麼設計ISA 搞不定,因此目前它是不可能實現的。

題主覺得它們很像的原因只是在於「編碼」這種思想:尤其是密碼子表,簡直是編碼(mRNA-&>aa)的典型範例,沒有歧義,並且有開始的特定碼(起始密碼子),還有用於控制終止的編碼(終止密碼子),並且有一些公用的序列,也就是常說的簡併性。

對比計算機的指令體系:比如我們現在ICS課程寫的模擬器的一小部分就要模擬IA-32指令集,同樣有mov、and、add等基本的指令,也有控制轉移的指令,以及函數調用的控制指令。如此繁複的指令體系,於是人為設置了opcode、modR_M、sib等等位元組來標識一個指令,這樣做的目的還是:沒有歧義,並且很多指令公用其中的一些位元組,比如of位元組對應很多的指令啊,根據mod的不同域的不同取值有不同的解釋啦等。

上面這兩段很像吧,其實像的只是編碼這種思想。模擬起來是一點都不像的,因為IA-32我們問的再詳細都可以去查手冊(好吧,這個手冊好多錯誤。。。),但生物體的模擬是沒有手冊的。

其實,這個問題很好理解,假想你還是當初初學編程的那個你,你看著你的編譯器美妙的一次次運行這hello world而不亦樂乎,然後老師給你的作業是「模擬它的運行」,寫一個編譯器+模擬器+操作系統,將你的hello world人為的模擬再跑起來。

當然,對學編程而言,解決上面的問題也就是幾年時間。但對於科研之路而言,需要更多的人類的智慧和時間加入進去。


能啊。理論上講,我們需要一台準確率達到100%的DNA合成儀和DNA測序儀。現在常用的ASCII碼有256個,而鹼基只有4種,4的五次方等於256。所以我們可以採用連續四個鹼基代表一個ASCII碼的方式來寫程序。那麼「hello world!」就會變成48個鹼基的DNA序列。然後我們用DNA合成儀將它合成出來。然後用測序儀讀取這一段DNA序列,同時按照之前的語法編譯成ASCII的程序即可。-----------------------------

當然,DNA合成儀和DNA測序儀的準確率很難達到100%,要是發生了移碼,最後編譯得到的代碼就和原始代碼相差很多。同時,考慮到單鹼基的合成/讀取錯誤會導致單個ASCII碼發生錯誤。要解決這些問題,就會涉及到信息學和密碼學裡面的一些專業知識,我不是特別懂。但是我確定,在將系統設計的更加複雜一點後,這些問題一定能解決。比如最簡單的防止移碼的辦法就是每兩個ASCII碼之間設計一個標準的分隔符,使用某個稀有鹼基(如次黃嘌呤),讀取並編譯的時候對兩個相鄰分隔符之間的四個鹼基進行操作即可,如果某個單位區間發生移碼,不會對區間外的其他內容產生干擾。

----------------------------我一直認為基因組序列可能就是某種代碼,而生物體就是編譯機器的複合體吧。簡單想像一下,編譯蛋白質的基因序列可能只是整個程序裡面有print的那行,而那各種各樣的MOTIF可能完成的是for、next、if、else抑或僅僅只是一個花括弧,而某些特定的鹼基修飾可能就是分隔符。等等。

兄dei,在我高中時我也有和你一樣的想法,當時學生物,沒接觸過計算機,我就在想計算機如果可以模擬DNA的編譯及f轉譯的過程那麼計算機是否可以模擬生命,或者創造生命!(計算機可以下崽),現在我學計算機了但是又無從下手!畢竟這不是一個領域可以做的事!還有就是用什麼驅動DNA自動編譯或轉譯!!!so如果有興趣可以私聊我咱們一起吹吹牛!!!


非生物學專業,計算機編程看過一些書。一樓已經說得很清楚,dna作為遺傳物質主要影響轉錄mrna,然後根據密碼子和鹼基互補配對翻譯成氨基酸,影響了氨基酸合成。多種氨基酸在位置種類上的多變形成多態在二維上表現出多種結構,從而表現出不同的豐富的功能。說錯了,是肽鏈。然後肽鏈在空間上多種變化,最後形成蛋白質,表現出不同的性狀。這是一個很複雜的過程,分子的合成是一方面,另一個方面是一個細胞的dna有多個這樣的鹼基對,而且細胞的dna在同種生物同一個體的表達也是不同的。而計算機之於這樣的邏輯,免不了循環判斷,這些對於人類目前來說,我想難度極大。
你說的計算機應該是生物計算機,就是…細胞…
推薦閱讀:
相关文章