Cours_C (Выполненная курсовая работа)

2018-01-12СтудИзба

Описание файла

Файл "Cours_C" внутри архива находится в следующих папках: MGAPI_C, DOC_C. Документ из архива "Выполненная курсовая работа", который расположен в категории "". Всё это находится в предмете "программирование и алгоритмизация" из 5 семестр, которые можно найти в файловом архиве РТУ МИРЭА. Не смотря на прямую связь этого архива с РТУ МИРЭА, его также можно найти и в других разделах. Архив можно найти в разделе "курсовые/домашние работы", в предмете "программирование и алгоритмизация" в общих файлах.

Онлайн просмотр документа "Cours_C"

Текст из документа "Cours_C"

ФЕДЕРАЛЬНОЕ АГЕНСТВО ПО ОБРАЗОВАНИЮ

ГОУВПО

МОСКОВСКАЯ ГОСУДАРСТВЕННАЯ АКАДЕМИЯ

ПРИБОРОСТРОЕНИЯ И АВТОМАТИКИ

А.Е. Стефанович

Программный имитатор электронных схем.

(ПИЭС)

Методические указания
по выполнению курсового проекта
по дисциплине
“Программирование и основы алгоритмизации”.

(3401)

Москва 2005

1. Предисловие.

Цель методического пособия - обучение учащихся синтезу систем управления на основе программных имитаторов электронных схем (ПИЭС).

Основой методического пособия является программа imMG.c, написанная автором на языке программирования Си и представляющая собой программный конструктор, на основании которого можно создавать ПИЭС, выполняющие заданные логические функции, а затем из этих ПИЭС синтезировать заданную систему управления. При этом может быть обеспечена любая логика работы.

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

ПИЭС может быть использован при разработке курсовых проектов. В главе 5 приведены исходные данные для 1152 вариантов курсовых работ.

2. Основные правила при работе с программами, написанными на языке Turbo C.

При работе с программой необходимо:

- напечатать листинг исходного текста программы, используя соответствующую дискету;

- изучить листинг исходного текста программы, поставив себя на место написавшего ее ПРОГРАММИСТА:

  • комментарий заголовка,

  • вход программы Entry,

  • выход программы Exit,

  • разделы программы (Includes, Declarations, Defines, Globals variables, Main, Programms, ...),

  • комментарии,

  • структуру программы (линейный режим следования операторов, блоки операторов, условные и безусловные переходы, циклы, ...),

  • вызовы функций,

  • прототипы (декларации, программные интерфейсы, описания) функций (в том числе в текстах, включаемых библиотек типа h),

  • тексты функций,

  • распределение памяти,

  • присвоение переменных;

- изучить листинг исходного текста обучающей программы, поставив себя на место ПРЕПРОЦЕССОРА, обрабатывающего инструкции #include, #define,… и создающего из исходного текста на языке Си расширенный текст на языке Си;

- изучить листинг исходного текста обучающей программы, поставив себя на место ТРАНСЛЯТОРА, создающего из расширенного текста на языке Си двоичный файл объектного модуля типа obj;

- изучить листинг исходного текста обучающей программы, поставив себя на место РЕДАКТОРА СВЯЗЕЙ (ЛИНКЕРА), создающего из двоичного файла объектного модуля типа obj двоичный файл исполняемого модуля типа exe;

- изучить листинг исходного текста обучающей программы, поставив себя на место ЦЕНТРАЛЬНОГО ПРОЦЕССОРА, обрабатывающего инструкции исполняемого модуля типа exe;

- запустить файл исполняемого модуля типа exe;

- следить за выполнением запущенной программы на экране дисплея, одновременно изучая листинг соответствующего исходного текста;

- изучить работу функций препроцессора (#include, #define, ...),

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

  • выполняемая функция,

  • заголовок,

  • прототип (декларация, программный интерфейс, описание функции),

  • библиотека (файл типа h или c), содержащая прототип или исходный текст (тело) функции,

  • возможные варианты спецификации формата, типы аргументов, виды печати (если функция осуществляет вывод информации, например, функция printf),

  • тип функции (тип возвращаемого оператором return значения),

  • типы входных и выходных переменных,

  • распределение и типы памяти для хранения входных и выходных переменных,

  • обмен информацией между вызывающей и вызываемой программами,

  • особые замечания,

  • основной результат работы,

  • сопутствующие результаты работы (в частности, какую информацию возвращает оператор return),

  • родственные функции (например, изучая работу функции printf изучить работу функций sprintf, fprintf, vfprintf, vprintf, vsprintf)

  • функции, выполняющие противоположные операции (например, в случае изучения функции printf, осуществляющую вывод информации, изучить также функцию scanf, осуществляющую ввод информации).

- изучить работу операторов (for, while, do-while, swith, if, if-else, else-if, break, ...), используя рекомендуемые учебники;

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

- на отдельных листах письменно прокомментировать примененные функции по вышеприведенной схеме.

3. Программный имитатор электронных схем.

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

Универсальный метод синтеза промышленной электроавтоматики основан на создании циклограмм работы механизмов и их описании уравнениями алгебры логики. Этот метод позволяет проектировать оптимальные принципиальные схемы любой степени сложности и на любой элементной базе.

Этот же метод (создание циклограмм работы механизмов и их описание уравнениями алгебры логики) может быть использован при синтезе систем управления на основе ПИЭС. В этом случае с помощью программ, написанных ,например, на языке Ассемблер или Си, имитируется работа электронных устройств, выполняющих логические функции (инвертора НЕ, элемента И, элемента ИЛИ и т.д.), а затем из этих программных имитаторов синтезируется заданная система управления, имеющая такие же логические входные и выходные сигналы, что и имитируемая электронная схема.

Прилагаемый исходный текст (образец) ПИЭС (программа imMG.с ) соответствует электронной схеме (см. Приложение 1), имеющей три входа X1, X2, X3, два выхода Z1 и Z2 и описываемой логическими уравнениями:

Z1=Y2Y1X3+Y1Y3X2+Y3Y2X1+X1X2X3

Z2=X3X2+X3X1+X2X1

где Y1, Y2, Y3 - инвертированные X1, X2, X3.

При транслировании указанного текста получается ПИЭС imMG.exe , описываемый вышеприведенными уравнениями. При запуске ПИЭС imMG.exe и вводе двоичных кодов входных значений X1, X2, X3 (для трех входов возможно восемь комбинаций) на выходах Z1 и Z2 получаются двоичные коды выходных значений в соответствии с логикой работы заданной схемы.

4. Порядок разработки ПИЭС на основе образца.

Исходный текст (образец) ПИЭС составлен по модульному принципу. т.е. состоит из подпрограмм (программных модулей). При разработке конкретного ПИЭС любой из модулей может быть легко исключен из программы, любой другой модуль может быть легко вставлен в программу. Для удобства работы с ПИЭС разделы исходного текста (образца), требующие вмешательства при синтезе конкретной электронной схемы, отмечены комментарием /* <=### CHANGE ### */).

При разработке на основе исходного текста (образца) ПИЭС конкретного ПИЭС необходимо:

· описать работу электронной схемы уравнениями алгебры логики;

· написать исходный текст ПИЭС, соответствующий полученным уравнениям;

· транслировать и линкеровать исходный текст, с целью получения исполняемого модуля ПИЭС;

· запустить ПИЭС, подать на его вход все возможные комбинации двоичных кодов и проверить соответствие всех возможных комбинаций выходных значений полученным уравнениям;

· представить на листах формата А4:
- титульный лист курсовой работы, в соответствии с требованиями, принятыми в данном учебном заведении;
- графический титульный лист (печатается на принтере при запуске программы);
- графический лист принципиальной схемы системы управления с указанными значениями входных, промежуточных и выходных параметров (печатается на принтере при запуске программы);
- исходный текст программного имитатора электронной схемы на языке Turbo C согласно прилагаемому в данной работе образцу (делаются изменения в прилагаемом образце в соответствии с уравнениями алгебры логики заданной электронной схемы, программа транслируется, линкуется, отлаживается, и только после отладки откорректированный исходный текст распечатывается на принтере, что обеспечивает его полное соответствие исполняемому модулю);

· представить на дискете исполняемый модуль ПИЭС и продемонстрировать его работу при любой возможной комбинации входных кодов.

5. Варианты курсовой работы.

В рассматриваемых курсовых работах задания даются на программную имитацию двоичных цифровых схем систем управления, имеющих три входа X1, X2, X3 и инвертирующие их логические устройства типа НЕ (NOT).

С трех входных X1, X2, X3 и трех инвертированных Y1, Y2, Y3 цепей сигналы поступают на три логические устройства первого уровня типа
И (AND) и ИЛИ (OR) с двумя входами. Варианты наборов устройств первого уровня задаются Таблицей 1 (8 вариантов).

Коммутация трех логических устройств первого уровня с входными X1, X2, X3 и инвертированными Y1, Y2, Y3 цепями задается Таблицей 2 (6 вариантов).

С выходов трех логических устройств первого уровня двоичные сигналы подаются на три логические устройства второго уровня типа
И (AND) и ИЛИ (OR) с двумя входами. Варианты наборов устройств второго уровня также задаются Таблицей 1 (8 вариантов).

Коммутация трех логических устройств второго уровня с тремя выходными цепями первого уровня задается Таблицей 3 (3 варианта).

С выходов трех логических устройств второго уровня снимаются выходные сигналы имитируемой схемы Z.

Количество возможных заданий на курсовое проектирование:

K= 8*6*8*3 = 1152.

Таблица N1.

Вариант набора

Логическое устройство

N

1

2

3

0

AND

AND

AND

1

AND

AND

OR

2

AND

OR

AND

3

AND

OR

OR

4

OR

AND

AND

5

OR

AND

OR

6

OR

OR

AND

7

OR

OR

OR

Таблица N2.

Коммутация логических устройств первого уровня.

N

X1

X2

X3

Y1

Y2

Y3

X1

X2

X3

Y1

Y2

Y3

0

1

2

3

4

5

Таблица N3.

Коммутация логических устройств второго уровня.

N

1

2

3

1

2

3

0

1

2

Пример.

Создать программный имитатор двоичной цифровой системы управления, имеющий следующую схему (см. Приложение 2):

1. Три логические устройства первого уровня:
Таблица. 1, N = 5.

2. Коммутация трех логических устройств первого уровня с входными X1, X2, X3 и инвертированными Y1, Y2, Y3 цепями:
Таблица. 2, N = 1.

3. Три логические устройства второго уровня:
Таблица. 1, N = 3.

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5139
Авторов
на СтудИзбе
441
Средний доход
с одного платного файла
Обучение Подробнее