3 ms·
Before I knew much about transistors etc, I used to wonder why only 2 logic levels (0 and 1) are generally used in computers. I know there are some exceptions b
by foobarbecue 8y ago
Before I knew much about transistors etc, I used to wonder why only 2 logic levels (0 and 1) are generally used in computers. I know there are some exceptions but it turns out binary works best with the hardware we have available. I'm guessing that four logic levels works best with ribosomes and all the other cellular machinery. Or maybe it's hard to have codons longer than 3, so the number of DNA bases is set by the number of required amino acids to sustain life?
- naasking 8y agoIIRC, optimal information density is achieved by an alphabet the size of Euler's number [1]. So trinary might actually be theoretically optimal since we have to be discrete. But there are pragmatic considerations to consider that make trinary difficult. Since most of computation currently happens with voltage, that's a one-dimensional quantity that we would have to divide into 3 levels to discriminate "bits". This requires more sensitivity and precision than merely two levels. (Edit: although maybe not, some historical computers were trinaryband reportedly more efficient; time will tell I suppose). It would be easier to achieve trinary if we had two axes with which to encode, but that intrinsically yields quaternary; maybe that's how DNA operates. [1] It is via radix economy: https://en.wikipedia.org/wiki/Radix_economy#Radix_economy_of_different_bases https://en.wikipedia.org/wiki/Radix_economy#Radix_economy_of...
- gus_massa 8y agoThere are 20 aminoacids encoded in the DNA, and you need an "stop" code (the "start" code is reused when it is in the middle). There are some tricks to transform the 20 aminoacids in other aminoacids after they are in the proteins, so that increase the number of used aminoacids a little https://en.wikipedia.org/wiki/Non-proteinogenic_amino_acids https://en.wikipedia.org/wiki/Non-proteinogenic_amino_acids And there are small variations of the genetic code that include other aminoacids https://en.wikipedia.org/wiki/Genetic_code#Alternative_genetic_codes https://en.wikipedia.org/wiki/Genetic_code#Alternative_genet.... So the total number of aminoacids used in the wild is approximately 30. With 4 bases and 3 bases per codon, you can encode up to 64, so there is some redundancy and room for a few new aminoacids. You don't want too much redundancy, because you have to synthetize the tRNA. And in principle you need a tRNA for each possible codon, so you want to minimize the number of codons. (Actually, the genetic code has some patters and instead of 63 tRNA the cells have at most 41 tRNA. https://en.wikipedia.org/wiki/Transfer_RNA https://en.wikipedia.org/wiki/Transfer_RNA I guess that increasing the number of bases makes it more easy to make mistakes, and more difficult for the enzymes to distinguish them.