Слово состояние программы это

В каждый данный момент функционирующая ЭВМ находится в каком-то одном определенном состоянии, характеризующемся содержимым регистров, ячеек памяти и некоторой другой информацией, такой, как, например, адрес, хранящийся в счетчике команд, значение признака результата, а также осуществляемые в данный момент действия по обмену с периферийными устройствами. Кроме содержимого регистров и памяти, состояние ЭВМ характеризует содержимое так называемого Слова состояния программы (PSW), которое представляет особый интерес для программистов.

Как мы увидим в дальнейшем, PSW играет большую роль и на этапе выполнения программы. В гл. 12 мы будем существенно использовать значение его содержимого для целей отладки программ. Рассмотрение PSW будет проходить в три этапа. На первом мы познакомимся с той частью задаваемой им информации, которая представляет для нас непосредственный интерес в данный момент.

Затем мы обсудим роль, которую PSW играет в организации системы прерываний, и, наконец, перейдем к тем связанным с использованием PSW вопросам, которые хотя и не очень существенны для нас сейчас, но значительно облегчат нам работу в дальнейшем.

Step 7. Немного философии и слово состояния.

Основные компоненты PSW

Слово состояния программы следовало бы назвать (как это и сделано в некоторых системах, схожих с Системой 360) Двойным словом состояния программы. PSW фактически представляет собой 64-раз- рядный регистр, подразделяемый, как это показано на рис. 11.1, на несколько полей. Для пользователей обычно представляет интерес содержимое второго слова.

В этой части регистра находится информация, наиболее тесно связанная с процессом выполнения их программ. Содержимое первого слова имеет большое значение для правильного функционирования операционной системы, поскольку оно содержит некоторую управляющую информацию, влияющую на работу системы в целом.

Микропроцессоры (микроконтроллеры) аккумуляторного типа и «регистр-регистрового» типа. Слово состояние программы.

Регистры микропроцессора функционально неоднородны: одни служат для хранения данных или адресной информации, другие — для управления работой ЦП. В соответствии с этим все регистры можно разделить на регистры данных, указатели и регистры специального назначения.

Регистры данных участвуют в арифметических и логических операциях в качестве источников операндов и приемников результата, адресные регистры или указатели используются для вычисления адресов данных и команд, расположенных в основной памяти. Специальные регистры служат для индикации текущего состояния ЦП и управления работой его составных частей. Возможна архитектура, при которой одни и те же регистры используются для хранения как данных, так и адресной информации. Такие регистры называются регистрами общего назначения (РОН). Способы использования того или иного вида регистров определяют конкретные особенности архитектуры микропроцессора.

Читайте также:
Как пользоваться 3d программой

Среди регистров данных часто выделяют один регистр, называемый аккумулятором A (Accumulator), с которым связывают большинство команд арифметической и логической обработки данных. Это означает, что арифметические и логические команды используют в качестве одного из своих операндов содержимое аккумулятора и сохраняют в нем результат операции.

ПОТОК. Инструкция к абсолютной продуктивности

Ссылка на него производится неявно с помощью кода операции. При этом нет необходимости в коде команды выделять специальную область для адресов операнда и результата. Такой тип архитектуры микропроцессора называется аккумуляторным. К недостаткам такой архитектуры можно отнести относительно низкое быстродействие, объясняемое тем, что аккумулятор является ”узким местом”, в которое каждый раз необходимо сначала занести операнд перед выполнением операции. Примером такой архитектуры могут служить микроконтроллеры семейства MCS-51 фирмы Intel.

Другим примером организации регистров данных являются т.н. “рабочие регистры” R0, R1, и т.д. В этом случае операнды и результаты арифметических и логических операций могут храниться не в одном, а в нескольких регистрах, что расширяет возможности по манипуляции данными. В отличие от аккумулятора рабочие регистры адресуются явно в коде команды.

Такой тип архитектуры микропроцессора называется регистровым. Примером такой организации могут служить микропроцессоры семейства 80х86 фирмы Intel. В ряде микропроцессоров, предназначенных для работы в реальном масштабе времени, предусмотрены не один, а несколько наборов рабочих регистров. В каждый момент времени доступен лишь один из наборов регистров, выбор которого осуществляется записью соответствующей информации в определенный служебный регистр. Примером таких устройств могут служить микроконтроллеры семейства MCS-48 фирмы Intel.

Практически во всех современных микропроцессорах выделяют отдельную область памяти под так называемый “стек”, используемый, в общем случае, для передачи параметров процедурам и сохранения адресов возврата из них. Стек может быть расположен внутри микропроцессора или вне его.

Он может занимать часть адресного пространства DSEG или RSEG, а может быть расположен и отдельно от них. В последнем случае говорят о т.н. “аппаратном стеке”. Передача функций аккумулятора вершине стека приводит к т.н. “стековой архитектуре”.

Читайте также:
Как изменить свойства программы

Стековая организация дает возможность использовать безадресные команды, код которых имеет наименьшую длину. Безадресные команды оперируют данными, находящимися на вершине стека и непосредственно под ней. При выполнении операции исходные операнды извлекаются из стека, а результат передается не вершину стека.

Стековая архитектура обладает высокой вычислительной эффективностью. Существует специальный язык высокого уровня FORTH, построенный на основе безадресных команд. Такая архитектура используется в специализированных процессорах высокой производительности и, в частности в RISC-процессорах.

Служебные регистры, расположенные внутри микропроцессора, предназначены для различных функций управления его работой и индикации состояния его составных частей. Их состав и организация зависят от конкретной архитектуры процессора и различаются в каждом конкретном случае.

Наиболее часто встречающимися регистрами специальных функций являются “программный счетчик” PC (Program Counter), “указатель стека” SP (Stack Pointer) и “слово состояния программы” PSW (Program Status Word). Программный счетчик PC в каждый конкретный момент времени содержит адрес команды, следующей в CSEG за той, которая в данный момент выполняется. Указатель стека SP хранит текущий адрес вершины стека. Слово состояния программы PSW содержит набор текущих признаков результата выполнения операции. С каждым признаком результата связывается одноразрядная переменная-флажок, соответствующая определенному биту PSW.

К типовым флажкам-признакам относятся:

— CF (Carry Flag) — флажок переноса из старшего разряда АЛУ. Равен 1, если в результате выполнения арифметической операции или операции сдвига произошел перенос из старшего разряда результата;

— ZF (Zero Flag) — флажок признака нуля. Равен 1, если результат операции равен 0;

— SF (Sign Flag) — флажок знака результата. Дублирует знаковый разряд результата операции;

— AF (Auxilinary Carry Flag) — флажок дополнительного переноса. Равен 1, если в результате выполнения арифметической операции или операции сдвига произошел перенос из младшей тетрады результата в старшую. Часто используется в двоично-десятичной арифметике;

— OF (Owerfow Flag) — флажок переполнения. Равен 1, если в результате выполнения арифметической операции произошло переполнение разрядной сетки результата;

— PF (Parity Flag) — флажок четности. Равен 1, если число в результате операции нечетно и наоборот.

— IF (Interrupt Flag) — флажок разрешения прерывания. Индицирует, разрешены ли прерывания в системе.

Читайте также:
Как обновить программу на компьютере видео

Конкретные флаги используются программой для анализа результата предшествующей команды и принятия решения о дальнейшем ходе выполнения программы. Специальные регистры могут занимать часть адресного пространства DSEG или RSEG, а могут быть расположены и отдельно от них.

Источник: cyberpedia.su

Большая Энциклопедия Нефти и Газа

Слово состояния программы — двойное слово, предназначенное для управления порядком выборки команд, фиксации и индикации состояния процессора по отношению к выполняемой программе. Слово состояния программы, используемое в данный момент времени, называется текущим. [1]

Слово состояния программы хранит также программные состояния процессора для данной программы, определяемые состоянием соответствующих управляющих триггеров. [3]

Слово состояния программы хранит также программные состояния процессора для данной программы, определяе мые состоянием соответствующих управляющих триггеров. [4]

Слово состояния программы PSW , под управлением которого выполняется текущая программа. [5]

Слово состояния программы PSW содержит управляющую информацию; в результате прерывания прежняя информация замещается новой. Дополнительная управляющая информация и информация о состоянии содержатся, в управляющих регистрах и постоянно распределенных ячейках основной памяти. [6]

Напечатано старое слово состояния программы [ OLD PSW IS ] xxx, восьмая литера которого является кодом прерывания и указывает причину прерывания. [7]

Напечатано старое слово состояния программы ххх , восьмая литера которого является кодом прерывания и указывает причину прерывания. [8]

Часть слова состояния программы , начиная с бита 32, будем называть Р — счетчиком. [9]

В слове состояния программы находится управляющая информация, которая заменяется при прерываниях. Кроме того, управляющая информация и информация о состоянии содержатся в управляющих регистрах и ячейках основной памяти, имеющих постоянное назначение. [10]

В слове состояния программы устанавливается признак результата, равный i, так как мантисса числа, находящаяся в четвертом регистре, отрицательная. [11]

Если в слове состояния программы находится код условия 0, отвечающий нулевому результату, то перехода по адресу второго операнда не будет. [12]

Регистр прерываний и слово состояния программы характеризуют состояние процессора. Кроме них, состояние процессора описывается содержимым общих регистров, регистров с плавающей запятой. [13]

Для чего предназначено слово состояния программы и какое значение оно может принимать. [14]

Состояние программы представляется словом состояния программы ( ССП), в котором размещается основная информация, необходимая для анализа причин прерывания и пуска прерванной программы. [15]

Источник: www.ngpedia.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru