Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Неймановский принцип программного управления.Содержание книги
Похожие статьи вашей тематики
Поиск на нашем сайте
Принцип программного управления может быть реализован многими способами, как кардинально различными, так и различными фрагментарно. Один из принципов реализации программного управления был предложен Джоном Нейманом в 1945 году и этот принцип стал основополагающим для построения всех типов компьютеров. В основе неймановского принципа лежит представление алгоритмов в виде операторных схем. Неймановский принцип программного управления состоит в следующем: 1.Инф. кодируется в двоичной форме и разделяется на единицы информации, наз. словами. Различные слова разделяются не способами кодирования, а способами использования. 2.Слова размещаются в ячейках памяти компьютера и идентифицируютс номерами ячеек,кот.определяют адрес слова. 3.Алгоритм представляется как последовательность управляющих слов, называемых командами (инструкциями). Команда определяет наименование операции и слова, участвующие в операции в качестве операндов и результатов. Алгоритм представляется в виде терминов машинных команд, называемых программой. 4.Выполнение программы сводится к последовательному выполнению команд в порядке, определяемом самой программой. 1 N Слово: b - 0 или1 бит N- количество битов, определяющих длину слова. Биты называют разрядами слова. Кроме бита в качестве единицы информации используют байт, состоящий из 8 бит. Память – это склад для хранения данных, в котором ячейки нумеруются натуральными числами 0,1,2,3….Е-1, где Е –емкость памяти. Чтобы записать слово или прочитать его необходимо указать адрес ячейки А (место, где хранится слово). Команды имеют определенную адресную структуру. Код оп адрес 1 адрес К области области участв участв в опер в опер Код операции определяет наименование операции, исполняемой компьютером. Обычно команда представляется в следующем виде: Это выражение определяет структуру команды. КО указывает на одну из 2 команд. Адреса А1,,…Ак являются адресами операндов. Основные команды реализуются в следующем виде: [А1]*[А2]Þ[А3] Содержимое ячеек [А1][А2][А3] Операция, определяемая КО * Операция присваивания Þ При использовании операции перехода, в адресной части которой указываются адреса последующих команд. Выбор направления перехода определяется признаком результата: Положительный или отрицательный результат. Чаще всего тип команды и тип данных неотделимы друг от друга и имеют вид двоичного слова: Процесс вычисления по заданной программе состоит в последовательном выполнении команд. Первая выполняемая команда задана начальным адресом. Адрес следующей команды однозначно определяется в процессе текущей команды. А, А+1, А+2,………… Команда перехода определяет адрес следующей команды принудительно.
Структура и форматы команд ЭВМ Обработка информации в ЭВМ осуществляется путём программного управления. Программа представляет собой алгоритм обработки информации, записанной в виде последовательности команд, которые должны быть выполнены машиной для получения результата. Команда ЭВМ представляет собой код, определяющий операцию вычислительной машины и данные, участвующие в операции. В явной и неявной форме команда содержит также информацию об адресе, по которому помещается результат операции, и об адресе следующей команды. По характеру выполняемых операций можно выделить следующие группы команд: ¨ команды арифметических операций для чисел с фиксированной или плавающей запятой; ¨ команды десятичной арифметики; ¨ команды передачи данных (MOV AX, 0FFFh); ¨ команды операций ввода/вывода (IN, OUT); ¨ команды логических операций (AND, OR, NOT); ¨ команды передачи управления (управление циклом – LOOP, условные переходы – JAE, JB); ¨ команды задания режима работы машины и др.
Форматы команд ЭВМ В команде, как правило, содержатся не сами операнды, а информация объект адресах ячеек памяти или регистрах, в которых они находятся. Код команды можно представить состоящим из нескольких полей, каждое из которых имеет свое функциональное назначение. В общем случае команда состоит из: ¨ операционной части (содержит код операции); ¨ адресной части (содержит адресную информацию о местонахождении обрабатываемых данных и месте хранения результатов). В свою очередь, эти части, что особенно характерно для адресной части, могут состоять из нескольких полей. Структура команды определяется составом, назначением и расположением полей в коде. Форматом команды называется заранее оговоренная структура полей ее кода с разметкой номеров разрядов (бит), определяющих границы отдельных полей команды, или с указанием числа разрядов (бит) в определенных полях, позволяющая ЭВМ распознавать составные части кода. Пример формата команды процессора i486. mod r/m - спецификатор режима адресации; r/m - регистр памяти; SS - масштабный множитель для режима масштабирования индексной адресации;
КОП - код операции; index - определяет индексный регистр; base - определяет базовый регистр.
Важной и сложной проблемой при проектировании ЭВМ является выбор структуры и форматов команды, т.е. ее длины, назначения и размерности отдельных ее полей. Естественно стремление разместить в команде в возможно более полной форме информацию о предписываемой командой операции. Однако в условиях, когда в современных ЭВМ значительно возросло число выполняемых различных операций и соответственно команд (в компьютерах с CISC-архитектурой более 200 команд) и значительно увеличилась емкость адресуемой основной памяти (32, 64 Мб), это приводит к недопустимо большой длине формата команды. Вместе с тем, для упрощения аппаратуры и повышения быстродействия ЭВМ длина формата команды должна быть по возможности короче, укладываться в машинное слово или полуслово. Решение проблемы выбора формата команды значительно усложняется в микропроцессорах, работающих с коротким словом. Проследим изменения классических структур команд. Чтобы команда содержала в явном виде всю необходимую информацию о задаваемой операции, она должна, как это показано на рис. 3.1 (б), содержать следующую информацию: А1, А2 - адреса операндов, А3 - адрес результата, А4 - адрес следующей команды (принудительная адресация команд).
Рис. 3.1. Структуры команд: а) обобщенная, б) четырехадресная, в) трехадресная, г) двухадресная, д) одноадресная, е)безадресная Такая структура приводит к большей длине команды и неприемлема для прямой адресации операндов основной памяти. В компьютерах с RISC-архитектурой четырехадресные команды используются для адресации операндов, хранящихся в регистровой памяти процессора. Можно установить, как это принято для большинства машин, что после выполнения данной команды, расположенной по адресу К (и занимающей L ячеек), выполняется команда из (K+L)-ой ячейки. Такой порядок выборки команды называется естественным. Он нарушается только специальными командами (передачи управления). В таком случае отпадает необходимость указывать в команде в явном виде адрес следующей команды. В трехадресной команде (рис. 3.1, в) первый и второй адреса указывают ячейки памяти, в которых расположены операнды, а третий определяет ячейку, в которую помещается результат операции. Можно условиться, что результат операции всегда помещается на место одного из операндов, например первого. Получим двухадресную команду (рис. 3.1, г), т.е. для результата используется подразумеваемый адрес. В одноадресной команде (рис. 3.1, д) подразумеваемые адреса имеют уже и результат операции и один из операндов. Один из операндов указывается адресом в команде, в качестве второго используется содержимое регистра процессора, называемого в этом случае регистром результата или аккумулятором. Результат операции записывается в тот же регистр. Наконец, в некоторых случаях возможно использование безадресных команд (рис. 3.1, е), когда подразумеваются адреса обоих операндов и результата операции, например, при работе со стековой памятью. С точки зрения программиста, наиболее естественны и удобны трехадресные команды. Обычно в ЭВМ используется несколько структур и форматов команд разной длины. Приведенные на рис. 3.1. структуры команд достаточно схематичны. В действительности адресные поля команд большей частью содержат не сами адреса, а только информацию, позволяющую определить действительные (исполнительные) адреса операндов в соответствии с используемыми в командах способами адресации. Основные способы адресации Существует два различных принципа поиска операндов в памяти: ассоциативный и адресный. Ассоциативный поиск операнда (поиск по содержанию ячейки) предполагает просмотр содержимого всех ячеек памяти для выявления кодов, содержащих заданный командой ассоциативный признак. Эти коды и выбираются из памяти в качестве искомых операндов. Адресный поиск предполагает, что искомый операнд извлекается из ячейки, номер которой формируется на основе информации в адресном поле команды. Ниже мы будем рассматривать только реализацию адресного принципа поиска операнда. Следует различать понятия исполнительного адреса и адресного кода. Адресный код – это информация об адресе операнда, содержащегося в команде. Исполнительный адрес – это номер ячейки памяти, к которой фактически производится обращение. В современных ЭВМ адресный код, как правило, не совпадает с исполнительным адресом. Таким образом, способ адресации можно определить как способ формирования исполнительного адреса операнда Аи по адресному коду команды Ак. В системах команд современных ЭВМ часто предусматривается возможность использования нескольких способов адресации операндов для одной и той же операции. Для указания способа адресации в некоторых системах команд выделяется специальное поле в команде - «метод» (указатель адресации). В этом случае любая операция может выполняться с любым способом адресации, что значительно упрощает программирование. Адресуемые в командах операнды хранятся в основной памяти (ОП) и регистровой памяти (РП), рисунок 3.2.
Рассмотрим способы адресации, применяемые в современных ЭВМ.
|
|||||||||||
Последнее изменение этой страницы: 2016-08-15; просмотров: 668; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.226.248.124 (0.008 с.) |