![]() ![]() The hardware implementation of a Turing machine can be organized around a rule book and a notepad. Infinite memory isn’t possible in reality, but physical Turing machines can be built with enough memory for the task at hand. In Turing’s paper, his eponymous machine is an abstract concept with infinite memory. And as a final proof, my simulated processor would have to run Pac-Man, specifically the version of the game written for the Apple II computer. This legendary chip powered the computers I used in my youth. Rather than a billion-transistor behemoth, I thought I’d target the humble 8-bitĦ502 microprocessor. I decided I would build a physical Turing machine that could execute code written for a real processor. ![]() I scoured old textbooks and watched online lectures about theoretical computer science, but my knowledge didn’t advance. But I couldn’t see how such a machine-with its one-dimensional tape memory and ability to look at only one symbol on that tape at a time-could behave like a billion-transistor processor with hardware features such as an arithmetic logic unit (ALU), program counter, and instruction register. I had written C++ code to emulate the machine described in Turing’s 1936 paper, and could use it to decide, say, if a word was a palindrome. Despite being a geneticist who also majored in computer science, I was struggling to bridge two concepts-the universal Turing machine, the very essence of computing, and the von Neumann architecture, the basis of most modern CPUs. DNA-based computing, I had to confront a rather unpleasant truth. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |