Логический синтез вычислительных схем

Рассмотрим логический синтез (создание) вычислительных схем на примере одноразрядного двоичного сумматора, имеющего два входа ("а" и "b") и два выхода ("S" и "Р") и выполняющего операцию сложения в соответствии с заданной таблицей:

A B f1(a,b)=S f2(a,b)=P

где f1(a,b)=S - значение цифры суммы в данном разряде;

f2(a,b)=P - цифра переноса в следующий (старший) разряд.

Согласно соотношению (2), можно записать:

S=f1(a,b)=0*a*b+ 1* ā *b+ 1*a*b +0* ā *b= ā *b+ ą*b;

Р =f2(a,b) = 1 *a*b + 0* ā *b + 0*a*b + 0* ā* b = a*b.

Логическая схема сумматора, реализующего полученную функцию, представлена на рис. 4.1.

Логический синтез вычислительных схем - student2.ru

Здесь изображены логические блоки в соответствии с международным стандартом:

Логический синтез вычислительных схем - student2.ru схема ИЛИ, реализующая операцию логического сложения

Логический синтез вычислительных схем - student2.ru схема И, реализующая операцию логического умножения

Логический синтез вычислительных схем - student2.ru схема НЕ, реализующая операцию инверсии

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

2. Для логических схем ИЛИ, И и НЕ существуют типовые технические схемы, реализующие их на реле, электронных лампах, дискретных полупроводниковых элементах. Для построения современных ЭВМ обычно применяются системы интегральных элементов, у которых с целью большей унификации в качестве базовой логической схемы используется всего одна из схем: И НЕ (штрих Шеффера), ИЛИ НЕ (стрелка Пирса) или И ИЛИ НЕ.

ПРОГРАММНОЕ УПРАВЛЕНИЕ ЭВМ

Структура и виды команд

Решение задач на ЭВМ реализуется программным способом, т. е.путем выполнения последовательно во времени отдельных операций над информацией, предусмотренных алгоритмом решения задачи.

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

Алгоритм решения задачи, заданный в виде последовательности команд на языке вычислительной машины (в кодах машины), называется машинной программой.

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

Машинная команда состоит из двух частей: операционной и адресной.

Операционнаячастькоманды это группа разрядов в команде, предназначенная для представления кода операциимашины.

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

По количеству адресов, записываемых в команде, команды делятсяна безадресные, одно-, двух- и трехадресные.

Типовая структура трехадресной команды:

КОП а1 а2 а3

где КОП -код операции;

а1 и а2 - адреса ячеек (регистров), где расположены соответственно первое и второе числа, участвующие в операции;

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

Типовая структура двухадресной команды:

КОП а1 а2

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

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

Типовая структура одноадресной команды:

КОП а1

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

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

Пример 4.13. Поступила представленная на языке символического кодирования команда:

СЛ

Такую команду следует расшифровать так: "сложить число, записанное в ячейке 0103 памяти, с числом, записанным в ячейке 5102, а затем результат (т.е. сумму) поместить в ячейку 0103".

Примечание.В кодах машины такая команда содержит только двоичные цифры записанных выше объектов.

Состав машинных команд

Современные ЭВМ автоматически выполняют несколько сотен различных команд. Например, стандартный набор современных ПК содержит около 240 машинных команд. Все машинные команды можно разделить на группы по видам выполняемых операций:

  • операции пересылки информации внутри ЭВМ;
  • арифметические операции над информацией;
  • логические операции над информацией;
  • операции обращения к внешним устройствам ЭВМ;
  • операции передачи управления;
  • обслуживающие и вспомогательные операции.

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

Операции безусловной передачи управления требуют выполнения после данной команды не следующей по порядку, а той, адрес которой в явном или неявном виде указан в адресной части.

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

Наши рекомендации