Основы логики и Алгоритмизация

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

Государственное образовательное учреждение

высшего профессионального образования

“МАТИ”  – Российский государственный 

технологический университет имени К.Э. Циолковского

 

Факультет №3

Кафедра «Информационные технологии» 
 
 
 
 
 
 
 
 
 
 
 

Курсовая  работа

По дисциплине: «Информатика»

на тему: «Основы логики и Алгоритмизация» 
 
 
 
 
 
 
 
 
 
 
 

Выполнил: Олейников И.А.

Группа: 3ИВТ-1ДБ-209

Преподаватель: Молчанова С.И. 
 
 
 
 

Москва, 2011г.

Вариант №11 

Подзадача №1:  

Восстановление  исходной функции

                                           

Задание: 

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

на выходе  D появляется сигнал 0,

при появлении  сигналов на входах А - 0,   В-0иС-0;

условие изменения  сигнала D,

при изменении  сигнала А,  равно В}С;

условие изменения  сигнала D,

при изменении  сигнала В,   равно А}С;

условие изменения  сигнала D,

при одновременном  изменении сигналов А,   В и  С,   равно  (А+С)}(А+В).

Здесь использованы следующие обозначения операций:

+ - исключающее  или,  } - коимпликация. 

1. Восстановить  исходную функцию  

Дано:

f (0,0,0)=0;

fa =;

fb=;

fabc=; 

Найти:

f-? 

Решение:

  a b c        
f
f0 0 0 0 0 0 0 0 0 0
f1 0 0 1 0 0 1 0 1 0
f2 0 1 0 1 0 0 1 0 0
f3 0 1 1 0 0 1 1 0 0
f4 1 0 0 0 1 1 1 0 0
f5 1 0 1 0 0 0 1 0 0
f6 1 1 0 1 1 1 0 1 1
f7 1 1 1 0 0 0 0 0 0
 
 
 
 
fa fb fabc
f0f4 =0 f0f2 =0 f0f7 =0
f1f5 =0 f1f3 =0 f1f6 =1
f2f6 =1 f4f6 =1 f2f5 =0
f3f7 =0 f5f7 =0 f3f4 =0
 
f0 0
f1 0
f2 0
f3 0
f4 0
f5 0
f6 1
f7 0

Исходная функция:

f = 0216 ; 
 
 
 
 
 
 

Подзадача №2: 

Построение  функциональной схемы  с использованием двух произвольных функциональных блоков 
 

Проверка:

A B C     f
0 0 0 0 0 0
0 0 1 0 0 0
0 1 0 0 0 0
0 1 1 0 0 0
1 0 0 0 0 0
1 0 1 0 0 0
1 1 0 1 1 1
1 1 1 1 0 0

 
 

Разработка  функциональных схем в различных базисах 

(в  соответствии с  вариантом) 

1) ; 
 
 
 

Проверка:

 

A B C               f
0 0 0 1 1 0 1 1 0 0 0
0 0 1 1 1 0 1 0 1 0 0
0 1 0 1 0 0 1 1 0 0 0
0 1 1 1 0 0 1 0 1 0 0
1 0 0 0 1 0 1 1 0 0 0
1 0 1 0 1 0 1 0 1 0 0
1 1 0 0 0 1 0 1 0 1 1
1 1 1 0 0 1 0 0 1 0 0

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

2) ; 
 
 

Проверка: 

A B C         f
0 0 0 0 1 0 0 0
0 0 1 0 1 0 0 0
0 1 0 0 0 0 0 0
0 1 1 0 0 0 0 0
1 0 0 0 1 0 0 0
1 0 1 0 1 0 0 0
1 1 0 0 0 1 1 1
1 1 1 0 0 1 0 0
 
 

 
 
 
 
 
 
 
 
 
 

3) ; 
 

Проверка: 

A B C         f
0 0 0 1 0 1 0 0
0 0 1 1 0 1 0 0
0 1 0 0 0 1 0 0
0 1 1 1 0 1 0 0
1 0 0 1 0 1 0 0
1 0 1 1 0 1 0 0
1 1 0 0 0 1 1 1
1 1 1 1 1 1 0 0
 

 
 
 
 
 
 
 
 

4) ; 
 
 

Проверка: 

A B C     f
0 0 0 0 0 0
0 0 1 0 0 0
0 1 0 0 0 0
0 1 1 0 0 0
1 0 0 0 0 0
1 0 1 0 0 0
1 1 0 1 1 1
1 1 1 1 0 0

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

5) ; 
 

Проверка: 

A B C         f
0 0 0 0 1 1 0 0
0 0 1 0 1 0 0 0
0 1 0 0 1 1 0 0
0 1 1 0 1 0 0 0
1 0 0 0 1 1 0 0
1 0 1 0 1 0 0 0
1 1 0 1 1 1 1 1
1 1 1 1 1 0 0 0
 

 
 
 
 
 
 
 
 
 
 
 
 

Подзадача №3 

    Программа для специализированного  одноадресного компьютера 

Система №11

Команда      Означает

А? Ввести с клавиатуры двоичное число в регистр А.

А! Вывести на дисплей двоичное число из регистра А.

А Переслать в регистр А значение из сумматора.

&А Установить в 0 разряды сумматора, соответствующие нулевым разрядам регистра А.

- Инвертировать все разряды сумматора. 
 

f0 0
f1 0
f2 0
f3 0
f4 0
f5 0
f6 1
f7 0

Исходная функция:

f = 0216 ; 
 
 
 
 
 
 

Базис:

4) ; 
 

Протокол выполнения программы:

Команда Результат вычислений Комментарии
A? 0000 1111  
B? 0011 0011  
C? 0101 0101  
X 0010 1011  
&X 0010 1011  
- 1101 0100  
&X 0000 0000  
- 1111 1111  
&C 0101 0101  
- 1010 1010  
&A 0000 1010  
&B 0000 0010  
Y 0000 0010  
Y! 0000 0010 Вывод (0216)

Программа для специализированного  двухадресного компьютера 

f0 0
f1 0
f2 0
f3 0
f4 0
f5 0
f6 1
f7 0

Исходная функция:

f = 0216 ; 
 
 
 
 
 
 

Базис:

6) , 

Специализированного компьютера для данной системы нет. Выбрал систему команд №1 и преобразовал функцию представив ее в базисе этой системы.

Система №1 использует импликативный базис  . 
 

Проверка: 

A B C       f
0 0 0 1 1 0 0
0 0 1 1 1 0 0
0 1 0 0 1 0 0
0 1 1 1 1 0 0
1 0 0 1 1 0 0
1 0 1 1 1 0 0
1 1 0 0 0 1 1
1 1 1 1 1 0 0

 

  

Система №1

Команда       Означает

А? Ввести с клавиатуры двоичное число в регистр А.

А! Вывести на дисплей двоичное число из регистра А.

АО Установить в 0 все разряды регистра А.

А<В Записать в регистр А результат поразрядного сравнения А<=В. 

Протокол выполнения программы 

Команда Результаты  вычислений Комментарии
A? 0000 1111  
B? 0011 0011  
C? 0101 0101  
B<C 1101 1101 B=B<C
A<B 1111 1101 A=A<B
C0 0000 0000 C=0000 0000
A<C 0000 0010 A=A<C
A! 0000 0010 Вывод (0216)
Основы логики и Алгоритмизация