Камчатский государственный технический университет
Кафедра информационных систем
С.Г. Бильчинская
ВЫЧИСЛИТЕЛЬНЫЕ СИСТ...
12 downloads
254 Views
483KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Камчатский государственный технический университет
Кафедра информационных систем
С.Г. Бильчинская
ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ, СЕТИ И ТЕЛЕКОММУНИКАЦИИ Методические указания для выполнения контрольной работы для студентов заочной формы обучения специальности 351400 «Прикладная информатика (в экономике)»
г. Петропавловск-Камчатский, 2006
С. Г. Бильчинская Вычислительные системы, сети и телекоммуникации. Методические указания для выполнения контрольной работы для студентов заочной формы обучения специальности 351400 «Прикладная информатика в экономике»
Методические указания составлены в соответствии с требованиями к обязательному минимуму содержания основной образовательной программы подготовки специалиста по специальности 351400 «Прикладная информатика в
экономике»
государственного
образовательного
стандарта
высшего
профессионального образования. Рекомендовано к изданию решением президиума учебно-методического совета КамчатГТУ (протокол № от ___ ____________ 2006 г.).
2
Содержание дисциплины 1. Физические основы вычислительных процессов. Основы построения и функционирования вычислительных машин: общие принципы построения и архитектуры вычислительных машин, информационнологические основы вычислительных машин, их функциональная и структурная организация, память, процессоры, каналы и интерфейсы ввода вывода, периферийные устройства, режим работы, программное обеспечение. 2. Архитектурные особенности и организация функционирования вычислительных машин различных классов: многомашинные и многопроцессорные вычислительные системы, типовые вычислительные структуры и программное обеспечение, режимы работы. 3. Классификация и архитектура вычислительных сетей, техническое, информационное и программное обеспечение сетей, структура и организация функционирования сетей (глобальных, региональных, локальных). 4. Структура и характеристики систем телекоммуникаций: коммутация и маршрутизация телекоммуникационных систем, цифровые сети связи, электронная почта. 5. Эффективность функционирования вычислительных машин, систем и сетей телекоммуникаций; пути ее повышения. 6. Перспективы развития вычислительных средств. Технические средства человеко-машинного интерфейса.
Литература: 1. 2. 3. 4. 5.
Основная Пятибратов А.П., Гудыно Л.П., Кириченко А.А. Вычислительные системы, сети и телекоммуникации. Учебник для ВУЗов под ред. А.П. Пятибратова. – М.: Финансы и статистика, 1998. Пятибратов А.П. и др. Вычислительные машины, системы и сети. Учебник для ВУЗов под ред. А.П. Пятибратова. – М.: Финансы и статистика, 1991. Каган Б.М. Электронные вычислительные машины и системы. Учебное пособие для ВУЗов. - 3-е изд., перераб. и дополн. М. : Энергоатомтиздат. 1991. Компьютерные сети. Принципы, технологии, протоколы/ В.Г.Олифер, Н.А.Олифер.- СПб.:Издательство «Питер», 2000.-672с. Браммер Ю.А. Импульсные и цифровые устройства Высшая школа,2003г.
Дополнительная 1. Локальные вычислительные сети. Справочник под ред. С.В. Назарова в 3-х книгах. – М.: Финансы и статистика, 1994 (кн. 1 и 2), 1995 (кн. 3). 2. Блэк Ю. Сети ЭВМ; протоколы, стандарты, интерфейсы. Перевод с англ. – М.: Мир, 1990. 3
3. Организация локальных систем на базе персональных компьютеров. – М.: ИВК – Софпо, 1991. – 190 с. 4. Протоколы информационно-вычислительных сетей: Справочник/С.А. Аничкин, С.А. Белов, А.В. Берштейн и др.; Под ред. И.А. Мизина, А.П. Кулешова. – М.: Радио и связь, 1990. – 504 с. 5. Технология электронных коммуникаций. – Т. 25. Сети NETWARE: телекоммуникации и базы данных. – М.: Экотрендз, 1992. – 218 с. 6. Фролов А.В., Фролов Г.В. Локальные сети персональных компьютеров. – М.: Диалог – МИФИ, 1993. – 174 с. 7. Черняк Н.Г., Буравцева И.Н., Пушкина Н.М. Архитектура вычислительных систем и сетей. – М.: Финансы и статистика, 1986. – 320 с. 8. Гагин А. Сервисы Интернет – практическое рассмотрение. – М.: Jet Infosystems, 1996. 9. Якубайтис Э.А. Информационные сети и системы. – М.: Радио и связь, 1996. 10. Бэрри Нанс. Компьютерные сети. Перевод с англ. – М.: Восточная книжная Компания, 1996. – 400 с. 11. Стэн Шатт. Мир компьютерных сетей. Перевод с англ. – М.: BHV, 1996. – 288 с. 12. Хоникатт Джерри. Использование Internet. 2-е издание. Перевод с англ. – К.: Диалектика. 1997. – 304 с. 13. Мартин Дж. Вычислительные сети и распределенная обработка данных. / Пер. с англ. - Вып. 1 - М.: Финансы и статистика, 1985. - 256 с. 14. Мартин Дж. Вычислительные сети и распределенная обработка данных. / Пер. с англ. - Вып. 2 - М.: Финансы и статистика, 1986. - 249 с. 15. Построение сетей ЭВМ. Пер. с япон. /Като М., Иимура Д., Токоро М.,Тома Е. - М.: Мир 1988. - 307 с. 16. Дженингс Ф. Практическая передача данных: модемы, сети, протоколы. Пер. с англ. М.: Мир 1989. - 272 с. 17. Вычислительные сети и сетевые структуры: Пер. с англ. / Девис Д., Барбер Д., Прайс У., Соломанидес С. - М.: Мир 1982. - 562 с. 18. Крейг Хант. Персональные компьютеры в сетях TCP/IP: Пер. с англ.К.:Издательская группа BHV, 1997.-384с. 19. Сетевые средства Microsoft Windows NT Server 4.0: пер. с англ.-СПб.:BHV1997.-880с.
4
Список вопросов, вынесенных на экзамен. 1. 2. 3. 4. 5.
Понятие архитектуры ЭВМ? Технические характеристики выбора ЭВМ? Основные тенденции развития ЭВМ. Понятие машинного парка. Основные принципы построения ЭВМ. Система счисления. Правила перевода чисел из одной системы счисления в другую. Представление чисел в различных форматах. Примеры выполнения арифметических операций над числами в различных форматах. 6. Логические функции. Минимизация логических выражений. Связь логических выражений и схем ЭВМ. 7. Классификация элементов и узлов ЭВМ. 8. Назначение триггеров. Принципы построения дешифраторов и шифраторов. 9. Функциональная организация ЭВМ. 10. Взаимодействие устройств ЭВМ при выполнении процессорных операций. 11. Интерпретатор и компилятор 12. Виртуальная память. Режим прерываний. 13. Виды интерфейсов в ЭВМ. 14. Прямой доступ к памяти. 15. Классификация и архитектура вычислительных систем. 16. Основные сведения о телекоммуникационных системах. 17. Протоколы передачи данных. 18. Коммутация в сетях. Маршрутизация пакетов в сетях. 19. Методы защиты от ошибок. 20. Типы и характеристики ЛВС. Протоколы передачи данных и методы доступа к передающей среде в ЛВС. 21. Сетевое оборудование и программное обеспечение ЛВС. 22. Режим асинхронной передачи данных в ЛВС. 23. Управление локальными сетями. 24. Показатели эффективности ТВС. 25. Протоколы обмена данными в сетях. 26. Дисциплины обслуживания запросов пользователей сетей.
5
Контрольная работа. Задание №1. Даны два числа a и b в десятичной системе счисления. Перевести a и b в двоичную, восьмеричную и шестнадцатеричную системы счисления. Выполнить операции сложения и вычитания в двоичной, восьмеричной и шестнадцатеричной системах счисления. Перевести полученные результаты в десятичную систему счисления и проверить результат. Вариант* а b 0 83 41 1 79 46 2 68 53 3 94 38 4 31 24 5 72 57 6 99 30 7 87 25 8 90 47 9 82 66 ∗ - вариант выбирается в соответствии с последней цифрой номера зачетной книжки. Задание №2. Перевести число a, представленное в десятичной системе счисления, в двоичную, восьмеричную и шестнадцатеричную системы счисления с точностью до 5 знака. Вариант а 0 35,74 1 47,33 2 15,8 3 18,33 4 12,81 5 65,57 6 10,49 7 14,67 8 9,59 9 27,83
6
Задание №3. Два числа a и b, представленные в десятичной системе счисления, представить в упакованном и распакованном форматах: Вариант* а b 0 1755 -907 1 1133 -598 2 1936 -419 3 -1409 187 4 -1723 213 5 1596 -246 6 -1700 344 7 -1055 863 8 1852 -275 9 -1415 569 Задание №4. Два числа a и b, представленные в десятичной системе счисления, представить в формате с фиксированной запятой с точностью до 5 знака. Вариант* а b 0 -0,11 0,75 1 0,89 -0,76 2 -0,63 0,78 3 -0,17 0,72 4 0,47 -0,12 5 -0,15 0,66 6 0,36 -0,72 7 0,82 -0,33 8 -0,77 0,85 9 -0,13 0,61 Задание №5. Два числа a и b, представленные в десятичной системе счисления, представить в формате с плавающей запятой с точностью до 5 знака. Вариант* а b 0 -125,21 0,09 1 105,37 -0,14 2 92,59 -0,34 3 -87,26 0,19 4 56,42 -0,27 5 -130,19 0,41 6 -127,32 0,13 7 -102,33 0,15 8 -68,45 0,22 9 58,17 -0,37 7
Задание №6. Найти сумму чисел А и В в обратном и дополнительном кодах: Вариант* А В 0 32 -12 1 21 -18 2 44 -20 3 24 -11 4 -75 25 5 -52 31 6 -41 13 7 -16 11 8 -27 18 9 31 -17 Задание №7. Составить СКНФ и СДНФ функции, заданной в виде таблицы: Вариант X1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 X2 0 0 0 0 1 1 1 1 0 0 0 0 1 1 X3 0 0 1 1 0 0 1 1 0 0 1 1 0 0 X4 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 F 0 1 1 1 0 0 0 0 0 1 1 0 0 1 1 F 0 1 0 1 0 1 1 1 0 0 0 0 0 1 2 F 1 1 0 0 1 1 0 0 1 1 1 0 1 0 3 F 1 1 0 0 1 1 0 0 0 0 0 0 1 1 4 F 0 0 0 0 1 1 0 0 1 1 0 0 1 1 5 F 0 0 0 0 1 1 0 0 0 1 1 1 1 0 6 F 1 1 0 0 0 0 0 1 1 0 1 1 0 0 7 F 1 0 0 1 0 0 0 1 0 0 1 1 1 1 8 F 1 1 1 0 0 0 1 1 0 0 0 0 0 0 9 F 1 1 1 1 0 0 1 0 0 0 0 0 1 1 Найти МКНФ, используя метод Квайна. Найти МДНФ, используя метод Квайна – Мак Класки. Составить логическую схему.
8
1 1 1 0 0 1 0 1 0 1 1 0 1 1
1 1 1 1 1 1 1 1 0 1 1 1 1 1
Рекомендации для выполнения контрольной работы В двоичной системе счисления основание системы счисления q = 2. Таким образом, для записи цифр разрядов требуется набор всего лишь из двух символов – 0 и 1. Следовательно, в двоичной системе счисления число представляется последовательностью символов 0 и 1. При этом запись 11011,1012 соответствует в десятичной системе счисления следующему числу: 11011,1012 = (1⋅24 + 1⋅23 + 0⋅22 +1⋅21 +1⋅20 +1⋅2-1 + 0⋅2-2 +1⋅2-3)10 = 27,62510 В восьмеричной системе счисления основание системы счисления q = 8. Следовательно, для представления цифр разрядов должно использоваться восемь разных символов, в качестве которых выбраны 0, 1, 2, 3, 4, 5, 6, 7. Символы 8 и 9 здесь не используются и в записи чисел встречаться не должны!!! Например, записи 735,468 в десятичной системе счисления соответствует следующее число: 735,468 = (7⋅82 + 3⋅81 + 5⋅80 + 4⋅8-1 + 6⋅8-2)10 = 477,5937510 В шестнадцатеричной системе счисления основание системы счисления q = 16 и для записи цифр разрядов должен использоваться набор из 16 символов: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. В этом наборе используются 10 арабских цифр и шесть начальных букв латинского алфавита. При этом символу А в десятичной системе счисления соответствует 10, В – 11, С – 12, D – 13, E – 14, F – 15. Запись AB9,C2F16 соответствует следующему числу в десятичной системе счисления: AB9,C2F16 = (10⋅162 + 11⋅161 + 9⋅160 + 12⋅16-1 + 2⋅16-2 + 15⋅16-3)10 = =2745,7614745 …10 Перевод целых чисел Целое число с основанием q переводится в систему счисления с основанием p путем последовательного деления числа А на основание p, записанного в виде числа с основанием q, до получения остатка. Полученное частное необходимо снова делить на основание p. Процесс повторяется до тех пор, пока частное не станет меньше делителя. Полученные остатки от деления и последнее частное записываются в порядке, обратном полученному при делении. Полученное число и будет являться числом с основанием p. Пример: Представить число А10 = 37 в двоичной и шестнадцатеричной системе счисления. 37 2 37 16 А10 =37 А2 = 100101 36 18 2 32 2 1 18 9 2 5 0 8 4 2 1 4 2 2 0 2 1 А10 =37 А16 = 25 0
9
Перевод дробных чисел Дробное число с основанием q переводится в систему счисления с основание p путем последовательного умножения числа А на основание p, записанное в виде числа с основанием q. При каждом умножении целая часть произведения берется в виде очередной цифры соответствующего разряда, а оставшаяся дробная часть принимается за новое множимое. Число умножений определяет разрядность полученного результата, представляющего число А в системе счисления с основанием p. Пример: Представить число А10 = 0,625 в двоичной, восьмеричной и шестнадцатеричной системе счисления. 0,625 0,625 0,625 ×8 ×16 ×2 1 250 5 000 10 000 ×2 0 500 ×2 1 000 А2 = 0,101
А8 = 0,5
А16 = 0,А
Представление числовой информации Для представления десятичных чисел в памяти ЭВМ используется зонный формат. Десятичное число изображается с помощью знаков 16СС. Для записи одной цифры в 10СС используется 1 байт. Каждый байт состоит из 4 битов зоны и 4 битов цифры. Для числовых данных биты зоны составляют комбинацию 11112, четыре бита второй группы называются битами цифры и представляют запись десятичной цифры в двоично – десятичном коде. Биты зоны повторяются в каждом байте. Общий вид зонного формата: байт байт … байт зона цифра зона цифра … знак цифра Пример: Число 985 запишем в зонном формате. 1111 1001 1111 1000 1111 0101 Десятичные числа могут быть положительными или отрицательными. Биты младшей (крайней справа) зоны определяют знак числа. Для положительных чисел комбинация битов этой зоны имеет вид 11002 (С16), для отрицательных – 11012 (D16). Числа с комбинацией битов зоны 11112 (F16) считаются положительными. Процесс исключения битов зон и сжатия оставшихся битов цифр называется упаковкой. Для указания знака числа используется 4 правых двоичных разряда крайнего правого байта. Знак кодируется как в зонном формате. байт байт … байт цифра цифра цифра цифра … цифра знак 10
В случае, если десятичное число содержит чётное число цифр, то старший полубайт заполняется нулями. Такая форма представления числа называется представлением в упакованном формате. Пример: Число 1985 будет иметь вид. 0000 0001 1001 1000 0101 1100 В памяти машины числа можно представить также с использованием двоичного кода. Различают две формы представления чисел – форма представления с фиксированной точкой и форма представления с плавающей точкой. Числа, записанные в двоичном коде, должны содержать фиксированное число бит. Двоичные числа могут быть выражены в виде данных длиной в полуслово, слово или двойное слово. 0 1 Целая часть числа 14 15 0 1 Целая часть числа 30 31 0 1 Целая часть числа 62 63 Первый бит слева (бит старшего разряда) определяет знак числа: 0 – положительное, 1 – отрицательное. Данные с фиксированной точкой имеют фиксированную длину. Точка фиксируется после младшего разряда. Машинные коды Прямой код двоичного числа образуется из абсолютного значения этого числа и кода знака (0 или 1) перед старшим числовым разрядом. Пример: А10 = +10 А2 = +1010 [А2]п = 0 M 1010 В10 = -15 В2 = -1111 [В2]п = 1 M 1111 Обратный код положительных чисел совпадает с их прямым кодом. Обратный код отрицательного числа сдержит единицу в знаковом разряде числа, а значащие разряды заменяются на инверсные. Пример: А10 = +5 А2 = +101 [А2]п = [А2]ок = 0 M 101 В10 = -13 В2 = -1101 [В2]ок = 1 M 0010 Дополнительный код положительных чисел совпадает с их прямым кодом. Дополнительный код отрицательного числа представляет собой результат суммирования обратного кода числа с единицей младшего разряда. Операция вычитания приводится к операции сложения путем преобразования чисел в обратный или дополнительный код. Сложение двоичных чисел осуществляется последовательно. При выполнении операции сложения цифр необходимо соблюдать следующие правила: Слагаемые должны иметь одинаковое число разрядов. Для выравнивания разрядной сетки слагаемых можно дописывать незначащие нули слева к целой части числа, и незначащие нули справа к дробной части числа. Знаковые разряды чисел участвуют в сложении так же, как и значащие. 11
Необходимые преобразования кодов производятся с изменением знаков чисел. Приписанные незначащие нули изменяют свое значение при преобразованиях по общему правилу. При образовании единицы переноса из старшего знакового разряда, в случае использования ОК, эта единица складывается с младшим числовым разрядом. При использовании ДК единица переноса теряется. Знак результата формируется автоматически, результат представляется в том коде, в котором представлены исходные слагаемые. Пример: Сложить два числа А10 = 7 В10 = 16 Исходные числа имеют различную разрядность, необходимо провести выравнивание разрядной сетки: А2 = +111 = +00111 В2 = +10000 = +10000 Сложение в обратном и дополнительном коде дает один и тот же результат: [А2]п = [А2]ок = [А2]дк = 0 M 00111 [В2]п = [В2]ок = [В2]дк = 0 M 10000 Сложение в обратном Сложение в дополнительном коде коде 0 M 00111 0 M 00111 0 M 10000 0 M 10000 С2 = 0 M 10111 С2 = 0 M 10111 С10 = 23 С10 = 23 Обозначения логических элементов в схемах Общий принцип обозначения логических элементов Логический элемент y = ϕ * ( x1 , x 2 , x3 )
Элемент с инверсным выходом
Элемент с инверсным входом y = ϕ * ( x1 , x 2 )
y = ϕ * ( x1 , x 2 )
x1 x2 x3
x1
*
y
*
x2
x1 y
*
y
x2
Здесь * - указатель функции, выполняемой логическим элементом Обозначение элементов, реализующих логические функции Повторитель
Инвентор (НЕ)
y=x
y=x
x
1
y
x
1
Конъюнктор (И) Дизъюнктор (ИЛИ)
y = x1 ⋅ x2 y
x1 & x2
12
y
y = x1 ∨ x2 x1 1 x2
y
Синтез комбинационных устройств Канонические формы представления логических функций Синтез логического устройства распадается на два основных этапа: 1. Логическую функцию необходимо представить в виде логического выражения с использованием некоторого базиса (И, ИЛИ, НЕ); 2. Минимизация логического выражения. Приняты две исходные канонические формы представления функций: • Совершенная дизъюнктивная нормальная форма (СДНФ); • Совершенная конъюнктивная нормальная форма (СКНФ). Совершенная дизъюнктивная нормальная форма. Дизъюнктивная нормальная форма (ДНФ) - форма представления функции, при которой логическое выражение функции строится в виде дизъюнкции ряда членов, каждый из которых является простой конъюнкцией аргументов или их инверсий. Пример: f ( x1 , x2 , x3 ) = x1 ∨ x2 ⋅ x3 ∨ x1 ⋅ x2 x3 ∨ x2 ⋅ x3 Если в каждом члене ДНФ представлены все аргументы (или их инверсии) функции, то такая форма называется СДНФ. Правило записи СДНФ функции, заданной таблицей истинности. Необходимо записать столько членов в виде конъюнкций всех аргументов, сколько единиц содержит функция в таблице. Каждая конъюнкция должна соответствовать определенному набору значений аргументов, обращающему функцию в единицу, и если в этом наборе значение аргумента равно нулю, то в конъюнкцию входит инверсия данного аргумента. Если исходная функция задана в табличной форме, то СДНФ может быть получена непосредственно. 0 0 0 0 1 1 1 1 x1 0 0 1 1 0 0 1 1 x2 0 1 0 1 0 1 0 1 x3 f ( x1 , x2 , x3 ) 0 0 1 1 0 1 0 1 f ( x1 , x2 , x3 ) = x1 ⋅ x2 ⋅ x3 ∨ x1 ⋅ x2 ⋅ x3 ∨ x1 ⋅ x2 ⋅ x3 ∨ x1 ⋅ x2 ⋅ x3 (*)
Совершенная конъюнктивная нормальная форма Конъюнктивная нормальная форма (КНФ) - форма представления функции, при которой логическое выражение функции строится в виде конъюнкции ряда членов, каждый из которых является простой дизъюнкции аргументов или их инверсий. Пример: f ( x1 , x2 , x3 ) = ( x1 ∨ x2 ∨ x3 ) ⋅ ( x2 ∨ x3 ) ⋅ ( x1 ∨ x2 ∨ x3 ) Если в каждом члене КНФ представлены все аргументы (или их инверсии) функции, то такая форма называется СКНФ. Правило записи СКНФ функции, заданной таблицей истинности. Необходимо записать столько конъюнктивных членов, представляющих собой дизъюнкции всех аргументов, при скольких наборах значений аргументов функция равна нулю, и если в наборе значение аргумента равно единице, то в 13
дизъюнкцию входит инверсия данного аргумента. Любая функция имеет единственную СКНФ. Если исходная функция задана в табличной получена непосредственно. 0 0 0 0 x1 0 0 1 1 x2 0 1 0 1 x3 f ( x1 , x2 , x3 ) 0 0 1 1 f ( x1 , x 2 , x3 ) = ( x1 ∨ x 2 ∨ x3 ) ⋅ ( x1 ∨ x 2 ∨ x3 )
форме, то СКНФ может быть 1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 1
(**) ⋅ ( x1 ∨ x 2 ∨ x3 ) ⋅ ( x1 ∨ x 2 ∨ x3 ) Структурная схема логического устройства может быть построена непосредственно по канонической форме (СДНФ или СКНФ) реализуемой функции.
Понятие о минимизации логических функций Проблема минимизации логических функций решается на основе применения законов склеивания и поглощения с последующим перебором получаемых дизъюнктивных форм и выбором из них оптимальной (минимальной). Существует большое количество методов минимизации логических функций. Все они отличаются друг от друга спецификой применения операций склеивания и поглощения, а также различными способами сокращения переборов. Минимизация логических функций методом Квайна Метод Квайна позволяет представлять функции в ДНФ или КНФ с минимальным числом букв в членах. Метод Квайна содержит два этапа преобразования выражения функции: 1. переход от канонической формы (СДНФ или СКНФ) к сокращенной форме; 2. переход от сокращенной формы логического выражения к минимальной форме. Первый этап (получение сокращенной формы).
14
Пусть функция f представлена СДНФ. Переход к сокращенной форме основан на последовательном применении двух операций: операции склеивания и операции поглощения. Для выполнения операции склеивания в выражении функции выявляются пары членов вида w ⋅ x и w ⋅ x , различающихся лишь тем, что один из аргументов в одном из членов представлен без инверсии, а в другом – с инверсией. Затем производится склеивание таких пар w ⋅ x ∨ w ⋅ x = w ⋅ ( x ∨ x ) = w , и результаты склеивания вводятся в выражение функции в качестве дополнительных членов. Далее производится операция поглощения. Она основана на равенстве: w ∨ w ⋅ z = w ⋅ (1 ∨ z ) = w (член w поглощает член w · z). При проведении этой операции из логического выражения вычеркиваются все члены, поглощаемые членами, которые введены в результате операции склеивания. Операции склеивания и поглощения выполняются последовательно до тех пор, пока это возможно. Члены сокращенной формы называются простыми импликантами функции. Второй этап (получение минимальной формы). Сокращенная форма может содержать лишние члены, исключение которых из выражения не повлияет на значение функции. Упрощение логического выражения достигается исключением из выражения лишних членов. Для этого используется импликантная матрица. В столбцы импликантной матрицы вписываются члены СДНФ заданной функции, а в строки – простые импликанты функции. Отмечаются столбцы членов СДНФ, поглощаемых отдельными простыми импликантами. Импликанты, которые не могут быть лишними и, следовательно, не могут быть исключены из сокращенной формы, составляют ядро. Входящие в ядро импликанты легко определяются по импликантной матрице. Для каждой из них имеется хотя бы один столбец, перекрываемый только данной импликантой. Для получения минимальной формы достаточно выбрать из импликант, не входящих в ядро, такое минимальное их число с минимальным количеством букв в каждой из этих импликант, которое обеспечит перекрытие всех столбцов, не перекрытых членами ядра. При использовании метода Квайна для получения минимальной конъюнктивной нормальной формы (МКНФ) логической функции имеются следующие особенности: исходной для минимизации формой логического выражения заданной функции является СКНФ; пары склеиваемых членов имеют вид: w ∨ x и w ∨ x ; операция поглощения проводится в соответствии с выражением z ⋅ ( z ∨ y ) = z ∨ z ⋅ y = z ⋅ (1 ∨ y ) = z .
15
Рассмотрим применение метода Квайна на примере минимизации функции, заданной таблицей истинности: 0 0 0 0 1 1 1 1 x1 x2 0 0 1 1 0 0 1 1 x3 0 1 0 1 0 1 0 1 F(x1, x2, x3) 1 1 1 0 0 1 0 0 Записываем СДНФ функции: f ( x1 , x2 , x3 ) = x1 ⋅ x2 ⋅ x3 ∨ x1 ⋅ x2 ⋅ x3 ∨ x1 ⋅ x2 ⋅ x3 ∨ x1 ⋅ x2 ⋅ x3 Попарно сравнивая члены СДНФ выявляем склеивающиеся пары членов: 1-й и 2-й члены (результат склеивания x1 ⋅ x2 ); 1-й и 3-й члены (результат склеивания x1 ⋅ x3 ); 2-й и 4-й члены (результат склеивания x 2 ⋅ x3 ). Результаты операции склеивания вводим в выражение функции и проводим операцию поглощения ими членов исходного выражения: f ( x1 , x 2 , x3 ) = x1 ⋅ x 2 ⋅ x3 ∨ x1 ⋅ x 2 ⋅ x3 ∨ x1 ⋅ x 2 ⋅ x3 ∨ x1 ⋅ x 2 ⋅ x3 ∨ x1 ⋅ x 2 ∨ x1 ⋅ x3 ∨ x 2 ⋅ x3 Член x1 ⋅ x2 поглощает те члены исходного выражения, которые содержат x1 ⋅ x2 , т.е. первый и второй. Эти члены вычеркиваются. Член x1 ⋅ x3 поглощает первый и третий, а x2 ⋅ x3 - второй и четвертый члены исходного выражения. Дальнейшее проведение операций склеивания и поглощения оказывается невозможным, сокращенная форма выражения: f ( x1 , x2 , x3 ) = x1 ⋅ x2 ∨ x1 ⋅ x3 ∨ x2 ⋅ x3 . Для перехода к минимальной форме строим импликантную матрицу. x1 ⋅ x2 ⋅ x3 x1 ⋅ x2 ⋅ x3 x1 ⋅ x2 ⋅ x3 x1 ⋅ x2 ⋅ x3 x1 ⋅ x2 x x x x1 ⋅ x3 x x x2 ⋅ x3 x
Ядро составляют импликанты x1 ⋅ x3 и x2 ⋅ x3 , которые перекрывают все столбцы импликантной матрицы. Т.о. минимальная дизъюнктивная нормальная форма заданной функции: f ( x1 , x2 , x3 ) = x1 ⋅ x3 ∨ x2 ⋅ x3 . Минимизация логических функций методом Квайна - Мак-Класки Мак-Класки предложил прием, который на этапе нахождения сокращенных ДНФ и КНФ упрощает процесс минимизации и, кроме того, позволяет описать этот процесс для выполнения на ЭВМ. Прием предусматривает следующую последовательность действий для получения сокращенной ДНФ:
16
1. СДНФ функции представляют наборами значений аргументов, на которых функция равна лог.1. Десятичный эквивалент 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 набора аргументов 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 f(x1, x2, x3, x4) 0 1 0 0 0 1 0 0 0 1 1 1 0 1 0 0 Пусть функция задана таблицей истинности. СДНФ функции записываем в виде совокупности наборов (представленных их десятичными эквивалентами), на которых функция принимает значение лог.1. f(x1, x2, x3, x4) = ∨ (1, 5, 9, 10, 11, 13). Эта запись читается так: "функция f принимает значение лог.1 на наборах, соответствующих десятичным эквивалентам или 1, или 5, или 9, или 10, или 11, или 13". Функцию можно записать и через наборы, представленные в двоичной форме: f = 0001V0101V1001V1010V1011V1101. Номер Наборы 2. Все члены в этой форме СДНФ группы I этап II этап III этап разбивают на группы по числу единиц, 0 ---содержащихся в наборах 1 0001 0*01 **01 (представленных в двоичной форме). Эта *001 разбивка наборов на группы для 2 0101 *101 10*1 1001 10*1 101* рассматриваемой функции представлена 1010 1*01 в графе 1 этапа табл. 1.17. 101* 3. Производят склеивание наборов. 3 1011 --Склеиваться могут только наборы 1101 соседних групп, различающиеся лишь в одном разряде. Результат склеивания пары наборов содержит на месте разряда с различающимися значениями в наборах символ * и заносится в графу следующего этапа, а пара склеивающихся наборов вычеркивается (при этом вычеркнутые наборы должны использоваться в последующих поисках склеивающихся пар наборов). Так, склеивание пары наборов 0001 и 0101 графы 1 этапа приводит к набору 0*01, записываемому в графе II этапа. Результаты склеивания наборов II этапа заносятся в графу III этапа. Сюда перенесены и невычеркнутые наборы из графы II этапа. Дальнейшее склеивание оказывается невозможным. Наборы графы последнего этапа изображают простые импликанты функции, т.е. члены сокращенной ДНФ. В рассматриваемом примере сокращенная ДНФ функции f(x1, x2, x3, x4)=**01 v 10*1 v 101 *. Эта запись соответствует логическому выражению, получаемому по правилу: 1. каждый набор соответствует отдельной импликанте; 2. каждому символу в наборе соответствует переменная функции с индексом, совпадающим с номером позиции символа в наборе; 17
3. если символом является *, то соответствующая переменная в выражении импликанты отсутствует; 4. если символом является 0, то соответствующая переменная в выражении импликанты присутствует с инверсией; 5. при символе 1 переменная записывается без инверсий: f(x1, x2, x3, x4) = x3 ⋅ x4 ∨ x1 ⋅ x2 ⋅ x4 ∨ x1 ⋅ x2 ⋅ x3 Переход от сокращенной ДНФ к минимальной ДНФ может производиться с помощью импликантной матрицы, как и в методе Квайна. Различие может состоять лишь в том, что в импликантной матрице члены СДНФ и сокращенной ДНФ удобней представлять соответствующими им двоичными комбинациями. Для рассматриваемого примера импликантная матрица приведена в табл. 0001 0101 1001 1010 1011 1101 простые импликанты **01 X X X X 10*1
X
X
101* X X Из таблицы следует, что МДНФ функции: f(x1, x2, x3, x4) = **01 v 101*= x3 ⋅ x4 ∨ x1 ⋅ x2 ⋅ x3
18