Как называются данные необходимые для выполнения некоторой команды процессора

Обновлено: 05.07.2024

Проектирование системы команд оказывает влияние на структуру ЭВМ. Оптимальную систему команд иногда определяют как совокупность команд, которая удовлетворяет требованиям проблемно-ориентированных применений таким образом, что избыточность аппаратных и аппаратно-программных средств на реализацию редко используемых команд оказывается минимальной. В различных программах ЭВМ частота появления команд различна; например, по данным фирмы DEC в программах для ЭВМ семейства PDP-11 наиболее часто встречается команда передачи MOV(B), на ее долю приходится приблизительно 32% всех команд в типичных программах. Систему команд следует выбирать таким образом, чтобы затраты на редко используемые команды были минимальными.

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

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

Сокращение времени выполнения программ и емкости памяти достигается за счет увеличения сложности логики управления.

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

Классификация команд по основным признакам представлена на рис. 2.4. Важнейшим структурным элементом формата любой команды является код операции (КОП), определяющей действие, которое должно быть выполнено. Большое число КОП в процессоре очень важно, так как аппаратная реализация команд экономит память и время. Но при выборе ЭВМ необходимо концентрировать внимание на полноте операций с конкретными типами данных, а не только на числе команд, на доступных режимах адресации. Число бит, отводимое под КОП, является функцией полного набора реализуемых команд.

Рис. 2.4. Классификация команд.

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

В некоторых командах необходим только один операнд и они называются однооперандными (или одноадресными) командами в отличие от двухоперандных (или двухадресных), в которых требуются два операнда. При наличии двух операндов командой обычно изменяется только один из них. Так как информация берется только из одной ячейки, эту ячейку называются источником; ячейка, содержимое которой изменяется, называется приемником.

Ниже приведен формат двухадресной (двухоперандной) команды процессоров СМ.

Формат команд процессоров СМ:
а) двухадресная команда;
б) одноадресная команда.

Четырехбитный КОП (биты 15-12) кодирует ряд двухоперандных операций, приведенных в таблице 1. Биты (11-6) и (5-0) для команд данного типа определяют адреса источника и приемника данных. Как видно из таблицы, комбинации 0000 и 1000 поля КОП определяют группы одноадресных команд (рис 1,б). КОП 1 (биты 15-12), соответствующий кодам 0000 и 1000, определяет группу одноадресных команд, а КОП 2 (биты 11-6) кодирует конкретную операцию команд данной группы. Таким образом, команды, использующие один операнд, кодируются 10-битным КОП (биты 15-6).

Наиболее гибкая команда требует до четырех операндов. Например, команда сложения может указывать адреса слагаемых, адрес результата и адрес следующей команды. Если для задания адреса требуется 16 бит, то четырехоперандная команда займет 8 байт памяти, не учитывая код операции. Следовательно, получится медленнодействующая ЭВМ с огромной памятью. Поэтому в большинстве микроЭВМ любой команде требуется не более двух операндов. Это достигается следующими приемами:
1. Адрес следующей команды указывается только в командах переходов; в остальных случаях очередная команда выбирается из ячеек памяти, следующих за выполненной командой.
2. Использование ячейки, в которой находится один из операндов, для запоминания результата (например, сумма запоминается в ячейки первого операнда).

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

Почти во всех форматах команд первые биты отводятся для кода операции, но далее форматы команд разных ЭВМ сильно отличаются друг от друга. Остальные биты должны определять операнды или их адреса, и поэтому они используются для комбинации режимов, адресов регистров, адресов памяти, относительных адресов и непосредственных операндов. Обычно длина команды варьируется от 1 до 3 и даже 6 байт.

2.1. Процессор.

Самый основной элемент компьютера, это, конечно, процессор. Давайте подробней его рассмотрим. Упрощённая структура процессора (рис. 4):


Рис. 4. Упрощённая структура процессора

Основные элементы процессора:

· Регистры – это специальные ячейки памяти, физически расположенные внутри процессора. В отличие от ОЗУ, где для обращения к данным требуется использовать шину адреса, к регистрам процессор может обращаться напрямую. Это существенно ускорят работу с данными.

· Арифметико-логическое устройство выполняет арифметические операции, такие как сложение, вычитание, а также логические операции.

· Блок управления определяет последовательность микрокоманд, выполняемых при обработке машинных кодов (команд).

· Тактовый генератор , или генератор тактовых импульсов, задаёт рабочую частоту процессора.

2.2. Режимы работы процессора.

Процессор архитектуры x86 может работать в одном из пяти режимов и переключаться между ними очень быстро:

1. Реальный (незащищенный) режим (real address mode) — режим, в котором работал процессор 8086. В современных процессорах этот режим поддерживается в основном для совместимости с древним программным обеспечением (DOS-программами).

2. Защищенный режим (protected mode) — режим, который впервые был реализован в 80286 процессоре. Все современные операционные системы (Windows, Linux и пр.) работают в защищенном режиме. Программы реального режима не могут функционировать в защищенном режиме.

3. Режим виртуального процессора 8086 (virtual-8086 mode, V86) — в этот режим можно перейти только из защищенного режима. Служит для обеспечения функционирования программ реального режима, причем дает возможность одновременной работы нескольких таких программ, что в реальном режиме невозможно. Режим V86 предоставляет аппаратные средства для формирования виртуальной машины, эмулирующей процессор8086. Виртуальная машина формируется программными средствами операционной системы. В Windows такая виртуальная машина называется VDM (Virtual DOS Machine — виртуальная машина DOS). VDM перехватывает и обрабатывает системные вызовы от работающих DOS-приложений.

4. Нереальный режим (unreal mode, он же big real mode) — аналогичен реальному режиму, только позволяет получать доступ ко всей физической памяти, что невозможно в реальном режиме.

5. Режим системного управления System Management Mode (SMM) используется в служебных и отладочных целях.

При загрузке компьютера процессор всегда находится в реальном режиме, в этом режиме работали первые операционные системы, например MS-DOS, однако современные операционные системы, такие как Windows и Linux переводят процессор в защищенный режим. Вам, наверное, интересно, что защищает процессор в защищенном режиме? В защищенном режиме процессор защищает выполняемые программы в памяти от взаимного влияния (умышленно или по ошибке) друг на друга, что легко может произойти в реальном режиме. Поэтому защищенный режим и назвали защищенным.

2.3. Регистры процессора (программная модель процессора).

Для понимания работы команд ассемблера необходимо четко представлять, как выполняется адресация данных, какие регистры процессора и как могут использоваться при выполнении инструкций. Рассмотрим базовую программную модель процессоров Intel 80386, в которую входят:

· 8 регистров общего назначения, служащих для хранения данных и указателей;

· регистры сегментов — они хранят 6 селекторов сегментов;

· регистр управления и контроля EFLAGS, который позволяет управлять состоянием выполнения программы и состоянием (на уровне приложения) процессора;

· регистр-указатель EIP выполняемой следующей инструкции процессора;

· система команд (инструкций) процессора;

· режимы адресации данных в командах процессора.

Начнем с описания базовых регистров процессора Intel 80386.

Базовые регистры процессора Intel 80386 являются основой для разработки программ и позволяют решать основные задачи по обработке данных. Все они показаны на рис. 5.


Рис. 5. Базовые регистры процессора Intel 80386

Среди базового набора регистров выделим отдельные группы и рассмотрим их назначение.

2.4. Регистры общего назначения.

Остальные четыре регистра – ESI (индекс источника), EDI (индекс приемника), ЕВР (указатель базы), ESP (указатель стека) – имеют более конкретное назначение и применяются для хранения всевозможных временных переменных. Регистры ESI и EDI необходимы в строковых операциях, ЕВР и ESP – при работе со стеком. Так же как и в случае с регистрами ЕАХ - EDX, младшие половины этих четырех регистров называются SI, DI, BP и SP соответственно, и в процессорах до 80386 только они и присутствовали.

2.5. Сегментные регистры.

При использовании сегментированных моделей памяти для формирования любого адреса нужны два числа – адрес начала сегмента и смещение искомого байта относительно этого начала (в бессегментной модели памяти flat адреса начал всех сегментов равны). Операционные системы (кроме DOS) могут размещать сегменты, с которыми работает программа пользователя, в разных местах памяти и даже временно записывать их на диск, если памяти не хватает. Так как сегменты способны оказаться где угодно, программа обращается к ним, применяя вместо настоящего адреса начала сегмента 16-битное число, называемое селектором. В процессорах Intel предусмотрено шесть 16-битных регистров - CS, DS, ES, FS, GS, SS , где хранятся селекторы. (Регистры FS и GS отсутствовали в 8086, но появились уже в 80286.) Это означает, что в любой момент можно изменить параметры, записанные в этих регистрах.

