You are on page 1of 1

The address of any location within the 4K word (12-bit) address space where the machine was

reading instructions could be thought of as being divided into two parts, a 5-bit page number and a
7-bit page offset. This meant that the machine was always executing instructions from some
“current page” as determined by the uppermost 5 bits of current instruction's address. Therefore, if
the Page bit in the MRI instruction was set to '1', the lower 7 bits of any memory reference
instruction (MRI) would refer to a word within the same page as the instruction itself. And if the MRI
instruction's Page bit was set to '0', the instruction's lower 7 bits would always refer to a word in the
first page of the machine's memory, page zero.

This simple and economical solution was remarkably efficient. Data that needed to be accessed from
anywhere within a program could be placed in the machine's first 128 words (page zero) of memory
where any MRI instruction located anywhere could reference it. And data that was only being used
locally could be placed somewhere within the same page as the referencing code. And if page zero
were to fill-up with highly referenced data, a word in the current page could be used to point to
another word anywhere through the use of indirection.

You might also like