Стековая память состоит из ячеек, связанных друг с другом разрядными цепями передачи слов. Обмен информацией всегда выполняется только через верхнюю ячейку – вершину стека. При записи нового слова (команды, числа, символа) все ранее записанные слова сдвигаются на одну ячейку вниз, а новое слово помещается на вершину стека. Считывание возможно только с вершины стека и производится с удалением или без удаления считываемого слова. Такую память часто называют памятью типа LIFO (Last – In First – Out последним вошел, первым вышел). Аппаратная реализация стека сложна и обычно стек моделируют программно. При этом в качестве стека обычно используется часть адресной памяти.
6. Декомпозиция вычислительного устройства
Как показал академик В. М. Глушков, в любом устройстве обработки цифровой информации можно выделить операционный и управляющий блоки. Такой подход упрощает проектирование, а также облегчает понимание процесса функционирования вычислительного устройства. Декомпозиция цифрового вычислительного устройства поясняется на рис. 1.2.
Рис.1.2 Операционный и управляющий блоки цифрового устройства
Операционный блок состоит из регистров, сумматоров и других узлов, производящих прием из внешней среды и хранение кодов слов, их преобразование и выдачу во внешнюю среду результата преобразования, а также выдачу в управляющий блок и внешнюю среду оповещающих сигналов, принадлежащих к множеству
U = { u1 , u2 , ... , un } ,
о знаках и особых значениях операндов, их отдельных разрядов, особых значениях промежуточных и конечных результатов операции (например, равенство нулю результата операции и др.).
Процесс функционирования во времени устройства обработки цифровой информации состоит из последовательности тактовых интервалов, в которых операционный блок производит определенные элементарные операции преобразования слов. Операционный блок выполняет некоторый набор элементарных преобразований информации, например таких, как передача слова из одного в другой, взятие обратного кода, сдвиг и др. Выполнение этих элементарных операций инициируется поступлением в операционный блок соответствующих управляющих сигналов из некоторого множества сигналов
V = { v1 , v2 , ... , vm } .
Элементарная функциональная операция, выполняемая за один тактовый интервал и приводимая в действие управляющим сигналом, называетсямикрооперацией.
Управляющий блок (или управляющий автомат) вырабатывает распределенную во времени последовательность управляющих сигналов
vt1 , vt2 , ... , vtn (vtj !!!!!! V) ,
порождающих в операционном блоке нужную последовательность микроопераций.
Последовательность управляющих сигналов определяется сигналами Z кода операции, поступающими в управляющий блок извне, и сигналами V, зависящими от операндов и промежуточных результатов преобразований.
Рис.1.2 Операционный и управляющий блоки цифрового устройства