В отличие от DS, ES, GS, FS, которые называются регистрами сегментов данных, CS и SS отвечают за сегменты двух особенных типов – сегмент кода и сегмент стека. Первый содержит программу, исполняющуюся в данный момент, следовательно, запись нового селектора в этот регистр приводит к тому, что далее будет исполнена не следующая по тексту программы команда, а команда из кода, находящегося в другом сегменте, с тем же смещением. Смещение очередной выполняемой команды всегда хранится в специальном регистре EIP (указатель инструкции, 16-битная форма IP), запись в который так же приведет к тому, что далее будет исполнена какая-нибудь другая команда. На самом деле все команды передачи управления – перехода, условного перехода, цикла, вызова подпрограммы и т.п. – и осуществляют эту самую запись в CS и EIP.

2.6. Регистр флагов.

Еще один важный регистр, использующийся при выполнении большинства команд, - регистр флагов. Как и раньше, его младшие 16 бит, представлявшие собой весь этот регистр до процессора 80386, называются FLAGS. В EFLAGS каждый бит является флагом, то есть устанавливается в 1 при определенных условиях или установка его в 1 изменяет поведение процессора. Все флаги, расположенные в старшем слове регистра, имеют отношение к управлению защищенным режимом, поэтому здесь рассмотрен только регистр FLAGS (см. рис. 6):


Рис. 6. Регистр флагов FLAGS.

CF – флаг переноса. Устанавливается в 1, если результат предыдущей операции не уместился в приемнике и произошел перенос из старшего бита или если требуется заем (при вычитании), в противном случае – в 0. Например, после сложения слова 0 FFFFh и 1, если регистр, в который надо поместить результат, – слово, в него будет записано 0000 h и флаг CF = 1.

PF – флаг четности. Устанавливается в 1, если младший байт результата предыдущей команды содержит четное число битов, равных 1, и в 0, если нечетное. Это не то же самое, что делимость на два. Число делится на два без остатка, если его самый младший бит равен нулю, и не делится, когда он равен 1.

AF – флаг полупереноса или вспомогательного переноса. Устанавливается в 1, если в результате предыдущей операции произошел перенос (или заем) из третьего бита в четвертый. Этот флаг используется автоматически командами двоично-десятичной коррекции.

ZF – флаг нуля. Устанавливается в 1, если результат предыдущей команды – ноль.

SF – флаг знака. Он всегда равен старшему биту результата.

TF – флаг ловушки. Он был предусмотрен для работы отладчиков, не использующих защищенный режим. Установка его в 1 приводит к тому, что после выполнения каждой программной команды управление временно передается отладчику.

IF – флаг прерываний. Сброс этого флага в 0 приводит к тому, что процессор перестает обрабатывать прерывания от внешних устройств. Обычно его сбрасывают на короткое время для выполнения критических участков кода.

DF – флаг направления. Он контролирует поведение команд обработки строк: когда он установлен в 1, строки обрабатываются в сторону уменьшения адресов, когда DF =0 – наоборот.

OF – флаг переполнения. Он устанавливается в 1, если результат предыдущей арифметической операции над числами со знаком выходит за допустимые для них пределы. Например, если при сложении двух положительных чисел получается число со старшим битом, равным единице, то есть отрицательное, и наоборот.

Флаги IOPL (уровень привилегий ввода-вывода) и NT (вложенная задача) применяются в защищенном режиме.

2.7. Цикл выполнения команды

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

Для того чтобы процессор знал, какую команду нужно выполнять в определённый момент, существует счётчик команд – специальный регистр, в котором хранится адрес команды, которая должна быть выполнена после выполнения текущей команды. То есть при запуске программы в этом регистре хранится адрес первой команды. В процессорах Intel в качестве счётчика команд (его ещё называют указатель команды) используется регистр EIP (или IP в 16-разрядных программах).

Счётчик команд работает со сверхоперативной памятью, которая находится внутри процессора. Эта память носит название очередь команд, куда помещается одна или несколько команд непосредственно перед их выполнением. То есть в счётчике команд хранится адрес команды в очереди команд, а не адрес оперативной памяти.

