Sujet : Re: high-school presentation, suggestions?
De : kludge (at) *nospam* panix.com (Scott Dorsey)
Groupes : comp.miscDate : 24. Mar 2024, 17:50:41
Autres entêtes
Organisation : Former users of Netcom shell (1989-2000)
Message-ID : <utpll1$db1$1@panix2.panix.com>
References : 1 2 3 4
Stefan Ram <
ram@zedat.fu-berlin.de> wrote:
I couldn't find a definition from Tanenbaum on the question that
includes the word "automaton", but here's a quotation from Tanenbaum:
The definition I was thinking of was the mathematical one, and you don't
really want to give it to high school students. Your best bet is probably
to define it by example... showing a computer with a handful of instructions
and how it pulls an instruction pointed to by the program counter from memory,
decodes that instruction (and you can show a code card with the instruction
set), executes it, and then goes on to the next instruction.
When I was a student everybody liked to use the PDP-8 for this since it
only has seven instructions. Personally I like to use the 8051 since
although it's more complex, they are in keyboards and microwave ovens and
all kinds of different places where people don't expect computers to be.
You could use a PIC too if you liked.
You could talk about turing machines and turing equivalence but it would
take so much handwaving to do it in such a short time that it wouldn't be
worth the trouble to my mind.
|For the purposes of this paper, we can define a computer as
|any machine equivalent to a Turing machine.
"A Critique of Pure Computation: Against Strong AI and
Computationalism", Causey (2022?).
Right, but once you do this, then you have to explain a Turing machine and
that's harder than explaining a simple computer. Yes, we did see how to
factor a number with a Turing machine in college because gus baird was that
kind of guy, but this is not something to talk about in a one-hour school
lecture.
It's a turing machine, it's a pushdown automaton, it's a conventional
computer... no need to go through the proofs.
The cool thing is that the combination of conditionals and branches allow
you to "make decisions" and this is what makes algorithms possible. A
machine that just went down a tape executing instructions one at a time
until the tape ended might be useful, but far less useful than a real
computer.
This is easiest to show by example.
The computer is just a box of nand gates, and yet it can do all this
fantastic stuff. But it's really just nand gates inside there. Isn't
that great?
I could do everything with a single instruction and no decoding too.
Or with a stack-based machine. Or with a VLIW machine. But they all
can be made to do the exact same thing in the end and they all can be
made from boxes of nand gates.
--scott
-- "C'est un Nagra. C'est suisse, et tres, tres precis."