Thanks for the answers guys!
I was wondering if any of you VAX gurus might be able to clear up another
question that has been confusing me:
In the architecture manual, in the addressing mode summary table (it's
Table 2-2, on page 2-17, or page 66 on the bitsavers PDF) it says that the
literal addressing mode has specifiers 0-3, yet there appears to be only
one literal mode. The chart shows the format as being:
+-----+--------------+
| 0. | (literal) |
+-----+--------------+
My question is, can the operand specifier for literal mode really be 00,
01, or 10? And if so, why did the designers of the VAX waste the extra bit,
and bit and make literals 7-bits?
Please correct me if I'm missing anything obvious!
On Jul 11, 2014 8:14 AM, "Paul Koning" <paulkoning at comcast.net> wrote:
On Jul 11, 2014, at 5:37 AM, Eric Smith <spacewar at gmail.com> wrote:
On Fri, Jul 11, 2014 at 3:30 AM, Kevin Keith
<krfkeith at gmail.com> wrote:
> I've seen 16, 22, and 24 cited as the official number. The VAX
architecture
> manual seems to suggest 24. If the number is
indeed more than 16, how
are
> they encoded? Seeing as how the manual says 4
bits are used for
specifying
the
specific mode, and 4 for the register selection, and seems to imply
that the operand specifier is always a byte long.
IIRC, it's like the PDP-11, which only really had eight addressing modes,
but some were considered different modes when used with the program
counter
vs. a "normal" register.
Both VAX architecture books I have show that the number is 21. There are
13 ?general register? modes, and 8 more ?program counter? addressing modes.
It?s reasonable to do that, because from the programmer?s point of view,
the PC modes have distinct properties (like literal or absolute mode) even
though at the hardware level they are constructed out of the same machinery
as the general register modes. And yes, that same reasoning applies to the
PDP-11.
Interestingly enough, they don?t count another dozen or so modes for all
the various flavors of indexed mode ? where you get a second mode byte
after the initial one that has mode 4 (indexed). That fits, because
indexing doesn?t add another set of conceptually different modes.
paul