Цикл выполнения команды – это последовательность действий, которая совершается процессором при выполнении одной машинной команды. При выполнении каждой машинной команды процессор должен выполнить как минимум три действия: выборку, декодирование и выполнение. Если в команде используется операнд, расположенный в оперативной памяти, то процессору придётся выполнить ещё две операции: выборку операнда из памяти и запись результата в память. Ниже описаны эти пять операций.

  • Выборка команды . Блок управления извлекает команду из памяти (из очереди команд), копирует её во внутреннюю память процессора и увеличивает значение счётчика команд на длину этой команды (разные команды могут иметь разный размер).
  • Декодирование команды . Блок управления определяет тип выполняемой команды, пересылает указанные в ней операнды в АЛУ и генерирует электрические сигналы управления АЛУ, которые соответствуют типу выполняемой операции.
  • Выборка операндов . Если в команде используется операнд, расположенный в оперативной памяти, то блок управления начинает операцию по его выборке из памяти.
  • Выполнение команды . АЛУ выполняет указанную в команде операцию, сохраняет полученный результат в заданном месте и обновляет состояние флагов, по значению которых программа может судить о результате выполнения команды.
  • Запись результата в память . Если результат выполнения команды должен быть сохранён в памяти, блок управления начинает операцию сохранения данных в памяти.

Суммируем полученные знания и составим цикл выполнения команды:

  1. Выбрать из очереди команд команду, на которую указывает счётчик команд.
  2. Определить адрес следующей команды в очереди команд и записать адрес следующей команды в счётчик команд.
  3. Декодировать команду.
  4. Если в команде есть операнды, находящиеся в памяти, то выбрать операнды.
  5. Выполнить команду и установить флаги.
  6. Записать результат в память (по необходимости).
  7. Начать выполнение следующей команды с п.1.

Это упрощённый цикл выполнения команды. К тому же действия могут отличаться в зависимости от процессора. Однако это даёт общее представление о том, как процессор выполняет одну машинную команду, а значит и программу в целом.

Команды в микропроцессоре

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

● функциональное назначение операции в виде кода операции;

● адреса источников данных. В общем случае должны быть указаны адреса двух операндов;

● адрес места расположения результата;

● адрес следующей команды.

Способы уменьшения формата команды.

Рассмотрим гипотетическую ситуацию. Допустим, что в формате команды:

● поле кода операций (КО) занимает 4 разряда, что позволяет закодировать 2 4 = 16 операций;

● под адреса двух операндов–источников, адрес места расположения результа­та, адрес следующей команды выделены поля А O 1, А O 2, АР, АСК (рис. 2.7.1) по 12 разрядов, что позволяет в каждом случае адресовать 2 12 = 4К ячеек памяти.

рис. 2.7.1

Как видно из рис. 2.7.1, несмотря на скромные возможности команды, ее об­щая длина составляет достаточно большое число (52) бит. Для сокращения коли­чества разрядов команды часть информации должна быть задана неявно и не должна зависеть от особенностей конкретной команды.

Наиболее употребительными являются следующие способы сокраще­ния длины кода команды:

● использование специально предусмотренных для адресации регистров: про­граммного счетчика, указателя стека и др. Например, при выполнении ко­манд с последовательно возрастающими адресами программный счетчик ав­томатически считывает из памяти следующую команду. В этом случае в фор­мате команды отсутствует поле адреса следующей команды;

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

совмещение источника одного из операндов с приемником результата. В этом случае в формате команды исключается поле адреса результата;

использование команд с укороченной адресацией, т. е. части адресного про­странства памяти;

● использование для некоторой группы операций одного регистра. Наиболее часто для этой цели используется аккумулятор. В операциях с аккумулятором не требуется его кодировка. Например, команда ADD

В выполняет операцию сложение содержимого регистра В с аккумулятором А и в него же помещает результат. Такая команда является одноадресной. Ее формат состоит из двух полей: кода операции и адреса операнда. Однако одноадресные команды требуют дополнительных команд для предварительной загрузки операндов в аккумулятор и последующего размещения результатов в памяти;

использование нескольких аккумуляторов (Motorola 6800, National РАСЕ, Signetic 2650). В этом случае каждая команда имеет два адреса, однако ад­рес источника и места назначения может быть задан другим аккумулятором. Следует отметить, что в одних процессорах все команды имеют одинаковую длину, в других — разную длину. Одинаковая длина всех команд упрощает деко­дирование, однако требует большего пространства, поскольку все команды долж­ны быть такой же длины, как самая длинная. Команды могут быть короче слова, равными слову или длиннее слова. В процессорах с неймановской архитектурой команды и данные имеют одинаковую длину и поступают в процессор по шине данных. Поэтому для отличия команд отданных в процессоре предусмотрены средства, обеспечивающие:

● засылку команд (первого байта) в регистр команд с дальнейшей их дешифра­цией для активизации устройства управления;

● поступление данных (последующих байт) в аккумулятор или другие регистры для обработки в АЛУ.

Форматы команд некоторых процессоров.

Рассмотрим в общих чертах форматы команд 8–разрядного (8080) и 16–разрядного (8086) процессоров. Дли­на команды кратна байту и может составлять один, два и более байт.

Достаточно простые форматы имеют команды процессора 8080 (рис. 2.7.2). Длина команд составляет от 1 до 3 байт. Код операции всегда размещается в первом байте команды. Второй и третий байты отводятся под непосредствен­ные данные, адрес порта или ячейки памяти. В командах допускается явное зада­ние только одного адреса памяти. Поэтому система команд процессора 8080 от­носится к классу одноадресных.

рис. 2.7.2

На рис. 2.7.3 изображены форматы команд процессора 8086. Длина команд составляет от 1 до 6 байт.

рис. 2.7.3

На рис. 2.7.2 и 2.7.3 обозначено: ОР — код операции; X — биты кода опера­ции; dst , src — указатели приемника и источника данных; port — адрес порта; data — данные; addr — адрес памяти; w — тип операнда ( w = 0 — байт, w = 1 — слово); d — направление передачи ( d = 0 — «из», d = 1 — «в»); s — признак рас­ширения байта в слово; reg — трехразрядное поле для кодирования регистров AL–BH; seg — двухразрядное поле для кодирования сегментных регистров; mod — определяет режим, заданный полем r / m (регистр/память); port 8 — корот­кий 8–разрядный адрес порта; disp — смещение; offset — смещение; sel — селек­тор; vect — вектор прерывания; v — сдвиговый флаг; cc — 4–разрядное поле, для кодирования 16 условий перехода.

Правильные ответы выделены зелёным цветом.
Все ответы: В лекциях рассматриваются схемотехнические основы ЭВМ. Представлены основные устройства ЭВМ. Рассматривается взаимодействие устройств ЭВМ при автоматическом выполнении программы. Описана работа мультипрограммной ЭВМ.

Какое состояние имеет выход 7 трехвходового дешифратора с инверсными выходами, если состояние его входов равно 101 ?

(3) информации для определения состояния данного выхода недостаточно

С каким этапом совмещается этап формирования адреса следующей команды?

Какие преимущества обеспечивает конвейерный принцип обработки информации (при идеальном конвейере)?

(3) повышение скорости загрузки блоков микропроцессора

(4) уменьшение количества обращений к оперативной памяти

Что характерно для мультипрограммного режима работы ЭВМ?

(1) возможность перехода от выполнения одной задачи к другой

(2) в памяти ЭВМ одновременно содержатся программы и данные для выполнения нескольких задач

(3) ЭВМ содержит несколько процессоров, на которых возможно параллельное выполнение нескольких задач

(4) взаимная защита программ и данных, относящихся к различным задачам

Укажите основные режимы работы мультипрограммной ЭВМ.

Чем отличается обработка прерывания от выполнения подпрограммы?

(1) при вызове обработчика прерывания адрес возврата в основную программу определяют аппаратные средства микропроцессора, а при обращении к подпрограмме адрес возврата указывает программист

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

(3) вызов обработчика прерывания данного типа может быть осуществлен не более одного раза за время выполнения одной программы, а вызов подпрограммы может осуществляться многократно

Какая часть программного обеспечения всегда располагается в оперативной памяти?

Какой принцип логической организации памяти используется в персональной ЭВМ?

Какие действия должны предотвращаться средствами защиты памяти?

(1) неразрешенное взаимодействие пользователей друг с другом

(2) несанкционированный доступ пользователей к данным

(3) обращение к информации, которая в данный момент отсутствует в оперативной памяти

(4) использование информации в памяти не в соответствии с ее функциональным назначением

(5) повреждение программ и данных из-за ошибок в программах

(6) обращение к программам с более высоким уровнем привилегий

Что из перечисленного не входит в понятие интерфейса?

Какое состояние имеет трехразрядный суммирующий счетчик, предварительно сброшенный в "0", после поступления на его счетный вход 10-ти сигналов?

Какова минимальная адресуемая ячейка памяти в современных ЭВМ?

Какую длину может иметь непосредственный операнд в 16-разрядном микропроцессоре?

Представьте следующую команду в машинном виде минимальной длины (при ответе на этот вопрос можно пользоваться таблицами кодирования команд и режимов адресации): ADD CL, 12h

Определить смещение, которое должно быть указано в команде короткого внутрисегментного перехода, расположенной по адресу (IP)=243Ch и осуществляющей переход на команду по адресу 24C3h .

Почему арифметические команды формата "память-регистр" выполняются дольше, чем команды формата "регистр-память" при одинаковом режиме адресации памяти?

(1) больше времени требуется на считывание операндов

(2) команда имеет большую длину, поэтому больше времени требуется на ее считывание

(3) запись результата в память требует больше времени, чем запись результата в регистр

Какое состояние входов является запрещенным для запоминающей ячейки, реализованной на элементах "И-НЕ"?

На каком этапе происходит запись результата операции по адресу приемника результата?

Чем определяется длительность такта работы микропроцессора при конвейерной обработке информации?

(1) длительностью самого длинного этапа выполнения команды при последовательной обработке

(2) имеющимися на данный момент технологическими возможностями производства микропроцессорных БИС

(3) длительностью самого короткого этапа выполнения команды при последовательной обработке

Какое из соотношений между последовательностями состояний процесса является верным?

(1) порождение всегда предшествует активному состоянию

(2) готовность всегда предшествует активному состоянию

(4) активное состояние всегда предшествует окончанию

На основе какой одноочередной дисциплины распределения ресурсов обычно строятся многоочередные дисциплины?

Какие из действий по обработке прерывания выполняются процессором автоматически?

(2) формирование адреса программы – обработчика прерывания

(4) определение адреса возврата в прерванную программу

Каковы особенности статического распределения памяти?

(1) вся необходимая оперативная память выделяется процессу в момент его порождения

(2) процессу может выделяться оперативная память в размерах, превышающих физически существующую память

(3) выделение памяти единым блоком необходимой длины

(4) возникновение свободных участков памяти, которые невозможно без предварительного преобразования использовать для вычислительного процесса, вследствие наличия программ различной длины

Каковы основные недостатки метода граничных регистров?

(2) метод поддерживает работу лишь с областями памяти фиксированной длины

(3) метод поддерживает работу лишь с непрерывными областями памяти

Какие задачи возлагаются на интерфейсные схемы устройств ввода-вывода?

(1) обеспечение функциональной и электрической совместимости сигналов и протоколов обмена модуля и системной магистрали

(2) преобразование внутреннего формата данных модуля в формат данных системной магистрали и обратно

(3) обеспечение восприятия единых команд обмена информацией и преобразование их в последовательность внутренних управляющих сигналов

(4) изменение разрядности шины данных системной магистрали в зависимости от внутреннего формата устройства ввода-вывода

От чего зависит время задержки асинхронного счетчика?

(2) от времени задержки триггеров, составляющих счетчик

(3) от величины периода сигнала, поступающего на счетный вход счетчика

(4) от длительности высокого уровня сигнала, поступающего на счетный вход счетчика

Какие функции должен выполнять регистр множимого RGX в АЛУ, выполняющем операцию умножения чисел, заданных в прямом коде, со старших разрядов множителя?

Как называется совокупность микрокоманд, предназначенная для выполнения некоторой функционально законченной последовательности действий?

Чем определяется быстродействие запоминающего устройства при записи информации?

(1) временем, затрачиваемым на поиск нужной информации в памяти

(2) временем, затрачиваемым на поиск места в памяти, предназначаемого для хранения информации

Какой из сегментных регистров используется по умолчанию при формировании физического адреса операндов, находящихся в оперативной памяти, при режимах адресации, не использующих для формирования эффективного адреса регистр BP ?

Представьте следующую команду в машинном виде минимальной длины (при ответе на этот вопрос можно пользоваться таблицами кодирования команд и режимов адресации): SUB [SI+12h], DX

Определите адрес команды, которая будет выполняться после команды перехода 7007h , расположенной по адресу (IP)=FFFDh , при следующих значениях флагов: ZF = 1 , SF = 0 , CF = 0 , OF = 1 .

В каком случае команда условного перехода выполняется дольше?

(3) в любом случае время выполнения команды одинаково

При каком значении синхросигнала переключается динамический триггер?

Сколько сегментных регистров содержит микропроцессор с архитектурой IA-32?

Какова длительность выполнения 20 команд в идеальном 5-ступенчатом конвейере при длительности такта 10 нс?

Как в общем случае изменяется время выполнения программы при увеличении коэффициента мультипрограммирования?

Какая из модификаций многоочередной дисциплины распределения ресурсов предназначена для того, чтобы устранить недопустимо большое время выполнения длинных запросов?

(1) система со статическим указанием приоритетов программ

(2) обслуживание программ с абсолютными приоритетами

(3) система с динамическим изменением приоритетов программ

Какими средствами можно запретить все аппаратные маскируемые прерывания?

(1) с помощью сброса флага разрешения в таблице векторов прерываний

(2) с помощью сброса флага разрешения прерываний в регистре флагов микропроцессора

(3) с помощью регистра маски в контроллере приоритетных прерываний

Как преобразуется смещение в странице при переводе виртуальных адресов в физические?

(1) умножается на n , где n – определяется размером страницы ( V=2 n )

(2) смещение в физической странице есть сумма по модулю 2 смещения в виртуальной странице и величины n , где n – определяется размером страницы ( V=2 n )

Какое минимальное количество обращений к оперативной памяти выполняется в персональной ЭВМ при вычислении физического адреса в сегментно-страничном адресном пространстве без использования средств сокращения времени преобразования?

Какие проверки выполняются в персональной ЭВМ средствами защиты при управлении памятью?

(2) возможность программы выполнять некоторые команды

(3) проверка прав доступа к сегменту на запись или только на чтение

В каких случаях программно-управляемый обмен между памятью и устройством ввода-вывода эффективнее обмена в режиме прямого доступа к памяти?

(2) в случаях, когда быстродействие процессора намного больше быстродействия оперативной памяти

(3) в случаях, когда быстродействие процессора намного больше быстродействия устройства ввода-вывода

Какие типы триггеров можно использовать для построения регистра хранения?

Какой сигнал необходимо подавать на вход С0 сумматора в АЛУ, выполняющем операцию умножения чисел, заданных в обратном коде?

Какие блоки входят в состав схемного устройства управления?

Сколько БИС с организацией 1К слов по 1 разряд потребуется для построения ЗУ с организацией 4К слов по 4 разряда?

Значения каких регистров изменяются при выполнении команд условных переходов?

Представьте следующую команду в машинном виде минимальной длины (при ответе на этот вопрос можно пользоваться таблицами кодирования команд и режимов адресации): ADD AX, 1234h

Представьте в символическом виде команду, имеющую следующий машинный код (при ответе на этот вопрос можно пользоваться таблицами кодирования команд и режимов адресации): 2В871234h

Какое количество тактов будет выполняться следующая команда ES: SUB [123h], DX Операнды в памяти выровнены по границе слова. При ответе на этот вопрос можно пользоваться таблицами времени выполнения команд и времени вычисления эффективного адреса

При каком состоянии входов запоминающая ячейка, реализованная на элементах "И-НЕ", не изменит своего состояния?

Какие из блоков, входящих в состав 32-разрядного микропроцессора, отсутствовали в структуре 16-разрядного микропроцессора?

(1) максимально возможным на данном уровне технологии количеством ступеней

(1) это время между порождением и окончанием процесса

(2) это время между порождением и окончанием процесса за вычетом времени ожидания

(3) это время между порождением и окончанием процесса за вычетом времени ожидания и готовности

Для каких целей в мультипрограммной ЭВМ используется алгоритм планирования Корбато?

(1) для выбора времени кванта, на который ресурс предоставляется программе

