A computer system that simulates a memory stack in a non-general purpose
register set in the computer's CPU. The computer system can use the
simulated memory stack to store a return address before jumping to a
subroutine or use the simulated stack to store a data value for subsequent
retrieval and use. The non-general purpose register set may include memory
type range registers (MTRRs). One of the MTRRs is designated as the stack
pointer register and is used to store a pointer index value which
identifies which of the other MTRR registers is associated with the top of
the simulated memory stack. The computer system preferably includes a
non-volatile memory, such as a ROM, which contains executable instructions
for implementing the simulated memory stack. The instructions provide for
incrementing and decrementing the pointer index value and writing to and
reading from the MTRR registers identified by the pointer index as
associated with the top of simulated stack. By using non-general purpose
registers to store data and return addresses, more general purpose
registers are available for other reasons. The computer system
advantageously permits the simulation of a conventional memory stack when
main memory is not available to provide the conventional memory stack.
Ein Computersystem, das eine Zweikanalsteuerung in einem nicht-allgemeinen Zweckregister simuliert, stellte in CPU des Computers ein. Das Computersystem kann die simulierte Zweikanalsteuerung benutzen, um eine Rücksprungadresse, bevor es zu einer Subroutine, zu speichern springt oder den simulierten Stapel zu benutzen, um einen Datenwert für folgende Wiederherstellung und Gebrauch zu speichern. Der nicht-allgemeine Zweckregistersatz kann Gedächtnisart Strecke Register (MTRRs) einschließen. Ein des MTRRs wird als das Stapelzeigerregister gekennzeichnet und wird verwendet, um einen Zeigerindexwert zu speichern, der kennzeichnet, das von den anderen MTRR Registern mit der Oberseite der simulierten Zweikanalsteuerung ist. Das Computersystem schließt vorzugsweise einen Permanentspeicher, wie ein ROM ein, das vollziehbare Anweisungen für das Einführen der simulierten Zweikanalsteuerung enthält. Die Anweisungen stellen für das Erhöhen und das Verringern des Zeigerindexwertes und das Schreiben zu und das Ablesen von den MTRR Registern zur Verfügung, die durch den Zeigerindex gekennzeichnet werden, wie verbunden mit der Oberseite des simulierten Stapels. Indem er verwendet, registriert nicht-allgemeiner Zweck, um Daten zu speichern und Rücksprungadressen, mehr universelle Register sind für andere Gründe vorhanden. Das Computersystem ermöglicht vorteilhaft die Simulation einer herkömmlichen Zweikanalsteuerung, wenn Hauptspeicher nicht vorhanden ist, die herkömmliche Zweikanalsteuerung zur Verfügung zu stellen.