Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
INFORMATIKA_2009.doc
Скачиваний:
415
Добавлен:
15.02.2016
Размер:
23.21 Mб
Скачать

Основные законы алгебры логики

Закон

для логического ИЛИ

для логического И

коммутативность

AB=BA

AB=BA

ассоциативность

A(BC)=ABC

A(BC)=ABC

дистрибутивность

A(BC) = (AB)(AC)

A(BC)=(AB)(AC)

двойственность

(AB) = AB

(AB) = AB

идемпотентность

AA = A

AA = A

поглощение

A(AB) = A

A(AB) = A

cклеивание

(AB)(AB) = B

(AB)(AB) = B

A(AB) = AB

A(AB) = AB

операция переменной с ее инверсией

AA = 1

AA = 0

операция с константами

A1 = 1, A0 = A

A1 = A, A0 = 0

отрицание констант

1 = 0, 0 = 1

двойное отрицание

(A)=A

Пример 1:упростить формулу(AB)(AB)

Решение:

(AB)(AB) = (AB)(AB) = ABAB =

двойственность ассоциативность коммутативность

AABB = 0B = 0 .

операция с инверсией, идемпотентность, операция с константой

Пример 2:упростить формулуA(BC)(ABC)

Решение:

A(BC)(ABC) = A(BC)(ABC) =

двойственность двойное отрицание

ABC(ABC) = AB(C(ABC)) =

ассоциативность коммутативность

AB(C(CAB)) = AB(C(C(AB))) =ABC .

ассоциативность поглощение

Пример 3:Составить логические выражения, истинные только при выполнении указанных условий

а) x принадлежит отрезку [a,b].

Ответ: (x >= a) (x <= b)

б) x лежит вне отрезка [a,b].

Ответ: (x < a) (x > b).

в) x лежит выше прямой y = -x во второй и четвертой четвертях прямоугольной системы координат.

Ответ: (y > -x) (x < 0y < 0).

Пример 4:Для какого числа X истинно высказывание

(X>2) → (X>5) ?

Решение:

Составим таблицу истинности (табл. 2.11) для (X>2) → (X>5)

Проанализируем те строки, где импликация истинна. При этом значения аргументов зададим неравенствами (табл. 2.12).

Таблица 2.11

Таблица истинности примера 4

X>2

X>5

(X>2) → (X>5)

0

0

1

0

1

1

1

0

0

1

1

1

Таблица 2.12

Таблица решения примера 4

Аргументы

Функция

Общая область аргументов

X<=2

X<=5

1

X<=2

X<=2

X>5

1

X>2

X>5

1

X>5

Таким образом, область значений X, при которых импликация истинна, будет: (X <= 2)(X > 5).

Физическое представление логических операций. Описания конечных автоматов и формальных грамматик

Техническое воплощение логических операций получило название комбинационныхилипереключательных схем. Как отмечалось выше логические состояния «1» и «0» задаются в компьютерах и системах связи в виде наличия или отсутствия тока в электронных цепях.Переключательную схемуможно получить путем последовательного соединения элементарных электрических цепей с контактами (электрическими выключателями), которые могут замыкать или размыкать электрическую цепь. Возможно следующее представление элементарных логических операций с помощью цепей и контактов (Рис 2.1).

Рис 2.1. Представление элементарных логических операций с помощью электрических цепей с контактами

Более сложные переключательные схемы, реализующие более сложныелогические выражения, можно технически получать путем последовательного присоединения выходов одних электрических цепей элементарных логических схем к входам других электрических цепей реализующих другие элементарные логические схемы. Если комбинационная схема имеет конечное множество входных логических состоянийx,y,z…и одно единственное выходное состояние q, то описанный процесс последовательного подсоединения элементарных логических схем соответствует процессу построения логической формулыf(x,y,z…) с помощью операций, реализуемых используемыми электрическими цепями (элементарными логическими схемами). С помощью таких комбинационных логических схем и соответствующим им электрическим цепям технически реализуются устройства хранения, перемещения и осуществления не только логических операций над символами, но и арифметических операций над цифрами. Они образуют, так называемые, триггеры, регистры, сумматоры. Эти технические конструкции образуют те самые специальные устройства, из которых и состоит компьютер. Так устройства для хранения данных состоят из регистров и называютсяпамятью. Устройства для осуществления логических и арифметических операций над данными, состоящие из регистров и сумматоров называютсяарифметически–логическими устройствами (АЛУ).Особая разновидность этих устройств называетсяустройствами управления (УУ), ибо логические операции, осуществляемые ими, направлены на управление потоками данных компьютере.