(2) для определения номера очереди, в которую помещается новая программа при многоочередной дисциплине распределения ресурсов

(1) номер, присваиваемый каждому из прерываний для определения адреса обработчика прерывания

(2) адрес обработчика прерывания от данного источника

(3) номер, присваиваемый каждому из прерывания для определения его приоритета

Почему концепция виртуальной памяти базируется на ее страничном разбиении?

(1) страницы имеют меньший объем, по сравнению с программой, что позволяет проводить более плотную упаковку оперативной памяти

(2) страницы используются программистом при написании программы, поэтому могут быть легко интерпретированы средства управления памяти для организации виртуальной памяти

(3) при страничном разбиении памяти объемы физической и виртуальной страниц совпадают, что позволяет заменять страницу оперативной памяти новой страницей из внешней памяти без возникновения проблем фрагментации памяти

(4) страницы имеют меньший объем по сравнению с сегментами

Как определяется номер виртуальной страницы при сегментно-страничном преобразовании адреса?

(2) содержится в старших разрядах линейного адреса, полученного после сегментного преобразования

Каковы основные механизмы защиты памяти в персональной ЭВМ?

Как организуется параллельная во времени работа процессора над вычислительной частью программы и выполнение периферийными устройствами процедур ввода-вывода?

(2) за счет использования контроллеров устройств ввода-вывода

(4) за счет конвейерной организации работы микропроцессора

(1) счетчик, состояние которого уменьшается на "1" при каждом поступлении сигнала на счетный вход

(2) счетчик, состояние которого может как увеличиваться, так и уменьшаться на "1" в зависимости от того, на какой счетный вход поступает сигнал

(3) счетчик, который имеет асинхронный вход сброса в "0"

Какие функции должен выполнять регистр множителя RGY в АЛУ, выполняющем операцию умножения чисел, заданных в прямом коде, с младших разрядов множителя?

Какие схемные решения используются при построении датчика сигналов?

Чем определяется время обращения к регистровой памяти?

Какую длину имеет непосредственный операнд в 16-разрядном микропроцессоре при значении признака w=1 ?

Представьте следующую команду в машинном виде минимальной длины (при ответе на этот вопрос можно пользоваться таблицами кодирования команд и режимов адресации): SUB [DI+12h], DX

Определите адрес команды, которая будет выполняться после команды перехода 7808h , расположенной по адресу (IP)=FFFDh , при следующих значениях флагов: ZF = 1 , SF = 0 , CF = 0 , OF = 1 .

Для сокращения времени выполнения программы, имеющей циклические участки, требуется

(1) организовать выполнение обработки информации по месту нахождения операндов, использующихся на циклическом участке

(2) максимально сократить время выполнения участка программы с начальными установками цикла

(3) обработку информации на циклических участках проводить, по возможности, в регистровой памяти микропроцессора

Содержимое каких регистров меняется при формировании адреса следующей команды в персональной ЭВМ при отсутствии команд перехода?

Как называются конфликты в конвейере, возникающие при конвейеризации команд переходов?

Чем характеризуется мультипрограммный режим работы ЭВМ?

(1) возможность перехода от выполнения одной задачи к другой

(2) в памяти ЭВМ одновременно содержатся программы и данные для выполнения нескольких задач

(3) ЭВМ содержит несколько процессоров, на которых возможно параллельное выполнение нескольких задач

(4) взаимная защита программ и данных, относящихся к различным задачам

В какой из одноочередных дисциплин распределения ресурсов время нахождения в очереди длинных и коротких запросов зависит только от момента их поступления?

Чем отличается обработка прерывания от выполнения подпрограммы?

(1) при вызове обработчика прерывания адрес возврата в основную программу определяют аппаратные средства микропроцессора, а при обращении к подпрограмме адрес возврата указывает программист

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

(3) вызов обработчика прерывания данного типа может быть осуществлен не более одного раза за время выполнения одной программы, а вызов подпрограммы может осуществляться многократно

Каковы основные требования пользователей к распределению памяти?

(1) получение оперативной памяти в размерах, превышающих физически существующую

(2) увеличение степени использования оперативной памяти при параллельном развитии нескольких процессов в мультипрограммном режиме

(3) обеспечение быстрого выполнения коротких программ

(4) легкость и простота взаимодействия между программами при использовании общих процедур

Читайте также: