Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > alt.sys.pdp10 > #9950
| From | Rich Alderson <news@alderson.users.panix.com> |
|---|---|
| Newsgroups | alt.sys.pdp10 |
| Subject | Accumulator naming |
| Date | 2026-07-29 18:10 -0400 |
| Organization | PANIX Public Access Internet and UNIX, NYC |
| Message-ID | <mddqzklxxa5.fsf_-_@panix5.panix.com> (permalink) |
| References | <87wlulwflh.fsf@atr2.ath.cx> <mdd33x9cbvq.fsf@panix5.panix.com> <87se579i01.fsf@atr2.ath.cx> |
jayjwa <jayjwa@atr2.ath.cx.invalid> writes:
> Rich Alderson <news@alderson.users.panix.com> writes:
>> TDNE is a hardware instruction.
> Noted. It would be easier to see their usage if the accumulators had names
> that didn't exactly resemble numbers ( for example: rax, rbx, rcx, etc)
> instead of 1, 2, 3, etc. I had misunderstood what that instuction operated
> on.
So this has been percolating for a few days. I finally went off and found a
book on X86/X64 assembly language programming to be certain, because I haven't
looked at the 8080/Z80 architecture in a very very long time.
To begin with, the accumulators in the PDP-6 and the first model of the PDP-10
(the KA-10 processor) were an add-on feature. If they were not present in the
system, the first 16(10) locations in memory were used in any instruction that
required an accumulator. When they *are* present, they are treated as part of
the program memory (mapped to locations 0-17(8)) and function the same way.
Why shouldn't they then be referred to by numeric addresses just like the rest
of memory?
Secondly, unlike the named registers in the X86/X64 architecture, there are no
special case uses in the hardware for any accumulator. As I noted elsewhere,
in older Tops-10 programs, the standard stack pointer is AC 1, including in the
monitor; TENEX and therefore TOPS-20 declared the standard to be AC 17. Any AC
can be used for any purpose as long as the operating environment is programmed
to expect the assignments used.
Contrast the X86/X64, where the multiplication operation *requires* that the
multiplier be present in REAX, rather than in whichever register might be
convenient to the programmer.
The only accumulator that is special to the hardware is AC 0, which cannot be
used as an index. This is clearly to be expected because 0000(2) in the index
field of the instruction is the signal to the hardware that no index is in use.
This restricts the programmer to only 15 possible index registers, which is
probably enough for anyone's purposes. IMAO.
--
Rich Alderson news@alderson.users.panix.com
Audendum est, et veritas investiganda; quam etiamsi non assequamur,
omnino tamen proprius, quam nunc sumus, ad eam perveniemus.
--Galen
Back to alt.sys.pdp10 | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Fizz Buzz jayjwa <jayjwa@atr2.ath.cx.invalid> - 2026-07-23 17:39 -0400
Re: Fizz Buzz Rich Alderson <news@alderson.users.panix.com> - 2026-07-23 23:19 -0400
Re: Fizz Buzz jayjwa <jayjwa@atr2.ath.cx.invalid> - 2026-07-25 12:00 -0400
Re: Fizz Buzz Rich Alderson <news@alderson.users.panix.com> - 2026-07-25 18:05 -0400
Re: Fizz Buzz jayjwa <jayjwa@atr2.ath.cx.invalid> - 2026-07-26 11:12 -0400
Accumulator naming Rich Alderson <news@alderson.users.panix.com> - 2026-07-29 18:10 -0400
Re: Accumulator naming scott@slp53.sl.home (Scott Lurndal) - 2026-07-30 15:14 +0000
Re: old architectures, was Accumulator naming John Levine <johnl@taugh.com> - 2026-07-30 20:40 +0000
Re: Accumulator naming Rich Alderson <news@alderson.users.panix.com> - 2026-07-30 18:41 -0400
Re: Accumulator naming jayjwa <jayjwa@atr2.ath.cx.invalid> - 2026-07-30 11:24 -0400
Re: Accumulator naming scott@slp53.sl.home (Scott Lurndal) - 2026-07-30 16:03 +0000
Re: Accumulator naming Rich Alderson <news@alderson.users.panix.com> - 2026-07-30 18:56 -0400
Re: Accumulator naming cross@spitfire.i.gajendra.net (Dan Cross) - 2026-07-30 23:48 +0000
Re: Accumulator naming John Levine <johnl@taugh.com> - 2026-07-31 01:31 +0000
Re: Accumulator naming cross@spitfire.i.gajendra.net (Dan Cross) - 2026-07-31 02:52 +0000
Re: Accumulator naming John Levine <johnl@taugh.com> - 2026-07-31 03:36 +0000
Re: Accumulator naming Lars Brinkhoff <lars.spam@nocrew.org> - 2026-07-31 13:40 +0000
Re: Accumulator naming Lars Brinkhoff <lars.spam@nocrew.org> - 2026-07-31 13:35 +0000
the Ten Heavenly Stems (was Re: Accumulator naming) Kragen Javier Sitaker <kragen@canonical.org> - 2026-09-11 16:07 -0300
Re: the Ten Heavenly Stems (was Re: Accumulator naming) Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-09-14 01:12 +0800
Re: the Ten Heavenly Stems (was Re: Accumulator naming) Kragen Javier Sitaker <kragen@canonical.org> - 2026-09-14 14:40 -0300
Re: the Ten Heavenly Stems (was Re: Accumulator naming) scott@slp53.sl.home (Scott Lurndal) - 2026-09-14 18:09 +0000
Re: the Ten Heavenly Stems (was Re: Accumulator naming) quadibloc@invalid.com (John Savard) - 2026-10-26 03:00 +0000
Re: Fizz Buzz "Kerr-Mudd, John" <admin@127.0.0.1> - 2026-08-21 13:27 +0100
csiph-web