imDPd (780149), страница 3
Текст из файла (страница 3)
/* And 5 */
rectangle(25*kx,17*ky,28*kx,21*ky);
setcolor(YELLOW);
outtextxy(27*kx,18*ky,"&");
setcolor(LIGHTGRAY);
outtextxy(27*kx,20*ky,"5");
/* And 6*/
rectangle(30*kx,17*ky,33*kx,21*ky);
setcolor(YELLOW);
outtextxy(32*kx,18*ky,"&");
setcolor(LIGHTGRAY);
outtextxy(32*kx,20*ky,"6");
/* And 7 */
rectangle(35*kx,17*ky,38*kx,21*ky);
setcolor(YELLOW);
outtextxy(37*kx,18*ky,"&");
setcolor(LIGHTGRAY);
outtextxy(37*kx,20*ky,"7");
/*------------- Devices OR */
/* Or 1 */
rectangle(4*kx,25*ky,23*kx,28*ky);
setcolor(YELLOW);
outtextxy(22*kx,26*ky,"1");
setcolor(LIGHTGRAY);
outtextxy(14*kx,27*ky,"1");
/* Or 2 */
rectangle(25*kx,25*ky,38*kx,28*ky);
setcolor(YELLOW);
outtextxy(37*kx,26*ky,"1");
setcolor(LIGHTGRAY);
outtextxy(32*kx,27*ky,"2");
/*----------------------------- Entry */
setcolor(LIGHTGREEN);
settextstyle(Font[3],HORIZ_DIR,5);
outtextxy(2*kx,4*ky,"X1");
outtextxy(2*kx,5*ky,"X2");
outtextxy(2*kx,6*ky,"X3");
outtextxy(2*kx,12*ky,"Y3");
outtextxy(2*kx,13*ky,"Y2");
outtextxy(2*kx,14*ky,"Y1");
/*----------------------------- Exits */
setcolor(LIGHTGREEN);
settextstyle(SMALL_FONT,HORIZ_DIR,6);
outtextxy(14*kx,31*ky,"Z1");
outtextxy(32*kx,31*ky,"Z2");
setcolor(CYAN);
outtextxy(25*kx,33*ky,title_10); /* Z1=... */
outtextxy(25*kx,35*ky,title_11); /* Z2=... */
/*----------------------------- Wire */
setcolor(WHITE);
/* X1 */
line(5*kx,4*ky,47*kx,4*ky);
circle(47*kx,4*ky,2);
line(47*kx,4*ky,47*kx,7*ky);
/* X2 */
line(5*kx,5*ky,43*kx,5*ky);
circle(43*kx,5*ky,2);
line(43*kx,5*ky,43*kx,7*ky);
/* X3 */
line(5*kx,6*ky,39*kx,6*ky);
circle(39*kx,6*ky,2);
line(39*kx,6*ky,39*kx,7*ky);
/* Y1 */
line(5*kx,14*ky,47*kx,14*ky);
circle(47*kx,14*ky,2);
line(39*kx,11*ky,39*kx,12*ky);
/* Y2 */
line(5*kx,13*ky,43*kx,13*ky);
circle(43*kx,13*ky,2);
line(43*kx,11*ky,43*kx,13*ky);
/* Y3 */
line(5*kx,12*ky,39*kx,12*ky);
circle(39*kx,12*ky,2);
line(47*kx,11*ky,47*kx,14*ky);
/*------------- To And 1 */
line(5*kx,13*ky,5*kx,17*ky);
circle(5*kx,13*ky,2);
line(6*kx,14*ky,6*kx,17*ky);
circle(6*kx,14*ky,2);
line(7*kx,6*ky,7*kx,17*ky);
circle(7*kx,6*ky,2);
/*------------- To And 2 */
line(10*kx,14*ky,10*kx,17*ky);
circle(10*kx,14*ky,2);
line(11*kx,12*ky,11*kx,17*ky);
circle(11*kx,12*ky,2);
line(12*kx,5*ky,12*kx,17*ky);
circle(12*kx,5*ky,2);
/*------------- To And 3 */
line(15*kx,12*ky,15*kx,17*ky);
circle(15*kx,12*ky,2);
line(16*kx,13*ky,16*kx,17*ky);
circle(16*kx,13*ky,2);
line(17*kx,4*ky,17*kx,17*ky);
circle(17*kx,4*ky,2);
/*------------- To And 4 */
line(20*kx,4*ky,20*kx,17*ky);
circle(20*kx,4*ky,2);
line(21*kx,5*ky,21*kx,17*ky);
circle(21*kx,5*ky,2);
line(22*kx,6*ky,22*kx,17*ky);
circle(22*kx,6*ky,2);
/*------------- To And 5 */
line(26*kx,6*ky,26*kx,17*ky);
circle(26*kx,6*ky,2);
line(27*kx,5*ky,27*kx,17*ky);
circle(27*kx,5*ky,2);
/*------------- To And 6 */
line(31*kx,6*ky,31*kx,17*ky);
circle(31*kx,6*ky,2);
line(32*kx,4*ky,32*kx,17*ky);
circle(32*kx,4*ky,2);
/*------------- To And 7 */
line(36*kx,5*ky,36*kx,17*ky);
circle(36*kx,5*ky,2);
line(37*kx,4*ky,37*kx,17*ky);
circle(37*kx,4*ky,2);
/*------------- To Or 1 */
line( 6*kx,21*ky, 6*kx,25*ky);
line(11*kx,21*ky,11*kx,25*ky);
line(16*kx,21*ky,16*kx,25*ky);
line(21*kx,21*ky,21*kx,25*ky);
/*------------- To Or 2 */
line(27*kx,21*ky,27*kx,25*ky);
line(32*kx,21*ky,32*kx,25*ky);
line(37*kx,21*ky,37*kx,25*ky);
/*------------- To EXIT */
line(14*kx,28*ky,14*kx,30*ky);
line(32*kx,28*ky,32*kx,30*ky);
/*----------------------------- Logic */
if(mode==WORK)
{
/*------------- Entry */
bit(4*kx,4*ky,X1); /* bit X3 */
bit(4*kx,5*ky,X2); /* bit X2 */
bit(4*kx,6*ky,X3); /* bit X1 */
/*------------- Devices Inventor 1-3 */
Y1=~X1&1;
Y2=~X2&1;
Y3=~X3&1;
bit(4*kx,12*ky,Y3); /* bit Y3 */
bit(4*kx,13*ky,Y2); /* bit Y2 */
bit(4*kx,14*ky,Y1); /* bit Y1 */
/*------------- Device And 1-7 */
And1=Y2 & Y1 & X3;
And2=Y1 & Y3 & X2;
And3=Y3 & Y2 & X1;
And4=X1 & X2 & X3;
And5=X3 & X2;
And6=X3 & X1;
And7=X2 & X1;
bit( 7*kx,23*ky,And1); /* And 1 */
bit(12*kx,23*ky,And2); /* And 2 */
bit(17*kx,23*ky,And3); /* And 3 */
bit(22*kx,23*ky,And4); /* And 4 */
bit(28*kx,23*ky,And5); /* And 5 */
bit(33*kx,23*ky,And6); /* And 6 */
bit(38*kx,23*ky,And7); /* And 7 */
/*------------- Device OR 1-7 */
Or1=And1|And2|And3|And4;
Or2=And5|And6|And7;
bit(15*kx,29*ky,Or1); /* Or 1 */
bit(33*kx,29*ky,Or2); /* Or 2 */
}
STOP_DRAFT;
/*----------------------------- Return to text mode */
text_regime();
/* */
return 0;
}
/*IIIIIIIIIIIIIIIIIIIIIIIIIIIIII*/
int entry_x() /* <=### CHANGE ### */
{
/*------------------------------ Variables */
char ch[2];
/* */
/*------------- Order of the commands */
clrscr();
/* */
for(;;)
{
BELL;
gotoxy(29,12);
cputs(" Command X1 (0 or 1) --> ");
cscanf("%1s",&ch);
if(ch[0]=='1') {X1=1; break;}
if(ch[0]=='0') {X1=0; break;}
gotoxy(29,12);
delline();
}
for(;;)
{
BELL;
gotoxy(29,13);
cputs(" Command X2 (0 or 1) --> ");
cscanf("%1s",&ch);
if(ch[0]=='1') {X2=1; break;}
if(ch[0]=='0') {X2=0; break;}
gotoxy(29,13);
delline();
}
for(;;)
{
BELL;
gotoxy(29,14);
cputs(" Command X3 (0 or 1) --> ");
cscanf("%1s",&ch);
if(ch[0]=='1') {X3=1; break;}
if(ch[0]=='0') {X3=0; break;}
gotoxy(29,14);
delline();
}
STOP;
/* */
return 0;
}
/*IIIIIIIIIIIIIIIIIIIIIIIIIIIIII*/
int bit(int x,int y,int bit)
{
settextstyle(Font[3],HORIZ_DIR,5);
settextjustify(CENTER_TEXT,CENTER_TEXT);
setbkcolor(BLACK);
if(bit==0)
{
setcolor(LIGHTBLUE);
outtextxy(x,y,"0");
}
else
{
setcolor(LIGHTRED);
outtextxy(x,y,"1");
}
return 0;
}
/*######################################################*/
Приложение 1. Электронная схема (образец).
| NOT | ||||||||||||||||||||||||||||||||||||||||||||||
| 1 | Z1=Y2Y1X3+Y1Y3X2+Y3Y2X1+X1X2X3 | |||||||||||||||||||||||||||||||||||||||||||||
| NOT | Z2=X3X2+X3X1+X2X1 | |||||||||||||||||||||||||||||||||||||||||||||
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||
| NOT | ||||||||||||||||||||||||||||||||||||||||||||||
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||
| AND | ||||||||||||||||||||||||||||||||||||||||||||||
| 7 | ||||||||||||||||||||||||||||||||||||||||||||||
| AND | OR | Z2 | ||||||||||||||||||||||||||||||||||||||||||||
| 6 | ||||||||||||||||||||||||||||||||||||||||||||||
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||
| AND | ||||||||||||||||||||||||||||||||||||||||||||||
| 5 | ||||||||||||||||||||||||||||||||||||||||||||||
| AND | ||||||||||||||||||||||||||||||||||||||||||||||
| 4 | ||||||||||||||||||||||||||||||||||||||||||||||
| AND | ||||||||||||||||||||||||||||||||||||||||||||||
| 3 | ||||||||||||||||||||||||||||||||||||||||||||||
| OR | Z1 | |||||||||||||||||||||||||||||||||||||||||||||
| 1 | ||||||||||||||||||||||||||||||||||||||||||||||
| AND | ||||||||||||||||||||||||||||||||||||||||||||||
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||
| AND | ||||||||||||||||||||||||||||||||||||||||||||||
| X | X | X | Y | Y | Y | 1 | ||||||||||||||||||||||||||||||||||||||||
| 1 | 2 | 3 | 3 | 2 | 1 | |||||||||||||||||||||||||||||||||||||||||
Приложение 2. Электронная схема (вариант).
| NOT | ||||||||||||||||||||||||||||||||||||||||||||||||
| 1 | Z1=(X2+X3)*(Y1*Y2) | |||||||||||||||||||||||||||||||||||||||||||||||
| NOT | Z2=(X2+X3)+(Y3+X1) | |||||||||||||||||||||||||||||||||||||||||||||||
| 2 | ||||||||||||||||||||||||||||||||||||||||||||||||
| Z3=(Y1*Y2)+(Y3+X1) | ||||||||||||||||||||||||||||||||||||||||||||||||
| NOT | ||||||||||||||||||||||||||||||||||||||||||||||||
| 3 | Z | |||||||||||||||||||||||||||||||||||||||||||||||
| OR | OR | 3 | ||||||||||||||||||||||||||||||||||||||||||||||
| 2 | 4 | |||||||||||||||||||||||||||||||||||||||||||||||
| Z | ||||||||||||||||||||||||||||||||||||||||||||||||
| AND | OR | 2 | ||||||||||||||||||||||||||||||||||||||||||||||
| 1 | 3 | |||||||||||||||||||||||||||||||||||||||||||||||
| Z | ||||||||||||||||||||||||||||||||||||||||||||||||
| OR | AND | 1 | ||||||||||||||||||||||||||||||||||||||||||||||
| 1 | 2 | |||||||||||||||||||||||||||||||||||||||||||||||
| X1 | X2 | X3 | Y3 | Y2 | Y1 | |||||||||||||||||||||||||||||||||||||||||||
Литература.
-
Подбельский В.В., Фомин С.С. Программирование на языке Си - М: Финансы и статистика, 2000.
-
Керниган Б., Ритчи Д. Язык программирования Си / Пер. с англ. - М.: Финансы и статистика, 1992.
-
Болски М.И. Язык программирования Си / Пер. с англ. Справочник. - М.: Радио и связь, 1988.
-
Уэйт М., Прата С., Мартин Д. Язык Си / Пер. с англ. - М.:Мир, 1988.
-
Белецкий Я. Энциклопедия языка Си / Пер. с англ. - М.:Мир, 1992.
-
Джехани Н. Программирование на языке Си. / Пер. с англ. Справочник. - М.: Радио и связь, 1988.
-
Уинер Р. Язык Турбо Си / Пер. с англ. - М.:Мир, 1991.
-
Левкин Г.Н., Левкина В.Е. ДЕМО ТУРБО СИ - М: ПРОК, 1992.
-
Бошкин А.В., Дубнер П.Н. Работа в Турбо СИ – М: ЮКИС, 1991.
-
Б.П. Прокофьев, Н.Н. Сухарев, Ю.Е. Храмов Графические средства Турбо С и Турбо С++ - М: Финансы и статистика, 1992.
-
Шилдт Г. Полный справочник по С, 4-е издание/ Пер. с англ. – М, С-Пб, Киев: Издательский дом Вильямс, 2002.
-
Трой Д. Программирование на языке Си для персонального компьютера IBM PC/ Пер. с англ. – М: Радио и связь, 1991.
-
Касаткин А.И., Вальвачев А.Н. От Turbo C к Borland C++ Справочное пособие – Минск: Вышэйшая школа, 1992
-
Касаткин А.И. Управление ресурсами Справочное пособие – Минск: Вышэйшая школа, 1992.
-
Касаткин А.И. Системное программирование Справочное пособие – Минск: Вышэйшая школа, 1993.
-
Евтеев В.В., Махонько А.М., Юзбашьянц Основы информатики и вычислительной техники, Методические рекомендации – М: Государственная Академия Управления им. С. Орджоникидзе, Учебный центр довузовской подготовки АЗЪ, 1987.
-
Чернов Е.А. Проектирование станочной электроавтоматики – М: Машиностроение, 1989.
Содержание.
Стр.
| 1. Предисловие. | 1 |
| 2. Основные правила при работе с программами, написанными на языке Turbo C. | 2 |
| 3. Программный имитатор электронных схем. | 4 |
| 4. Порядок разработки ПАИЭС на основе образца. | 5 |
| 5. Варианты учебных работ. | 6 |
| 8. Исходный текст программы на языке Си. | 9 |
| Приложение 1. Электронная схема (образец). | 23 |
| Приложение 2. Электронная схема (вариант). | 24 |
| Литература. | 25 |















