ВУЗ:
Составители:
Рубрика:
146
ных разрядов двухбайтового слова, поместить (разумеется, не одновременно)
2
16
= 65536 адресов ячеек (слов) памяти.
Буферный регистр данных служит для временного хранения выбранного
из памяти слова перед выдачей его на внешнюю шину данных. Разрядность
этого регистра определяется количеством байтов информационного слова (для
хранения однобайтового слова необходим 8-разрядный регистр, двухбайтового
слова — 16-разрядный).
Счетчик команд — счетчик, содержащий адрес ячейки памяти, в которой
помещены байты выполняемой команды. Обычно команды определенной
программы находятся в последовательно расположенных ячейках памяти: для
однобайтовой команды число, указывающее адрес каждой последующей ячей-
ки, на единицу больше числа, отмечающего адрес данной ячейки. Поэтому пе-
реход к следующей команде достигается увеличением числа, содержащегося в
счетчике команд, на единицу (для возврата к предыдущей команде содержимое
счетчика должно быть уменьшено на единицу). В ходе выполнения текущей
команды, т. е. при передаче команды из памяти в микропроцессор, содержимое
счетчика команд увеличивается на единицу и образуется адрес очередной
команды. Вот почему говорят, что счетчик команд предназначен для хранения
адреса команды, следующей в программе по порядку за выполняемой
командой. Возможна ситуация, когда требуется после данной команды
использовать команду, хранимую не в соседней, а в другой, скажем удаленной,
ячейке памяти. Тогда по сигналу УУ в счетчик команд заносится адрес
удаленной ячейки.
Регистр команд принимает и хранит код очередной команды, адрес
которой находится в счетчике команд. По сигналу УУ в него передается из
регистра хранимая там информация.
Регистры стека делятся на стек и указатель стека. Название «стек»
происходит от английского слова steck, что в дословном переводе означает
«штабель» (дров), кипа (бумаг) и др. В микропроцессорах стек представляет
собой набор регистров, хранящих адреса (команды возврата — при обращении
к подпрограммам) или запоминающих состояния внутренних регистров (при
обработке прерываний). Этот набор организован таким образом, что слово
адреса или данных выбирается по принципу: «вошедший последним —
выходит первым» — подобно тому, как из штабеля дров первым берут полено,
положенное последним (в английском языке этот принцип определяется
выражением Last-in-First Out, и аббревиатура LIFO иногда встречается как
название стековой памяти). При записи в стек очередного слова все
находящиеся в нем слова смещаются на один регистр вниз (процесс такой
записи называют «проталкиванием»). После выборки слова из стека оставшиеся
слова сдвигаются на один регистр вверх (процесс считывания называют
«выталкиванием» вверх). Стек может быть выполнен не только на внутренних
регистрах микропроцессора, составляя его часть, но и находиться во внешнем
оперативном запоминающем устройстве, занимать там выделенную для него
ных разрядов двухбайтового слова, поместить (разумеется, не одновременно)
216 = 65536 адресов ячеек (слов) памяти.
Буферный регистр данных служит для временного хранения выбранного
из памяти слова перед выдачей его на внешнюю шину данных. Разрядность
этого регистра определяется количеством байтов информационного слова (для
хранения однобайтового слова необходим 8-разрядный регистр, двухбайтового
слова — 16-разрядный).
Счетчик команд — счетчик, содержащий адрес ячейки памяти, в которой
помещены байты выполняемой команды. Обычно команды определенной
программы находятся в последовательно расположенных ячейках памяти: для
однобайтовой команды число, указывающее адрес каждой последующей ячей-
ки, на единицу больше числа, отмечающего адрес данной ячейки. Поэтому пе-
реход к следующей команде достигается увеличением числа, содержащегося в
счетчике команд, на единицу (для возврата к предыдущей команде содержимое
счетчика должно быть уменьшено на единицу). В ходе выполнения текущей
команды, т. е. при передаче команды из памяти в микропроцессор, содержимое
счетчика команд увеличивается на единицу и образуется адрес очередной
команды. Вот почему говорят, что счетчик команд предназначен для хранения
адреса команды, следующей в программе по порядку за выполняемой
командой. Возможна ситуация, когда требуется после данной команды
использовать команду, хранимую не в соседней, а в другой, скажем удаленной,
ячейке памяти. Тогда по сигналу УУ в счетчик команд заносится адрес
удаленной ячейки.
Регистр команд принимает и хранит код очередной команды, адрес
которой находится в счетчике команд. По сигналу УУ в него передается из
регистра хранимая там информация.
Регистры стека делятся на стек и указатель стека. Название «стек»
происходит от английского слова steck, что в дословном переводе означает
«штабель» (дров), кипа (бумаг) и др. В микропроцессорах стек представляет
собой набор регистров, хранящих адреса (команды возврата — при обращении
к подпрограммам) или запоминающих состояния внутренних регистров (при
обработке прерываний). Этот набор организован таким образом, что слово
адреса или данных выбирается по принципу: «вошедший последним —
выходит первым» — подобно тому, как из штабеля дров первым берут полено,
положенное последним (в английском языке этот принцип определяется
выражением Last-in-First Out, и аббревиатура LIFO иногда встречается как
название стековой памяти). При записи в стек очередного слова все
находящиеся в нем слова смещаются на один регистр вниз (процесс такой
записи называют «проталкиванием»). После выборки слова из стека оставшиеся
слова сдвигаются на один регистр вверх (процесс считывания называют
«выталкиванием» вверх). Стек может быть выполнен не только на внутренних
регистрах микропроцессора, составляя его часть, но и находиться во внешнем
оперативном запоминающем устройстве, занимать там выделенную для него
146
Страницы
- « первая
- ‹ предыдущая
- …
- 122
- 123
- 124
- 125
- 126
- …
- следующая ›
- последняя »
