Cтраница 4
Микропрограммная часть процедуры ВКЛЮЧЕНИЕ ПИТАНИЯ осуществляет сброс системы, который происходит аналогично рассмотренной выше процедуре. Отличие заключается лишь в том, что восстановление четности РОН, РПЗ, РССП производится путем установки в нуль указанных регистров и дополнительно восстанавливается четность РОП, ПКЗ и ОП. [46]
Макрокоманда BEGIN без параметров обеспечивает загрузку в регистр с номером 10 адреса начала программы в памяти. Если макрокоманда содержала параметры, то адрес начала программы загружается в регистр с номером дО, а в каждый следующий из указанных регистров заносится увеличенное на 4096 содержимое предыдущего регистра. По регистрам, указанным в макрокоманде, транслятор и осуществляет базирование адресов в вырабатываемой им программе. Кроме того, макрокоманда BEGIN обеспечивает запоминание исходного содержимого регистров в области сохранения программы, вызвавшей данную программу. [47]
Команда STM записывает содержимое нескольких общих регистров ( двух, трех, четырех или больше) в связную область памяти, состоящую из соответствующего числа слов. Область памяти, адресуемая операндом D2 ( B2), должна начинаться с границы слова и состоять из достаточного для запоминания указанных регистров количества слов - по одному слову на регистр. [48]
Важно уяснить себе тот факт, что предложение USING ни в какой регистр ничего не помещает. Оно лишь информирует ассемблер о том, что к тому времени, когда объектная программа будет выполняться, программист уже позаботится, чтобы указанные регистры содержали определенные числа. [49]
Например, для организации правильного списания товаров следует в качестве движения, влияющего на последовательность указать регистр оперативного учета, на котором ведется стоимостной учет товаров или, если учет ведется на бухгалтерских счетах, указать счет, на котором ведется учет товаров. В качестве документов, на проведение которых будет влиять данная последовательность, следует указать те виды документов, которые будут анализировать при проведении указанный регистр или остатки по указанному счету. [50]
В общем виде формат двухоперандной команды приведен на рис. 2.2, а, где штриховыми линиями обозначены необязательные байты команды. При d l осуществляется передача операнда или результата операции в регистр, который определяется полем reg второго байта команды; при d 0 - передача из указанного регистра. Поле w идентифицирует тип ( разрядность) операндов: при wl команда оперирует словом, при w 0 - байтом. [51]
Так как Q4 - заключительное состояние, из него выходит дуга POP, указывающая, что рассмотренная цепочка может быть полным предложением в соответствии с грамматикой, но поскольку предложение еще не кончилось, то выбрать эту альтернативу нельзя. Теперь действие ( SETR VP ( BUILDQ ( VP ( V) V)) берет фрагмент структуры ( VP ( V)) и подставляет текущее значение вместо вхождения во фрагмент, а также заменяет вхождение знака содержимым указанного регистра V. Полученная структура ( VP ( V like) ( NP Mary)) помещается в регистр VP, а действие ( ТО Q5) вызывает переход к состоянию Q5 и выход за конец входной цепочки. [52]
Область памяти с адресом 0026 играет роль регистра временного хранения. В нее необходимо записывать данные на то время, пока микропроцессор занят выполнением других операций. Указанные регистры обычно служат, как и в данном случае, для предотвращения потери данных во время реализации промежуточных шагов программы. [53]