Министерство образования российской федерации
Государственное образовательное учреждение
высшего профессионального образования
Сибирский государственный индустриальный университет
Отчёт по лабораторной работе №2
Выполнил: студент гр. АЭП-032
Туюнда А. А.
Проверил: Лемешевский Д. С.
г. Новокузнецк
2004 г.
Задание:
На основе представленных схемы и устройства составить алгоритм и написать программу на языке Си, моделирующую работу заданного логического устройства двумя способами:
1-й способ – с использованием элементарных поразрядных операций языка программирования Си.
2-й способ – с использованием условных операторов языка программирования Си.
С целью проверки правильного функционирования модели логического устройства составить таблицу истинности и вывести её на экран дисплея.
Индивидуальное задание В –18:
X1
X2
X3
X4
Рис.1 - Схема логического устройства.
Y=X1(X1+X2+X3)+X2X3X4
Алгоритм первого способа:
#include<stdio.h>
#include<conio.h>
int x1,x2,x3,x4,y;
main ()
{
printf("-------------------------\n");
printf("| x1 | x2 | x3 | x4 | y |\n");
printf("-------------------------\n");
for (x4=0;x4<=1;x4++)
{for (x3=0;x3<=1;x3++)
{for (x2=0;x2<=1;x2++)
{for (x1=0;x1<=1;x1++)
{y=(x1&(x1|x2|x3))|(x2&x3&x4);
printf("| %d | %d | %d | %d | %d |\n",x4,x3,x2,x1,y);
}
}
}
}
printf("-------------------------\n");
getch ();
}
Алгоритм второго способа:
#include<stdio.h>
#include<conio.h>
int x1,x2,x3,x4,y,y1,y2,y3;
main ()
{
printf("-------------------------\n");
printf("| x1 | x2 | x3 | x4 | y |\n");
printf("-------------------------\n");
for (x4=0;x4<=1;x4++)
{for (x3=0;x3<=1;x3++)
{for (x2=0;x2<=1;x2++)
{for (x1=0;x1<=1;x1++)
{if (x1==0)
{if (x2==0)
{if (x3==0) y1=0; else y1=1;}
else y1=1;}
else y1=1;
if (x2==1)
{if (x3==1)
{if (x4==1) y2=1; else y2=0;}
else y2=0;}
else y2=0;
if (x1==1)
{if (y1==1) y3=1; else y3=0;}
else y3=0;
if (y3==0)
{if (y2==0) y=0; else y=1;}
else y=1;
printf("| %d | %d | %d | %d | %d |\n",x4,x3,x2,x1,y);
}
}
}
}
printf(" ------------------------\n");
getch ();
}
В результате выполнения лабораторной работы
получаем таблицу истинности.
------------------------| x1 | x2 | x3 | x4 | y |
------------------------| 0 | 0 | 0 | 0 | 0 |
| 0 | 0 | 0 | 1 | 1 |
| 0 | 0 | 1 | 0 | 0 |
| 0 | 0 | 1 | 1 | 1 |
| 0 | 1 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 0 | 1 | 1 | 0 | 0 |
| 0 | 1 | 1 | 1 | 1 |
| 1 | 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 1 | 1 |
| 1 | 0 | 1 | 0 | 0 | Рис.2 Таблица истинности
| 1 | 0 | 1 | 1 | 1 |
| 1 | 1 | 0 | 0 | 0 |
| 1 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 0 | 1 |
| 1 | 1 | 1 | 1 | 1 |
------------------------ Вывод: На основе представленных схем и функций, описывающих работу логического устройства я научился составлять алгоритм, писать программы на языке Си, моделирующую работу заданного логического устройства двумя способами:
1-й способ- с использованием элементарных поразрядных операций языка программирования Си;
2-й способ – с использованием условных операторов языка программирования Си.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.