WWW.DISSERS.RU

БЕСПЛАТНАЯ ЭЛЕКТРОННАЯ БИБЛИОТЕКА

   Добро пожаловать!


Pages:     | 1 |   ...   | 2 | 3 || 5 | 6 |   ...   | 24 |

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

В качестве формального языка для описания данных и про­грамм их обработки на микроЭВМ используются не только машинный язык, но и специальные языки программирования, такие как, например, БЕЙСИК. Программа на таком языке, называемом иногда языком высокого уровня, не может непо­средственно восприниматься микропроцессором. В совершен­ных ЭВМ специальная программа, называемая интерпретатором или компилятором, преобразует программу на языке высоко­го уровня в эквивалентную ей программу на языке машины.

Программа, написанная на языке Ассемблер, переводится пользователем в машинные восьмеричные коды с помощью таблицы кодов (табл. 4.1 — 4,3) и вводится вместе с данными также в восьмеричных кодах в ПМЭВМ с клавиатуры и разме­шается в оперативном запоминающем устройстве, в котором выделяется специальная область, где пользователь может раз­местить свою программу.

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

Программа для ПМЭВМ представляет собой последователь­ность указанных кодов, из которых левый код — адрес ячей­ки памяти, а правый — команда или данные.

Предположим, что соответствующие программе и исходным данным найденные коды введены в ПМЭВМ, На чем основаны процессы преобразования всей этой информации в машине? 3.2. ОСНОВНЫЕ ЛОГИЧЕСКИЕ ОПЕРАЦИИ Любое преобразование кодов в машине основано на выполнении над ними логических опера­ций. К логическим относятся операции над наборами двоичных (принимающих только значения 0 и 1) аргументов, в результате выполнения которых получают единственное значение: 0 или 1. Логические операции могут быть описаны с помощью специаль­ных функций, принимающих 0 и 1 на наборах двоичных пере­менных и называемых булевыми функциями. Число всевозможных булевых функций от п переменных равно 2 и, следова­тельно, растет очень быстро с ростом п. Для двух переменных число всех булевых функций равно 16, а для одной перемен­ной — 4. Функции одной и двух переменных играют важную роль в теории переключательных схем (схем, реализующих логические преобразования дискретных сигналов).

Таблица 3. Значение аргумен­та Значения функций X f f f f Множество всех булевых функций от и переменных может быть описано конечной таблицей, число строк которой рав­но 2", а число столбцов — 22. Например, все четыре булевы функции от одной переменной могут быть описаны табл. 3.2.

Первые две функции не требуют для своей реализации спе­циальных аппаратурных затрат, так как первая f1 (носящая название "константа 0") соответствует разрыву цепи передачи сигнала, а вторая f2 ("константа 1") — постоянному соедине­нию. Третья функция f3 носит название "функции повторе­ния" (имеется в виду повторение значения аргумента), а по­следняя f4 — "функции отрицания", или "функции инверсии".

В электрических цепях элемент, называемый буфером и слу­жащий для развязки цепей и согласования нагрузок, может реализовывать функцию f3, а так называемый инвертирую­щий буфер — функцию инверсии f4. Функцию f3 могут выпол­нить два последовательно включенных инвертора, т. е. элемен­ты, реализующие функцию инверсии сигнала f4. Это свойство инвертора использовано в схеме буфера шины адреса ПМЭВМ (см. §6.3).

Рис. 3.1. Схемные обозначения буфера (а) и инвертора (б) Рис. 3.2. Схемные обозначения:

а — элемента И; б — элемента ИЛИ; в элемента ИНЕ; г элемента И ЛИНЕ; д — элемента ИСКЛЮЧАЮЩЕЕ ИЛИ Схемное обозначение буфера приведено на рис. 3.1,а, а ин­вертора — на рис. 3.1,6. Инвертор является весьма распростра­ненным элементом логических схем, поскольку входит в со­став других логических элементов, реализующих более слож­ные булевы функции. На схеме рис. 3.1 приведены по два схем­ных обозначения буфера и инвертора. Первое обозначение ис­пользуется в основном в англоязычной литературе, второе — в отечественной и рекомендовано ГОСТ.

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

Функция f5 носит название функции логического умноже­ния (конъюнкции), или функции И. Она реализуется с по­мощью логического элемента, называемого схемой И. Графическое обозначение этого элемента приведено на рис. 3.2,а. К особенностям работы элемента И относится то, что сигнал на его выходе, соответствующий логической единице, появля­ется только в том случае, если аналогичные сигналы присутст­вуют одновременно на его двух входах. Если же хотя бы на одном входе элемента И сигнал нулевой, выход также прини­мает значение 0. Понятие функции (схемы) И естественным образом расширяется на п переменных (входов).

Функция f6 носит название функции логического сложения (дизъюнкции), или функции ИЛИ. Она реализуется с помощью логического элемента, называемого схемой ИЛИ. Графическое обозначение элемента ИЛИ приведено на рис. 3.2,6. В отличие от схемы И на выходе элемента ИЛИ единичный сигнал появля­ется при наличии аналогичного сигнала на любом входе. И толь­ко если на обоих входах элемента ИЛИ присутствуют нулевые сигналы, на его выходе формируется тоже нулевой сигнал. Аналогичным образом вводится понятие ивходового элемен­та ИЛИ.

Таблица 3. Значения аргументов Значения функций X Х f f f f f Значения функции f7 противоположны значениям функции f на одних и тех же наборах входных сигналов. Поэтому функ­ция f7 называется функцией ИНЕ. Графическое обозначение соответствующего элемента дано на рис. 3.2,в. Его название элемент ИНЕ.

Значения функции f8 противоположны значениям функ­ции f6 на одних и тех же наборах. Поэтому функция f8 носит название функции ИЛИНЕ. Она реализуется элементом с тем же названием, представленным на рис. 3.2,г.

Наконец, последняя функция f9 отличается от функции fб значением выходного сигнала на последнем наборе. Эта функ­ция называется логической неравнозначностью или суммой по модулю 2. Выходной сигнал у соответствующего элемента, реализующего эту функцию (рис. 3.2,д), принимает значение, равное 1, в том и только в том случае, когда сигналы на его входах имеют противоположные значения. Элемент, реализую­щий функцию сложения по модулю 2, является одним из основ­ных логических элементов схемы микропроцессорного блока микроЭВМ, поскольку, как мы увидим в дальнейшем, он явля­ется базой построения всех суммирующих схем. Кроме того, если выход элемента, реализующего функцию сложения по модулю 2 (другое название этого элемента ИСКЛЮЧАЮЩЕЕ ИЛИ), подать на вход инвертора, то на выходе последнего сиг­нал l будет формироваться только при условии совпадения значений сигналов на входах элемента ИСКЛЮЧАЮЩЕЕ ИЛИ. Такой схемой можно воспользоваться для сравнения значений двух одноразрядных чисел. Эта операция в микроЭВМ исполь­зуется очень часто.

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

С помощью комбинационных элементов в ЦГО микроЭВМ реализуются все основные логические операции над 8разрядны­ми словами данных и 16разрядными словами адресов. К ним относятся операции поразрядного логического умножения (по­разрядное И), сложения (поразрядное ИЛИ), инвертирования (поразрядное НЕ), сравнения. С их помощью реализуются арифметические операции (см. § 3.3). Однако многие из этих операций были бы практически невыполнимы, если бы схема обработки двоичных сигналов не содержала специальных уст­ройств для временного хранения данных.

К таким устройствам принадлежат регистры. Они состоят из элементов, число которых (или длина регистра) равно числу двоичных разрядов поступающих на них данных. Каждый эле­мент способен сохранить на своем выходе значение поступив­шего и затем пропавшего входного сигнала до тех пор, пока не возникнет необходимость сохранения вновь поступившей ин­формации. Эти элементы, называемые триггерами, относятся не к комбинационным схемам, а к схемам с памятью. Триг­гер — это схема с двумя устойчивыми состояниями: ВКЛЮЧЕ­НО, обозначаемое 1, и ВЫКЛЮЧЕНО, обозначаемое 0. Распро­страненным типом триггера является триггер с двумя входами, обозначаемыми R и S. Такой тип триггера носит название RSтриггера. Вход R (Reset — очистка) предназначен для пере­вода триггера в состояние 0, или, как говорят, для очистки триггера. При появлении сигнала на этом входе триггер перево­дится в состояние 0, если до этого он находился в состоянии 1, или остается в состоянии 0, если до этого он находился в со­стоянии 0. Вход S (Set — установка) предназначен для перевода триггера в состояние 1, или, как говорят, для установки триг­гера.

При появлении сигнала на этом входе триггер переводится в состояние 1, если до этого он находился в состоянии 0, или остается в состоянии 1, если до этого он находился в состоя­нии 1. Сигнал, переводящий триггер в то или иное состояние, может быть как единичным (в этом случае вход называется прямым) или нулевым (вход называется инверсным). Так, например, в схеме К155ТМ2 (см. гл. 5) сигналы сброса и уста­новки имеют нулевые значения. В этой схеме триггер остается в состоянии 0 и в том случае, если значение сигнала изменится с 0 на 1. Перевести его в состояние 1 можно только подачей сигнала 0 на вход S (Set — установка). Состояние 1 триггер будет также сохранять при изменении значения сигнала на входе S на единичное.

Триггер типа RS является далеко не единственным и даже не наиболее применяемым в схемотехнике дискретных уст­ройств. Более распространенным, например, является Dтриггер. Он имеет два входа: D и С. Вход D является информацион­ным, а С — управляющим. Сигнал со входа D переписывается в триггер только при наличии определенного сигнала на управ­ляющем входе С. Некоторые триггеры, реализованные в виде микросхем, имеют входы, соответствующие как RSтриггеру, так и Dтриггеру, и могут быть использованы как триггеры любого из указанных двух типов.

Состояние триггера однозначно соответствует сигналу на выходе, который называется прямым выходом. Кроме пря­мого выхода у триггера имеется так называемый инверсный выход, значение сигнала которого всегда противоположно значению сигнала прямого выхода. Это позволяет, например, иметь на выходах регистра, состоящего из восьми триггеров, одновременно прямой и обратный коды вводимого 8разряд­ного двоичного числа.

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

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

Итак, в самом общем случае регистры позволяют осущест­вить следующее:

1) хранить поступившую на них двоичную информацию в течение необходимого времени;

Pages:     | 1 |   ...   | 2 | 3 || 5 | 6 |   ...   | 24 |




© 2011 www.dissers.ru - «Бесплатная электронная библиотека»

Материалы этого сайта размещены для ознакомления, все права принадлежат их авторам.
Если Вы не согласны с тем, что Ваш материал размещён на этом сайте, пожалуйста, напишите нам, мы в течении 1-2 рабочих дней удалим его.