- •Принстонская (фон Неймановская) архитектура
- •Учебная машина ум-3
- •Память ум-3
- •Проблема начальной загрузки программы
- •Пример программы для учебной машины
- •Логические основы эвм. Реализация арифметических и логических операций в эвм
- •Операция исключающее «или»
- •Алгоритм построения сднф по таблице истинности
- •Алгоритм построения скнф по таблице истинности
- •Полусумматор и сумматор
- •Полный сумматор
- •Каскадный сумматор
- •Триггер как элемент памяти. Схема rs-триггера
Логические основы эвм. Реализация арифметических и логических операций в эвм
Аппаратура современных ЭВМ, если не учитывать оперативную память, конструируется из некоторых относительно простых элементов, называемых в русскоязычной литературе вентилями (по-английски – circuits). Каждый вентиль является достаточно простой (электронной) схемой и реализует одну из логических операций, у него есть один или два входа (аргументы операции) и один выход (результат). На входах и выходе могут быть электрические сигналы двух видов: низкое напряжение (трактуется как ноль или логическое значение false) и высокое (ему соответствует единица или логическое значение true). Обычно напряжение менее 1 вольта трактуется как логический ноль, а напряжение более 2 вольт – как логическая единица. Основные вентили у нас будут следующие:
1. Отрицание, этот вентиль имеет один вход и один выход, он реализует операцию отрицания not (НЕ). Другими словами, если на вход такого вентиля подаётся импульс высокого напряжения (значение true), то на выходе получится низкое напряжение (значение false) и наоборот.
2. Дизъюнкция или логическое сложение, этот вентиль реализует операцию or (ИЛИ).
3. Конъюнкция или логическое умножение, этот вентиль реализует операцию and (И).
Вентиль – это устройство, которое выдает результат логической (булевой) операции над битами.
Схематически вентили представляются с использованием следующих обозначений:
NOT |
AND |
OR |
XOR |
|
|
|
|
или, чаще, прямоугольником с указанной внутри операцией:
Любую логическую функцию можно преобразовать к эквивалентному виду, в котором используются только три перечисленные выше логические операции. Говорят, что функция имеет нормальную форму, если в ней отсутствуют знаки эквивалентности, импликации, двойного отрицания, при этом знаки отрицания находятся только при переменных.
Операция исключающее «или»
Исключающее «ИЛИ», сложение по модулю 2, XOR, логическое сложение, строгая дизъюнкция, поразрядное дополнение, побитовый комплемент — такое количество названий говорит о важности этой операции. Для двух переменных результат выполнения операции является истинным тогда и только тогда, когда лишь один из аргументов является истинным. Приоритет операции такой же, как у дизъюнкции |
Таблица истинности
|
Название операции «исключающее ИЛИ» обусловлено тем, что результат данной операции отличается от результата «ИЛИ» только в одном случае из четырех случаев входа — случай одновременной истинности обоих аргументов «исключается». Ещё в русской грамматике значение данной логической связки передаётся союзом «либо». Обозначение , конечно, короче.
Пример. Докажите, что операция xor является обратимой: (A xor B) xor B = A. Составим таблицу истинности
x |
y |
x XOR y |
(x XOR y) XOR y |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
0 |
1 |
В Си операция ^ - побитовое исключающее ИЛИ. Например, результатом выполнения операции 65^98 будет число 35, потому что 1000001 ^ 1100010 = 0100011 = 25 + 2 + 1 = 35. Однако логической операции исключающего ИЛИ в Си нет. Операцию надо будет представить в нормальной форме.
http://neerc.ifmo.ru/wiki/index.php?title=Категория:Булевы_функции
