Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

отчет лаба 3 схемота

.docx
Скачиваний:
0
Добавлен:
11.02.2026
Размер:
249.09 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНСТВО ВОЗДУШНОГО ТРАНСПОРТА

(РОСАВИАЦИЯ)

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ГРАЖДАНСКОЙ АВИАЦИИ» (МГТУ ГА)

Кафедра вычислительных машин, комплексов, сетей и систем.

Лабораторная работа защищена с оценкой ____________________

____________________

(подпись преподавателя, дата)

ЛАБОРАТОРНАЯ РАБОТА №3

по дисциплине «Схемотехническое моделирование».

Тема: «Построение схем реализации различных процессов.»

Выполнила студентка группы ИС2-1

Магальник Екатерина Борисовна

Руководитель: Затучный Дмитрий Александрович

МОСКВА – 2024

Теоретическая часть.

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

Схемы реализации применимы в том числе для объяснения логики работы тех или иных процессов: работоспособность системы, отказ системы, установка приоритетов операций, “голосование” логических элементов системы с учётом приоритетности.

Задание 1. Система состоит из 5 блоков. Система отказывает, если отказали 1 и\или 2 блок и любой из оставшихся блоков. Построить схему определения отказа в системе. Построить блок-схему алгоритма определения отказа в системе, записать функцию и таблицу истинности, написать программу реализации алгоритма, построить структуру системы из 5 блоков.

Получившаяся функция:

Блок-схемы алгоритмов:

Схема реализации функции:

Результат работы программы:

x1, x2, x3, x4, x5, y

0 0 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 0

0 0 1 1 1 0

0 1 0 0 0 0

0 1 0 0 1 1

0 1 0 1 0 1

0 1 0 1 1 1

0 1 1 0 0 1

0 1 1 0 1 1

0 1 1 1 0 1

0 1 1 1 1 1

1 0 0 0 0 0

1 0 0 0 1 1

1 0 0 1 0 1

1 0 0 1 1 1

1 0 1 0 0 1

1 0 1 0 1 1

1 0 1 1 0 1

1 0 1 1 1 1

1 1 0 0 0 0

1 1 0 0 1 1

1 1 0 1 0 1

1 1 0 1 1 1

1 1 1 0 0 1

1 1 1 0 1 1

1 1 1 1 0 1

1 1 1 1 1 1

Листинг программы:

print("x1, x2, x3, x4, x5, y") for x1 in range(2): for x2 in range(2): for x3 in range(2): for x4 in range(2): for x5 in range(2): if ((x1 or x2) and (x3 or x4 or x5)) == 1: print (x1, " ", x2, " ", x3, " ", x4, " ", x5, " ", 1) else: print (x1, " ", x2, " ", x3, " ", x4, " ", x5, " ", 0)

Задание 2. В вычислительной системе на очереди стоит 7 операций, разделенных по приоритету. В случае отказа выполнения процедуры с высшим приоритетом переходит к более низкому. Разработать комбинационную схему формирования последовательности выполнения операций. Построить блок-схему алгоритма, записать функцию и таблицу истинности. Написать программу реализации алгоритма.

Получившаяся функция:

Блок-схемы алгоритмов:

Схема реализации функции:

Результат работы программы:

x1, x2, x3, x4, x5, x6, x7, y

0 0 0 0 0 0 0 0

0 0 0 0 0 0 1 7

0 0 0 0 0 1 0 6

0 0 0 0 0 1 1 76

0 0 0 0 1 0 0 5

0 0 0 0 1 0 1 75

0 0 0 0 1 1 0 65

0 0 0 0 1 1 1 765

0 0 0 1 0 0 0 4

0 0 0 1 0 0 1 74

0 0 0 1 0 1 0 64

0 0 0 1 0 1 1 764

0 0 0 1 1 0 0 54

0 0 0 1 1 0 1 754

0 0 0 1 1 1 0 654

0 0 0 1 1 1 1 7654

0 0 1 0 0 0 0 3

0 0 1 0 0 0 1 73

0 0 1 0 0 1 0 63

0 0 1 0 0 1 1 763

0 0 1 0 1 0 0 53

0 0 1 0 1 0 1 753

0 0 1 0 1 1 0 653

0 0 1 0 1 1 1 7653

0 0 1 1 0 0 0 43

0 0 1 1 0 0 1 743

0 0 1 1 0 1 0 643

0 0 1 1 0 1 1 7643

0 0 1 1 1 0 0 543

0 0 1 1 1 0 1 7543

0 0 1 1 1 1 0 6543

0 0 1 1 1 1 1 76543

0 1 0 0 0 0 0 2

0 1 0 0 0 0 1 72

0 1 0 0 0 1 0 62

0 1 0 0 0 1 1 762

0 1 0 0 1 0 0 52

0 1 0 0 1 0 1 752

0 1 0 0 1 1 0 652

0 1 0 0 1 1 1 7652

0 1 0 1 0 0 0 42

0 1 0 1 0 0 1 742

0 1 0 1 0 1 0 642

0 1 0 1 0 1 1 7642

0 1 0 1 1 0 0 542

0 1 0 1 1 0 1 7542

0 1 0 1 1 1 0 6542

0 1 0 1 1 1 1 76542

0 1 1 0 0 0 0 32

0 1 1 0 0 0 1 732

0 1 1 0 0 1 0 632

0 1 1 0 0 1 1 7632

0 1 1 0 1 0 0 532

0 1 1 0 1 0 1 7532

0 1 1 0 1 1 0 6532

0 1 1 0 1 1 1 76532

0 1 1 1 0 0 0 432

0 1 1 1 0 0 1 7432

0 1 1 1 0 1 0 6432

0 1 1 1 0 1 1 76432

0 1 1 1 1 0 0 5432

0 1 1 1 1 0 1 75432

0 1 1 1 1 1 0 65432

0 1 1 1 1 1 1 765432

1 0 0 0 0 0 0 1

1 0 0 0 0 0 1 71

1 0 0 0 0 1 0 61

1 0 0 0 0 1 1 761

1 0 0 0 1 0 0 51

1 0 0 0 1 0 1 751

1 0 0 0 1 1 0 651

1 0 0 0 1 1 1 7651

1 0 0 1 0 0 0 41

1 0 0 1 0 0 1 741

1 0 0 1 0 1 0 641

1 0 0 1 0 1 1 7641

1 0 0 1 1 0 0 541

1 0 0 1 1 0 1 7541

1 0 0 1 1 1 0 6541

1 0 0 1 1 1 1 76541

1 0 1 0 0 0 0 31

1 0 1 0 0 0 1 731

1 0 1 0 0 1 0 631

1 0 1 0 0 1 1 7631

1 0 1 0 1 0 0 531

1 0 1 0 1 0 1 7531

1 0 1 0 1 1 0 6531

1 0 1 0 1 1 1 76531

1 0 1 1 0 0 0 431

1 0 1 1 0 0 1 7431

1 0 1 1 0 1 0 6431

1 0 1 1 0 1 1 76431

1 0 1 1 1 0 0 5431

1 0 1 1 1 0 1 75431

1 0 1 1 1 1 0 65431

1 0 1 1 1 1 1 765431

1 1 0 0 0 0 0 21

1 1 0 0 0 0 1 721

1 1 0 0 0 1 0 621

1 1 0 0 0 1 1 7621

1 1 0 0 1 0 0 521

1 1 0 0 1 0 1 7521

1 1 0 0 1 1 0 6521

1 1 0 0 1 1 1 76521

1 1 0 1 0 0 0 421

1 1 0 1 0 0 1 7421

1 1 0 1 0 1 0 6421

1 1 0 1 0 1 1 76421

1 1 0 1 1 0 0 5421

1 1 0 1 1 0 1 75421

1 1 0 1 1 1 0 65421

1 1 0 1 1 1 1 765421

1 1 1 0 0 0 0 321

1 1 1 0 0 0 1 7321

1 1 1 0 0 1 0 6321

1 1 1 0 0 1 1 76321

1 1 1 0 1 0 0 5321

1 1 1 0 1 0 1 75321

1 1 1 0 1 1 0 65321

1 1 1 0 1 1 1 765321

1 1 1 1 0 0 0 4321

1 1 1 1 0 0 1 74321

1 1 1 1 0 1 0 64321

1 1 1 1 0 1 1 764321

1 1 1 1 1 0 0 54321

1 1 1 1 1 0 1 754321

1 1 1 1 1 1 0 654321

1 1 1 1 1 1 1 7654321

Листинг:

def funk(x1, x2, x3, x4, x5, x6, x7): return x7*'7' + x6*'6' + x5*'5' + x4*'4' + x3*'3' + x2*'2' +x1*'1' print("x1, x2, x3, x4, x5, x6, x7, y") for x1 in range(2): for x2 in range(2): for x3 in range(2): for x4 in range(2): for x5 in range(2): for x6 in range(2): for x7 in range(2): x = funk(x1, x2, x3, x4, x5, x6, x7) print (x1, " ", x2, " ", x3, " ", x4, " ", x5, " ", x6, " ", x7, " ", x)

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

Получившаяся функция:

Блок-схемы алгоритмов:

Схема реализации функции:

Результат работы программы:

x1 x2 x3 x4 x5 x6 y

0 0 0 0 0 0 0

0 0 0 0 0 1 0

0 0 0 0 1 0 0

0 0 0 0 1 1 0

0 0 0 1 0 0 0

0 0 0 1 0 1 0

0 0 0 1 1 0 0

0 0 0 1 1 1 1

0 0 1 0 0 0 0

0 0 1 0 0 1 0

0 0 1 0 1 0 0

0 0 1 0 1 1 1

0 0 1 1 0 0 0

0 0 1 1 0 1 0

0 0 1 1 1 0 0

0 0 1 1 1 1 1

0 1 0 0 0 0 0

0 1 0 0 0 1 0

0 1 0 0 1 0 0

0 1 0 0 1 1 1

0 1 0 1 0 0 0

0 1 0 1 0 1 0

0 1 0 1 1 0 0

0 1 0 1 1 1 1

0 1 1 0 0 0 0

0 1 1 0 0 1 0

0 1 1 0 1 0 0

0 1 1 0 1 1 1

0 1 1 1 0 0 0

0 1 1 1 0 1 0

0 1 1 1 1 0 0

0 1 1 1 1 1 1

1 0 0 0 0 0 0

1 0 0 0 0 1 0

1 0 0 0 1 0 0

1 0 0 0 1 1 1

1 0 0 1 0 0 0

1 0 0 1 0 1 0

1 0 0 1 1 0 0

1 0 0 1 1 1 1

1 0 1 0 0 0 0

1 0 1 0 0 1 0

1 0 1 0 1 0 0

1 0 1 0 1 1 1

1 0 1 1 0 0 0

1 0 1 1 0 1 0

1 0 1 1 1 0 0

1 0 1 1 1 1 1

1 1 0 0 0 0 0

1 1 0 0 0 1 0

1 1 0 0 1 0 0

1 1 0 0 1 1 1

1 1 0 1 0 0 0

1 1 0 1 0 1 0

1 1 0 1 1 0 0

1 1 0 1 1 1 1

1 1 1 0 0 0 0

1 1 1 0 0 1 0

1 1 1 0 1 0 0

1 1 1 0 1 1 1

1 1 1 1 0 0 1

1 1 1 1 0 1 1

1 1 1 1 1 0 1

1 1 1 1 1 1 1

Листинг:

print("x1 ", "x2 ", "x3 ", "x4 ", "x5 ", "x6 ", "y")

for x1 in range(2):

for x2 in range(2):

for x3 in range(2):

for x4 in range(2):

for x5 in range(2):

for x6 in range(2):

if (x1 and x2 and x3 and x4) or ((x1 or x2 or x3 or x4) and (x5 and x6)) == 1:

print(x1, " ", x2, " ", x3, " ", x4, " ", x5, " ", x6, " ", 1)

else:

print(x1, " ", x2, " ", x3, " ", x4, " ", x5, " ", x6," ", 0)

Задание 4. Построить схему управления работой сложной системы. Система считается работоспособной, если выполняется хотя бы 2 функции из 3 имеющихся. За выполнением каждой из функций следят 3 датчика. При срабатывании всех датчиков функция считается выполненной, при срабатывании 2 из 3 датчиков дается возможность проверить работу последнего датчика еще раз. Построить блок-схему алгоритма, записать функцию и таблицу истинности. Написать программу реализации алгоритма.

Получившаяся функция:

Блок-схемы алгоритмов:

Схема реализации функции:

Результат работы программы:

x1 x2 x3 y

0 0 0 0

0 0 1 1

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 1

Листинг:

print("x1 ", "x2 ", "x3 ", "y")

numbers = []

for x1 in range(2):

for x2 in range(2):

for x3 in range(2):

if x1 or x2 == 1:

numbers.append(1)

if x1 or x3 == 1:

numbers.append(1)

if x2 or x3 == 1:

numbers.append(1)

if len(numbers) == 2:

if ((x1 or x2) and (x1 or x3) and (x2 or x3)) or x3 == 1:

print(x1, " ", x2, " ", x3, " ", 1)

numbers.clear()

else:

print(x1, " ", x2, " ", x3, " ", 0)

numbers.clear()

else:

if len(numbers) == 3:

print(x1, " ", x2, " ", x3, " ", 1)

numbers.clear()

else:

print(x1, " ", x2, " ", x3, " ", 0)

numbers.clear()

Вывод: в данной лабораторной работе были усвоены навыки построения схем реализации для различных процессов для объяснения логики их работы, построения к ним блок схем, программ реализации и логических функций. Например, по задачам: работоспособность системы, отказ системы, установка приоритетов операций, “голосование” логических элементов системы с учётом приоритетности.