Применение алгебры высказываний в информатике

Автор работы: Пользователь скрыл имя, 02 Декабря 2010 в 22:40, курсовая работа

Краткое описание

В теме: «Применение алгебры высказываний в информатике» мы рассмотрим такие вопросы как, что такое алгебра логики, функция в алгебре логики (и её примеры), рассмотрим устройство процессора. А также решим задачу: в бухгалтерии предприятия ООО «Гамма» производится расчёт налоговых вычетов, предоставляемых сотрудникам, и формирование платёжных ведомостей. Стандартный налоговый вычет предоставляется каждому сотруднику в размере 400,00 руб. до тех пор, пока совокупный доход с начала года не превысит 50 000,00 руб., налоговый вычет на ребёнка предоставляется в размере 600,00 руб. НДФЛ – налог на доходы физических лиц (13%) рассчитывается с начисленной суммы за минусом размера налогового вычета, в которой требуется построить таблицы; выполнить расчёт размера налогового вычета, предоставляемого сотрудникам в текущем месяце и результаты этих вычислений представить в виде таблицы; сформировать и заполнить форму расчётной ведомости по заработной плате за текущий месяц и результаты расчёта представить в графическом виде.

Содержание работы

1. Введение стр. 3
2. Теоретическая часть стр. 5
3. Практическая часть стр. 18
4. Список используемой литературы стр. 24

Содержимое работы - 1 файл

Курсовая II курс.doc

— 193.50 Кб (Скачать файл)

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

        P =     (a,b) = 1*a*b + 0*a*b + 0*a*b + 0*a*b = a*b. 

Самой простой  логической операцией является операция НЕ (по-другому отрицание, дополнение или инверсия; обозначают NOT X). Результат отрицания всегда противоположен значению аргумента. Операция Не является унарной, т.е. имеет всего один операнд. В отличии от неё операции И (AND) и ИЛИ (OR) являются бинарными, так как представляют собой результаты действий над двумя логическими величинами.

  Логическое И называют конъюнкцией, или логическим умножением, а ИЛИ – дизъюнкцией, или логическим сложением.

  Операция  И имеет результат «истина»  только в том случае, если оба  её операнда истинны. Например, рассмотрим высказывание «Для установки ОС “Windows’95” требуется процессор не ниже 80386 и не менее 4 Мбайт оперативной памяти». Из него следует, что установка будет успешной только при одновременном выполнении обоих условий: даже если у вас в машине Pentium, но мало ОЗУ, «Windows’95» работать откажется.

  Операция  ИЛИ «менее привередлива» к  исходным данным. Она даёт истину, если значение «истина» имеет  хотя бы один из операндов.  Разумеется, в случае, когда справедливы  оба аргумента одновременно, результат по-прежнему истинный.

  Приведённые  ниже таблицы значений переменных  для логических операций называются  таблицами истинности. В них указываются  всевозможные

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

                                       Основные логические операции

                                           

X Y X AND Y X OR Y
0 0       0      0
0 1       0      1
1 0       0      1
1 1       1      1
X NOT X
0     1
1     0

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

  Операции  И, ИЛИ, НЕ образуют полную  систему логических операций, из  которой можно построить сколь  угодно сложное логическое выражение.

 В вычислительной  технике также часто используется операция, исключающая ИЛИ (XOR), которая отличается от обыкновенного ИЛИ только при X=1 и Y=1.

                             Дополнительные логические операции

X Y X XOR Y NOT (X AND Y)
0 0       0             1
0 1       1              1
1 0       1             1
1 1       0             0

            

   

 

     
 

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

         Схемная реализация элементарных логических операций.

  Любую достаточно сложную функцию можно реализовать, имея относительно простой набор базовых логических операций. Первоначально были разработаны и выпускались микросхемы, соответствующие основным логическим действиям. Потребитель, комбинируя имеющиеся в его распоряжении элементы, мог получить схему с реализацией необходимой логики. Но подобное «строительство здания из отдельных кирпичиков» не может удовлетворить практические потребности. Промышленность начала выпускать более сложные узлы: триггеры, регистры, счетчики, дешифраторы, сумматоры и др. новые микросхемы давали возможность реализовать ещё более сложные электронные логические устройства. Последовал переход к большим интегральным схемам (БИС), представлявшим из себя функционально законченные узлы, а не отдельные компоненты для их создания. Наконец, дальнейшая эволюция технологий производства ИМС привела к настолько высокой степени интеграции, что в одной БИС содержалось функционально законченное изделие: часы, калькулятор, небольшая специализированная ЭВМ…

  Если посмотреть  на внутреннее устройство современного  компьютера , то там присутствуют  ИМС очень высокого уровня  интеграции: микропроцессор, модули  ОЗУ, контроллеры внешних устройств и др. фактически каждая микросхема или небольшая группа микросхем образуют функционально законченный блок.

Обработка информации в ЭВМ происходит путём последовательного  выполнения элементарных операций. Эти  операции менее многочисленны, нежели набор команд ЭВМ. К элементарным операциям относятся: установка – запись в операционный элемент (например, регистр) двоичного кода; приём – передача (перезапись) кода из одного элемента в другой; сдвиг – изменение положения кода относительно исходного; преобразование – перекодирование; сложение – арифметическое сложение целых двоичных чисел и т.д. Для выполнения каждой из этих операций сконструированы электронные узлы, являющиеся основными узлами вычислительных машин – регистры, счётчики, сумматоры, преобразователи кодов и т.д.

 В основе каждой из элементарных операций лежит некоторая последовательность логических действий. Проанализируем, например, операцию сложения двух чисел: 3 и 6. Имеем:

                                                  011

                                                +110

                                                 1011

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

  Для дальнейшего  рассмотрения необходимо знать  условные обозначения базовых  логических элементов.

               Условные обозначения основных логических элементов.

 

          И                    ИЛИ НЕ И-НЕ        исключающее

                                                                                                      ИЛИ 

Простейшие логические элементы, изображённые выше, можно реализовать аппаратно. Это означает, что можно создать электронные устройства на транзисторах, резисторах и т.п., каждый из которых имеет один или два входа для подачи управляющих напряжений и один выход, напряжение на котором определяется соответствующей таблицей истинности. На практике логическому «да» («истина», или цифра 1 в таблицах истинности) соответствует наличие напряжения, логическому «нет» («ложь», или цифра 0) – его отсутствие.

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

  Простейший вариант триггера собирается из четырёх логических элементов И-НЕ, причём два из них играют вспомогательную роль. Триггер имеет два входа, обозначенные на схеме R и S, а также два выхода, помеченные буквой Q – прямой и инверсный (черта над Q у инверсного выхода означает отрицание). Триггер устроен таким образом, что на прямом и инверсном выходах сигналы всегда противоположны.

 Как же работает триггер? Пусть на входе R установлена 1, а на S – 0.логические элементы D1 и D2 инвертируют эти сигналы, т.е. меняют их значения на противоположные. В результате на вход элемента D3 поступает 1, а на D4 – 0. Поскольку на одном из входов D4 есть 0, независимо от состояния другого входа на его выходе (он является инверсным выходом триггера) обязательно установится 1. Эта единица передаётся на вход элемента D3 и в сочетании с 1 на другом входе порождает на выходе D3 логический 0. Итак, при R=1 и S=0 на прямом выходе триггера устанавливается 0, а на инверсном – 1.

                             

                                               Логическая схема триггера. 

                               

 
 
 

                   Таблица истинности RS-триггера.

Обозначение состояния  триггера по договорённости связывается  с прямым выходом. Тогда при описанной выше комбинации входных сигналов результирующее состояние можно условно назвать нулевым: говорят, что триггер «устанавливается в 0» или «сбрасывается. Сброс по-английски называется «Reset», отсюда вход, появление сигнала на котором приводит к сбросу триггера, обычно обозначают буквой R.

  Проведя  аналогичные рассуждения для  «симметричного» случая R=0 и S=1, мы увидим, что на прямом выходе получится логическая 1, а на инверсном – 0. триггер перейдёт в единичное состояние – «установится» (установка по-английски «Set»).

  Теперь рассмотрим  наиболее интересную ситуацию  R=0 и S=0 – входных сигналов нет. Тогда на входы элементов D3 и D4, связанные с R и S, будет подана 1 и их выходной сигнал будет зависеть от сигналов на противоположных входах. Такое состояние будет устойчивым. Пусть, например, на прямом выходе 1. Тогда наличие единиц на обоих вводах элемента D4 «подтверждает» нулевой сигнал на его выходе. В свою очередь, наличие 0 на инверсном выходе передаётся на D3 и поддерживает его выходное единичное состояние. Аналогично доказывается устойчивость картины и для противоположного состояния триггера, когда Q=0.

  Таким образом,  при отсутствии входных сигналов  триггер сохраняет своё «предыдущее»  состояние. Иными словами, если на вход R подать 1, а затем убрать, триггер установится в нулевое состояние и будет сохранять его, пока не поступит сигнал на другой вход S. В последнем случае он перебросится в единичное состояние и после прекращения действия входного сигнала будет сохранять на прямом выходе 1. Из выше сказанного видно, триггер обладает замечательным свойством: после снятия входных сигналов он сохраняет своё состояние, а значит может служить устройством для хранения одного бита информации.

  В заключение  проанализируем последнюю комбинацию  входных сигналов: R=1 и S=1. В этом случае на обоих выходах триггера установится 1! Такое состояние помимо своей логической абсурдности ещё и является неустойчивым: после снятия входных сигналов триггер случайным образом перейдёт в одно их своих устойчивых состояний. Вследствие этого, комбинация R=1 и S=1 никогда не используется на практике и является запрещённой.

  Мы рассмотрели  простейший RS- триггер. Существуют и другие разновидности этого устройства. Все они различаются не столько принципом работы, сколько входной логикой, усложняющей «поведение» триггера.

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

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

  Начнём с изучения логической структуры простейшего возможного устройства, являющегося звеном сумматора. Это устройство – полусумматор – реализует сложение двух одноразрядных двоичных чисел, которые обозначим А и В. В результате получается двухразрядное двоичное число. Его младшую цифру обозначим S, а старшую, которая при сложении многоразрядных чисел будет перенесена в старший разряд, через С0.

  Обе цифры  можно получить по следующим  логическим формулам:

Информация о работе Применение алгебры высказываний в информатике