OH! Okay, that makes sense! Yeah, that is kind of vague though
So basically, it means:
00|00. . .
00|01. . .
00|10. . .
00|11. . .
Would all be literal mode (where the first two bits of the literal just
happen to be in the area that is otherwise part of the specifier), while
anything other than 0s in the first two bits would specify something else?
Gotcha!
Thanks so much!
On Jul 11, 2014 7:07 PM, "Paul Koning" <paulkoning at comcast.net> wrote:
On Jul 11, 2014, at 7:14 PM, Kevin Keith <krfkeith at gmail.com> wrote:
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?
The picture is a bit confusing. That field of 0 is 2 bits wide, leaving 6
bits for the literal. The reason the specifier is listed as ?0-3? is that
the addressing mode specifier is the top 4 bits. So what we have here is
that if the top 2 bits of the specifier are 0, you have literal mode, and
the literal is in the bottom 6 bits ? the bottom 2 bits of the mode
specifier combined with the 4 bits that are normally the register number.
paul