imiaDPd (780151), страница 6
Текст из файла (страница 6)
{
setcolor(BLACK);
outtextxy(27*kx,3*ky,str_counter_commands);
}
/* */
return 0;
}
/*IIIIIIIIIIIIIIIIIIIIIIIIIIIIII*/
int display_regime_work()
{
/*----------------------------- Variables */
char str_regime_work[2];
int kx; /* Scale of the draft */
int ky;
/* */
kx=Maxx/COL_D;
ky=Maxy/ROW_D;
/*----------------------------- Display Interval_hand */
sprintf(str_regime_work,"%c",Regime_work);
/* */
settextstyle(SMALL_FONT,HORIZ_DIR,5);
settextjustify(LEFT_TEXT,CENTER_TEXT);
setcolor(WHITE);
outtextxy(27*kx,4*ky,str_regime_work);
/* */
return 0;
}
/*IIIIIIIIIIIIIIIIIIIIIIIIIIIIII*/
int file_control() /* <=### CHANGE ### */
{
char str_regime_work[2];
char *regime_work[]=
{
"REGIME: 0\nHAND_COMMAND ",
"REGIME: 1\nHAND_COMMAND--HAND_TIME ",
"REGIME: 2\nAUTOMAT_COMMANDS--HAND_INTERVAL ",
"REGIME: 3\nAUTOMAT_COMMANDS--AUTOMAT_INTERVALS ",
"REGIME: 4\nAUTOMAT_COMMANDS--AUTOMAT_TIMES ",
"REGIME: 5\nAUTOMAT_COMMANDS_RANDOM--AUTOMAT_INTERVALS_RANDOM--HAND__INTERVAL_MAX "
};
/*----------------------------- Heading */
sprintf(str_regime_work,"%c",Regime_work);
get_date_pc_counted();
if(Counter_commands==1)
{
fprintf
(Fp2,"\n==================================================================\n");
/* */
if(Regime_work>=1)
fprintf
(Fp2,"File entry: %s\n",Fname_entry);
/* */
fprintf
(Fp2,"File exit : %s\n",Fname_exit);
fprintf
(Fp2,"%s\n",Str_date_pc_counted);
fprintf
(Fp2,"%s\n",regime_work[atoi(str_regime_work)]);
/* */
fprintf
(Fp2,
"\n_____Count__H__M__S_X1_X2_X3_Y1_Y2_Y3_And1_And2_And3_And4_And5_And6_And7_Or1_Or2\n");
}
/*------------- Registration */
fprintf(Fp2,
"\n%10ld%3d%3d%3d%3d%3d%3d%3d%3d%3d%5d%5d%5d%5d%5d%5d%5d%4d%4d\n",
Counter_commands,H,M,S,X1,X2,X3,Y1,Y2,Y3,And1,And2,And3,And4,And5,And6,And7,
Or1,Or2);
/* */
return 0;
}
/*IIIIIIIIIIIIIIIIIIIIIIIIIIIIII*/
int end_programm()
{
/*----------------------------- Variable */
int kx; /* Scale of the draft */
int ky;
/* */
kx=Maxx/COL_D;
ky=Maxy/ROW_D;
/*----------------------------- End programme */
settextstyle(SMALL_FONT,HORIZ_DIR,6);
settextjustify(LEFT_TEXT,CENTER_TEXT);
setcolor(YELLOW);
outtextxy(32*kx,5*ky,"End programme");
/* */
display_time_pc_counted();
display_time_ordered();
display_next_entrance();
display_interval_counted(NOT_DELETE);
display_interval_ordered(NOT_DELETE); /* Max: 65536 s */
display_counter_commands(NOT_DELETE);
display_regime_work();
/* */
STOP_DRAFT;
exit(EXIT_SUCCESS);
/* */
return 0;
}
/*IIIIIIIIIIIIIIIIIIIIIIIIIIIIII*/
/*######################################################*/
9. Входные файлы режимов работы NN 2, 3, 4:
x2.c, x3.c, x4.c.
Входной файл в режиме 2 имеет формат ввода разрядов X1, X2, X3 двоичных команд:
/*-------------- Reading of the order */
fscanf
(Fp1,"\n%2d%2d%2d\n",&X1,&X2,&X3);
/* */
Например:
1 0 1
0 0 1
1 1 0
Входной файл в режиме 3 имеет формат ввода временных интервалов Interval_ordered (секунды) и разрядов X1, X2, X3 двоичных команд:
/*-------------- Reading of the order */
fscanf
(Fp1,"\n%10d%2d%2d%2d\n",&Interval_ordered,&X1,&X2,&X3);
/* */
Например:
7 1 0 1
12 0 0 1
5 1 1 0
Входной файл в режиме 4 имеет формат ввода времен выполнения двоичных команд Ho (часы), Mo (минуты), So (секунды) и соответственных разрядов X1, X2, X3 двоичных команд:
/*-------------- Reading of the order */
fscanf
(Fp1,"\n%3d%3d%3d%2d%2d%2d\n",&Ho,&Mo,&So,&X1,&X2,&X3);
/* */
Например:
12 34 55 1 0 1
12 34 56 0 0 1
12 34 57 1 1 0
10. Выходной контрольный файл CONTROL.C
(“черный ящик”).
Пример выходной информации, записанной в файл CONTROL.C:
========================================================
File entry: x3.c
File exit : control.c
20 Oct 2003
REGIME: 3
AUTOMAT_COMMANDS--AUTOMAT_INTERVALS
_____Count__H__M__S_X1_X2_X3_Y1_Y2_Y3_And1_And2_And3_And4_And5_And6_And7_Or1_Or2
1 15 37 12 1 1 0 0 0 1 0 0 0
0 0 0 1 0 1
2 15 37 17 1 0 0 0 1 1 0 0 1 0 0 0 0 1 0
3 15 37 23 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1
4 15 37 30 0 1 1 1 0 0 0 0 0 0 1 0 0 0 1
5 15 37 38 0 0 1 1 1 0 1 0 0 0 0 0 0 1 0
6 15 37 47 0 0 0 1 1 1 0 0 0 0 0 0 0 0 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. Перечень и назначение подпрограмм программного автоматизированного имитатора электронных схем. | 7 |
| 6. Порядок разработки ПАИЭС на основе образца. | 9 |
| 7. Варианты учебных работ. | 10 |
| 8. Исходный текст программы на языке Си. | 13 |
| 9. Входные файлы режимов работы NN 2, 3, 4: | 47 |
| 10. Выходной контрольный файл CONTROL.C | 48 |
| Приложение 1. Электронная схема (образец). | 49 |
| Приложение 2. Электронная схема (вариант). | 50 |
| Литература. | 51 |
52