Важной особенностью подобных устройств является то, что их внутренние логические состояния(логические переменные) изменяются с течением времени под воздействиемвходных воздействий(тоже логических состояний), физически представляемых в виде наличия или отсутствия тока в цепи. Эти входные воздействия иногда называютвходными сигналами(x,y,z…..). Напомним, что эти устройства имеют ивыходное логическое состояние, которое называетсявыходным сигналом(q).

Для математического описания подобных устройств вводятся специальные обозначения. Множество входных сигналовобозначается какU, черезQ - множество выходных сигналов, а черезX - множество внутренних состояний. Для описания изменений во времени удобно ввести понятие дискретного времени. На оси времени отмечаются моменты, в которые входной сигнал может претерпевать изменения. Эти отдельные моменты времени удобно представлять в виде последовательности неотрицательных целых чиселn=0,1,2…. В информатике такие последовательности называюттактами. Уравнение, описывающее работу комбинационной схемы во времени можно записать в видеQ(n)=f(X(n)). Математическое описание комбинационных схем с учетом их внутренних состояний и эволюции этих состояний во времени под воздействием входных сигналов называетсяконечным автоматоми задается совокупностью пяти величинA=(U,Q,X,f,φ). Здесьf:X∙U→X–функция переходов,φ:X∙U→Q-функция выходов. Функции переходов и выходов обычно задаются соответствующими таблицами или с помощью специальных графиков -направленных графов. Вершины графов изображаемые в виде кружочков, определяют состояния автомата, дуги указывают переходы автомата из одного состояния в другое под воздействием входного сигнала. В скобках указывается выходной сигнал.

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

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

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

На этом изучение первоначальных сведений о логических операциях над символами заканчивается. Еще раз подчеркнем, что операции подобного типа и осуществляются в компьютере. Напомним, что арифметические операции над цифрами представляют собой лишь особый случай операций. Поэтому знание сути операций необходимо и для описания работы компьютера (главным образом при описании двоичной арифметики) и для практической работы с программными приложениями. Более того, работа со многими, наиболее популярными и доступными пользовательскими программными продуктами тоже предполагает знание сути логических операций (например - работа с программой EXCEL).

В заключении еще раз перечислим основные операции математической логики и двоичной арифметики :

  • Это логические операции: логическое сложение (дизъюнкция, логическое «ИЛИ»), логическое умножение (конъюнкция, логическое «И»), логическое отрицание (инверсия, логическое «НЕ»), логическое следование (импликация), логическая эквивалентность.

  • Поразрядные логические операции.

  • Это арифметические операции: двоичное сложение, двоичное умножение.

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

Системы счисления

Как отмечалось в Главе 1, описание предметной области первоначально дается на естественном языке. Естественный язык характеризуетсянабором знаков (знаковая система).

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

Ряд явлений окружающего нас мира, которые носят количественный характер, потребовал введения специального языка для описания понятия числа. Язык чисел, как и обычный язык, имеет свойалфавит, состоящий из специальных знаков получивших названиецифр. Алфавит может содержать любое заранее определенное числоцифр. Так язык чисел, которым сейчас пользуются практически на всем земном шаре (за исключением арабских стран), имеет алфавит, в котором десять цифр, от 0 до 9. Этот язык (форма представления чисел) называетсядесятичной системой счисления.

Система счисления – это знаковая система, в которой числа записываются по определенным правилам с помощью символов некоторого алфавита, называемых цифрами.

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

В непозиционныхсистемах вес цифры (т.е. тот вклад, который она вносит в значение числа) не зависит от ее позиции в записи числа. Из-за отсутствия зависимости веса цифры от ее позиции, непозиционная система не находит применения в машинных расчетах.

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

Так, в развернутой форме запись числа 888,8 в десятичной системе будет выглядеть следующим образом 888,810=8·102+8·101+8·100+8·10-1 .

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

В общем случае в системе счисления с основанием pзапись числа Аpпроизводится следующим образом:

Ap=an·pn+…+a0·p0+a-1·p-1+…+a-m·p-m,

где n+1 – число целых разрядов,m– число дробных разрядов, коэффициентыaiявляются цифрами, принадлежащими алфавиту системы счисления с основаниемp.

Теоретически за основание системы можно принять любое натуральное число – два, три, четыре и т.д. Практически, наряду с десятичной используются системы с основанием, являющимся целой степенью числа 2 (Табл. 2.13)

Таблица 2.13

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]