On 05/13/2018 05:30 PM, Noel Chiappa wrote:
From: Clem
Cole
Their is a open question about the need to
support self modifying code
too. I personally don't think of that as important as the need for
conditional instructions which I do think need to be there before you
can really call it a computer.
Here's one way to look at it: with conditional branching, one can always
write a program to _emulate_ a machine with self-modifying code (if that's
what floats your boat, computing-wise) - because that's exactly what older,
simple microcoded machines (which don't, of course, have self-modifying code
- their programs are in ROM) do.
Noel
Rewording that, as I recall from Computability Theory there are three
statements needed for Turing completeness:
1. S <- 0 S is some var
2. S <- S + 1
3. if S=0 goto L L is some line#
Beyond that everything else is icing on the cake. Kind of like needing
nothing more than a bunch of NAND gates to build a computer,
disregarding practicality...
Mike Markowski