In the book The Art of Computer Programming Volume 1, third edition, I'm having some hard time understanding the meaning of the following MIX assembly language instruction: ENT1 *, which appears on page 189 of the book.
(p.189) For example, if we wanted to make the calling sequence for
MAXNbeJMP MAXN CON nthen the subroutine could be written as follows:
MAXN STJ *+1 ENT1 *
What I've figured out so far is that the following line
MAXN STJ *+1
stores the address of the memory where the constant n is stored to the [0:2] field of the memory location where the instruction ENT1 * is stored.
Therefore, I'm guessing here that the following line
ENT1 *
is supposed to load the value of [0:2] field of the memory location where the instruction ENT1 * is stored to register I1.
However, the meaning of asterisk(*), as stated in the text book is:
(p.146) An asterisk (read "self") refers to the location of the line on which it appears.
So, shouldn't ENT1 * just store the address of the memory location where the instruction ENT1 * is stored to register I1?


