Контрольно-курсовая работа по «Дискретная математика»

Федеральное агентство по образованию

 

Тульский  государственный университет 

Кафедра «Автоматизированные станочные системы» 
 
 
 
 
 
 
 
 

Контрольно-курсовая работа

по курсу  «Дискретная математика» 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Выполнил: студ. гр. 620281 Ю. И. Кураева

      ____________

      Проверил: докт. техн. наук, доцент А.Б.Орлов

____________ 
 
 
 
 

Тула 2010 г. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Содержание: 
 

1.Сложение  в шестнадцатеричной, двоичной, восьмеричной  и десятичной системах счисления…………………………………………………………………3стр. 

2.Минимизация  логических функций методами  тождественных преобразований и  S-кубов…………………………………………………………………………6стр.

3.Минимизация  логических функций методом карт  Карно. Построение логических схем………………………………………………………………………..10стр.

4.Построение  графа конченого автомата по общей таблице выходов и переходов. Моделирование работы конечного автомата…………………………...12стр.   
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

1.Сложение  в шестнадцатеричной,  двоичной, восьмеричной  и десятичной системах счисления.   

    1)Вычисления целесообразно начать с шестнадцатеричной системы: 

    16 + B916 

    Вычисление: 

      C+ 9 = 1210 + 9= 2110, поскольку 21>15, требуется перенос в

      старший разряд      

      21 = 1610 + 510  

    С учетом переноса получаем: 

      7+ B + 1 = 1910 , поскольку 19>15, требуется перенос в старший раз

            ряд. 

      1910 = 1610 + 3 

      Получаем  в старшем разряде 1. 

    16+В916=7×161 + 11*161 + 9×160 + 12×160 = 13516=30910 

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

      7= 01112

      С = 11002

      В = 10112

      9=10012 

      7С= 0111 11002

      В916=1011 10012 

      Выполним  сложение, учитывая, что 

      0+0= 0

      1+0= 1

      1+1 =102

      1+1+1 =112 

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

1 1 1 1  
  0 1 1 1 1 1 0 0
+ 1 0 1 1 1 0 0 1
1 0 0 1 1 0 1 0 1
 

      Выполнив  обратный перевод результата в шестнадцатеричную  систему счисления (по тетрадам) можно убедиться в его правильности:

       

      01012 = 5

      00112 = 3

      00012 = 1

      0001 0011 01012 = 13516

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

 

      7С= 0111 11002 = 01  111  1002  

      Из  таблицы получаем: 

      012 = 1

      1112 = 7

      1002=4 

      16 = 1748 

      Аналогично  получим: 

      В916=1011 10012 = 10    111    001 

      102 = 2

      1112 = 7

      0012 = 1 

      В916 = 2718 
 

      Осуществим  поразрядное сложение 1748 + 2718  
 

      В результате получим:

  1    
  1 7 4
+ 2 7 1
  4 6 5
 

      Вычисления  выполняются аналогично шестнадцатеричной  системе 

      4 + 1 = 510 ,

      7 + 7 = 1410 , поскольку 14>7 требуется перенос в старший

        разряд    

       

      1410 = 810 + 6  

      1 + 2+1 = 48 

      Таким образом:  

      1748 + 2718 = 4658 

      Выполним проверку путем перевода результата в двоичную и шестнадцатеричную системы счисления 

       

      58 = 1012

      68 = 1102 

      48 = 1002   

      Отсюда  получим 

      4658 = 100  110   1012 = 0001 0011 01012 = 13516    

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

      7C= 7× 161+12× 160=11210+1610=12410

      B916= 11× 161+9× 160=18510 

      12410+18510=30910 

      13516=110×162+3×16+5×160 =256+48=30910 

      Таким образом, результаты вычислений во всех системах счисления совпали. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

2.Минимизация  логических функций  методами тождественных  преобразований и S-кубов. 

      Логическая функция задана следующей таблицей соответствия: 

  X0 X1 X2 X3 X4 X5 X6 X7
x1 0 0 0 0 1 1 1 1
x2 0 0 1 1 0 0 1 1
x3 0 1 0 1 0 1 0 1
y 0 0 1 1 1 0 1 0
 

      Здесь   аргументы функции, а входные слова – наборы значений аргументов.

      На  основе данной таблицы можно получить аналитическое выражение для логической функции в совершенной дизъюнктивной или конъюнктивной нормальной формах (СДНФ или СКНФ). Элементы СДНФ называют минитермами, а СКНФ – макстермами. СДНФ представляет собой дизъюнкцию минитермов, а СКНФ – конъюнкцию макстермов . Легко обнаружить, что минитерм равен 1 только при одном единственном входном слове, а макстерм равен 0 также только при одном единственном входном слове. Аналитическое выражение функции в форме СДНФ будет содержать конституенты единиц (и только их) для входных слов, при которых функция =1, а в форме СКНФ будет содержать конституенты нулей (и только их) для входных слов, при которых функция =0. При этом, если аргумент во входном слове =1, он входит в конституенту единицы в прямой форме, а в конституенту нуля – в инверсной. И наоборот, если аргумент во входном слове =0, он входит в конституенту нуля в прямой форме, а в конституенту единицы – в инверсной.      

      В результате для заданной функции  можно получить следующие аналитические выражения в форме СДНФ:  

        
 

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

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

     Минимизируем  булевы функции: 

    Начинаем  склеивание входных слов в форме СДНФ: 

       

     Путем склеивания мы получили минмальную форму . 

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

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

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

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

      Рисунок 1 

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

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

        

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

         
 
 
 
 
 
 
 
 
 
 

    В итоге  получаем минимальную функцию .  

      Таким образом, результат минимизации  методом S-кубов проверен тождественными преобразованиями.

3.Минимизация  логических функций  методом карт Карно. Построение логических схем. 

      Методом карт Карно минимизируются функции  с числом переменных до 5 – 6. Карта Карно представляет собой развертку логического пространства на плоскость. Аналогично методу S-кубов на карте также можно выделить области, соответствующие переменным или их инверсиям.

      Минимизируем  с помощью карты Карно функцию, заданную следующей таблицей соответствия:   

  X0 X1 X2 X3 X4 X5 X6 X7 X8 X9 X10 X11 X12 X13 X14 X15
x1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
x2 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
x3 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
x4 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Y 1 1 1 0 1 1 0 0 1 1 1 0 1 1 0 0
 

      Отобразим данную функцию на карте Карно, проставив 1 в ячейки карты, соответствующие  входным словам, при  которых функция =1. Ребрам, граням и кубам на карте Карно соответствуют ортогональные области (блоки  – строки, столбцы, квадраты, прямоугольники) заполненные 2, 4 и 8 единицами.

          
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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

        В результате минимальная форма будет иметь вид: 

        

      Для полученной минимальной формы логическая схема будет иметь вид: 
 
 
 
 
 
 
 
 
 
 
 
 
 

  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

4.Построение  графа конченого  автомата по общей  таблице выходов  и переходов. Моделирование работы конечного автомата.   

      Таблицa состояний и переходов конечного автомата: 
 

  X0 X1 X2 X3    
S0 S1/Y0 S0/Y4 S0/Y1 S1/Y6    
S1 S0/Y1 S2/Y3 S0/Y0 S1/Y2    
S2 S3/Y0 S1/Y1 S1/Y2 S0/Y0    
S3 S2/Y3 S0/Y2 S3/Y5 S2/Y7    
 
 

      В данной таблице указано, какие слова обозначают те или иные элементы таблицы. Построение графа начинается с построения четырех вершин, соответствующих четырем состояниям автомата. Затем построение ведется по строкам таблицы. Из соответствующей вершины для каждого входного слова X в графе проводится соответствующая дуга. Концом дуги будет вершина, соответствующая состоянию, в которое перейдет автомат в следующем такте, если на его вход подано слово X. Около каждой дуги указывается ее вес – в числителе входное слово, при котором произойдет данный переход, а в знаменателе – выходное слово, которое при этом установится.

      Подобное  построение осуществляется для каждого  исходного состояния конечного  автомата (каждой строки).  
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

      Граф  конечного автомата выглядит следующим образом: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

      По  графу осуществляем моделирование работы автомата при подаче на него некоторой последовательности входных слов. Для каждого входного слова и данного состояния по графу определяется выходное слово и состояние в следующем такте S(n+1). Затем процедура повторяется для этого нового состояния и т.д. Таблица моделирования работы автомата приведена ниже: 

n 0 1 2 3 4 5
X(n) X1 X2 X3 X1 X2 X3
Y(n) Y0

Y1

Y1 Y3 Y2 Y2
S(n) S0 S0 S0 S1 S2 S1
             
Контрольно-курсовая работа по «Дискретная математика»