Article View: alt.folklore.computers
Article #4304Re: Just *how* hard is a GO playing program?
From: m... Mark Crispin
Date: Wed, 05 Sep 1990 23:27
Date: Wed, 05 Sep 1990 23:27
46 lines
3382 bytes
3382 bytes
In article <25...@boulder.Colorado.EDU> a...@boulder.Colorado.EDU (Alan T. Krantz) writes:
>>If you want another shot, here's a "simple" one. Put a PUSH in
>>register 0, and start the CPU at 0. What happens?
>
>That's an easy one - if I understand the question correctly.
If so, then solve it. I specifically stated that it was either a bare
machine or a user program on an operating system with no funny OS
stuff in the address space (such as TOPS-10 JOBDAT). Under Tenex or
TOPS-20, the only special address space location was the LUUO handler
at location 40 and 41.
>This is a simple trivia question - but what does the following code do:
>
> move 1,[movei 1,@1]
> jrst 1
After executing the JRST (an absolute jump to a memory location, in
this case register 1), the processor will hang in an indirect address
loop trying to resolve @1 until such time as it is stopped or an
interrupt occurs. @X says "take the contents of memory location X and
do a new address calculation on it." Since the address calculation
can involve a new indirect (you could chain indirects on a PDP-10),
you have a circular chain. The MOVEI is never executed since an
address calculation is always resolved first before any instruction
decoding or execution. The effect would have been the same if you had
stored an invalid op-code instead of a MOVEI.
Once, a professor (who shall remain nameless) insisted that the PDP-10
at Stevens Institute of Technology was broken, and demanded that it be
repaired. For some bizarre reason, he had a program which had an
indirect address chain that was about ten thousand references long.
As the operating system was guaranteed to get a clock interrupt every
1/60 of a second (every 17 microseconds) and the memory was relatively
slow (I think it was 2 millisecond memory), there was no way that the
CPU could resolve the address before the clock ticked. It did not
store the intermediate results of an address calculation, so when the
program was resumed it would start the calculation from the beginning!
_____ | ____ ___|___ /__ Mark ("Gaijin") Crispin "Gaijin! Gaijin!"
_|_|_ -|- || __|__ / / R90/6 pilot, DoD #0105 "Gaijin ha doko?"
|_|_|_| |\-++- |===| / / Atheist & Proud "Niichan ha gaijin."
--|-- /| |||| |___| /\ (206) 842-2385/543-5762 "Chigau. Gaijin ja nai.
/|\ | |/\| _______ / \ M...@CAC.Washington.EDU Omae ha gaijin darou"
/ | \ | |__| / \ / \"Iie, boku ha nihonjin." "Souka. Yappari gaijin!"
Hee, dakedo UNIX nanka wo tsukatte, umaku ikanaku temo shiranai yo.
Technical Details
Message-ID:
<7124@milton.u.washington.edu>Path:
mbox-mo1.pugleaf.net!gmdzi!unido!mcsun!uunet!samsung!dali.cs.montana.edu!milton!Tomobiki-Cho!mrcReferences:
<1990Aug30.123237.17904@nmt.edu> <1547@front.se> <1990Sep3.053502.18445@cbnewsh.att.com> <7041@milton.u.washington.edu> <25672@boulder.Colorado.EDU> <7082@milton.u.washington.edu> <25683@boulder.Colorado.EDU>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!gmdzi!unido!mcsun!uunet!samsung!dali.cs.montana.edu!milton!Tomobiki-Cho!mrc From: m...@Tomobiki-Cho.CAC.Washington.EDU (Mark Crispin) Newsgroups: alt.folklore.computers Subject: Re: Just *how* hard is a GO playing program? Message-ID: <7124@milton.u.washington.edu> Date: 5 Sep 90 23:27:53 GMT References: <1990Aug30.123237.17904@nmt.edu> <1547@front.se> <1990Sep3.053502.18445@cbnewsh.att.com> <7041@milton.u.washington.edu> <25672@boulder.Colorado.EDU> <7082@milton.u.washington.edu> <25683@boulder.Colorado.EDU> Sender: ne...@milton.u.washington.edu Organization: Mendou Zaibatsu, Tomobiki-Cho, Butsumetsu-Shi Lines: 46 Posted: Thu Sep 6 00:27:53 1990 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit