Cтраница 2
У многих ЭВМ имеются очень полезные команды для определения четности содержимого накопителя. [16]
Функции ПРГ и ПРП настраиваются в графах, где необходимо передать содержимое накопителя в счетчики машины, в этой же графе можно настраивать машину на выполнение любого действия, кроме списания итогов. [17]
Когда транзакт входит в блок ENTER, содержимое накопителя увеличивается на соответствующее число единиц. Блок LEAVE соответственно уменьшает содержимое накопителя. [18]
![]() |
Блок-схема алгоритма моделирования многоканальной СМО. [19] |
В начале процесса моделирования все накопители считаются пустыми. Если значение поля В равно О, то содержимое накопителя не увеличивается. В случае, когда в накопителе нет достаточного числа свободных единиц, чтобы удовлетворить запрос, транзакт не может войти в накопитель и ожидает освобождения необходимого числа единиц. [20]
Система управления машины построена на микропрограммном принципе. Каждой команде выполняемой программы поставлена в соответствие некоторая микрокоманда, хранимая в полупостоянной памяти-накопителе микрокоманд. Возможно изменение содержимого накопителя микрокоманд. Его емкость составляет 1024 72-разрядных слова, время выборки - 0 25 мкс. В качестве носителя информации в блоке накопителя микрокоманд используются карты из фольгированного диэлектрика. Одна карта содержит 32 72-разрядных слова. [21]
Для моделирования процессов параллельной обработки тран-зактов используется два типа блоков: ENTER и LEAVE. Эти блоки определяют номер накопителя и число единиц памяти, которое транзакт должен занять или освободить. Когда транзакт входит в блок ENTER, содержимое накопителя увеличивается на соответствующее число единиц. Блок LEAVE соответственно уменьшает содержимое накопителя. [22]
Другим способом исключения поля результата является введение в состав центрального процессора еще одного регистра, имеющего размер слова памяти. Такой регистр обычно называют накопителем. В этом случае потребуется дополнительная команда, позволяющая записывать содержимое накопителя в заданное слово памяти. Все остальные команды используют два операнда и помещают результат в накопитель. [23]
![]() |
Дешифровка кода устройства при помощи дешифратора 1x8 74LS138. [24] |
Команда DAA ( десятичная коррекция накопителя) воздействует на результат любой арифметической операции в накопителе. На наших дисплеях этот формат выглядит как двухразрядное десятичное число. Чтобы все эго осуществить, процессор для каждой арифметической операции сохраняет в виде флага Н результат переноса из бита 3 в бит 4; операция DAA, использовав значения И и CY ( бит переноса из бита 7) и содержимое накопителя, выводит результат. [25]
Для моделирования процессов параллельной обработки тран-зактов используется два типа блоков: ENTER и LEAVE. Эти блоки определяют номер накопителя и число единиц памяти, которое транзакт должен занять или освободить. Когда транзакт входит в блок ENTER, содержимое накопителя увеличивается на соответствующее число единиц. Блок LEAVE соответственно уменьшает содержимое накопителя. [26]
Содержимое счетчика команд обычно не может служить достаточной информацией о состоянии для возобновления прерванной программы. Поэтому следующее действие состоит в запоминании состояния других регистров ЦП для последующего использования. В момент прерывания эти регистры содержат непосредственные результаты вычислений или обработки данных, а также другие данные, необходимые для возобновления выполнения прерванной программы. Как правило, нужно сохранить содержимое накопителя, других арифметических регистров, индексных регистров и регистра состояния прерывания. Если запоминание этих данных осуществляется программно, то программист может уменьшить время реакции системы, сохраняя лишь частично состояние ЦП. [27]
![]() |
Блок-схема программы задержки. [28] |
Любое реальное приложение микрокомпьютера требует какого-то способа его коммуникаций с внешним миром. Однако более удобным оказывается использование специальных команд IN и OUT, как это было описано в разд. Она уже соединена с шиной данных, поэтому нам остается только соединить ее вход ENABLE с линией IORQ процессора ( вывод 20), и тогда содержимое накопителя будет выводиться на дисплей при каждом исполнении команды OUT. Поскольку при высоких тактовых частотах частота вывода данных окажется для нас слишком высокой, мы для собственного спасения должны отделить все команды OUT при помощи задерживающих циклов. Их использование представляет собой обычный прием в программировании микрокомпьютеров. [29]
Существуют два способа интерпретации этих тумблеров. При первом способе машина для каждого тумблера должна определить, включен он или выключен. Сдвигаем переключательное слово ( содержимое этой специальной ячейки памяти) влево а столько разрядов, чтобы n - й разряд этого слова занял место старшего цифрового разряда. После этого сдвинутое слово сравниваем со словом, содержащим единицы во всех цифровых разрядах, кроме самого старшего разряда. Рассмотрим, например, одноадресную систему со следующей командой сдвига: Сдвинуть содержимое накопителя влево на а разрядов. Тогда это слово нужно было бы занести в сумматор и выполнить комадду сдвига влево на семь разрядов. [30]