Написание контрольных, курсовых, дипломных работ, выполнение задач, тестов, бизнес-планов
  • Не нашли подходящий заказ?
    Заказать в 1 клик:  /contactus
  •  
Главная \ Методичні вказівки \ Системное программное обеспечение

Системное программное обеспечение

« Назад

Системное программное обеспечение 28.07.2015 04:30

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ
РОССИЙСКОЙ ФЕДЕРАЦИИ

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

Государственное образовательное учреждение

высшего профессионального образования

"Ижевский государственный технический университет"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

МЕТОДИЧЕСКИЕ  УКАЗАНИЯ

для выполнения курсовой работы по дисциплине
"Системное программное обеспечение"

на тему
"Эмуляция математического сопроцессора 80
x87"

 

для студентов направления 230100
«Информатика и вычислительная техника»

Форма обучения очная

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ижевск 2008

МЕТОДИЧЕСКИЕ  УКАЗАНИЯ

для выполнения курсовой работы по дисциплине
"Системное программное обеспечение"

на тему
"Эмуляция математического сопроцессора 80
x87"

для студентов специальности

направления 230100 «Информатика и вычислительная техника»

Форма обучения очная

 

Кафедра "Программное обеспечение"

 

 

 

 

Составитель: Лусников Р.Г., к.т.н., доцент.

 

 

 

 

Методические указания составлены на основании государственного
образовательного стандарта высшего профессионального образования
и утверждены на заседании кафедры

Протокол от "        "                        200       г. №        .

 

 

 

 

 

 

 

 

 

 

 

Методические указания предназначены для использования студентами направления 230100 Информатика и вычислительная техника.

 

СОДЕРЖАНИЕ

 

ВВЕДЕНИЕ. 4

1.      Сведения для выполнения работы.. 4

2.      Организация проведения курсовой работы.. 9

2.1. Темы курсовых работ. 9

2.2. Порядок выполнения курсовой работы.. 10

2.3. Сроки выполнения отдельных этапов. 10

2.4. Порядок защиты курсовой работы.. 11

2.5. Правила оформления технического задания. 11

2.6. Содержание пояснительной записки. 12

СПИСОК ЛИТЕРАТУРЫ.. 14

Приложение 1. Пример технического задания................................................... 15

Приложение 2. Пример руководства программиста.......................................... 17

Приложение 3. Пример содержания пояснительной записки............................ 19


Введение

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

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

Одним из предметов СПО остается восполнение «пробелов» в аппаратной платформе вычислительных устройств, когда для расширения возможностей микропроцессора, часть его команд фактически выполняется не им самим, а с помощью программной эмуляции. Это относилось к процессорам Intel 8086 – 80386, это зачастую относится и существующим low-end платформам для недорогих устройств, например для мобильных телефонов.

В рамках данной работы студентам необходимо изучить основы работы математического сопроцессора Intel 80x86 (FPU), набор его команд и регистров,  и затем на этой базе создать программную эмуляцию FPU: набор регистров и заданную команду.

Для выполнения курсовой работы предполагается использование среды Microsoft Visual C++ с ассемблерными вставками.

1.  Сведения для выполнения работы

Среда    эмулируемого    математического сопроцессора включает в себя следующие блоки данных:

  • регистровый стек математического сопроцессора (R0...R7);
  • слово состояния математического сопроцессора (SWR);
  • слово управления математического сопроцессора (CWR);
  • слово признаков (тегов) математического сопроцессора (TWR).

 

Регистровый стек математического сопроцессора включает в  себя 8 регистров, каждый длиной 80 бит, для  размещения  чисел  с  плавающей точкой во временном формате сопроцессора. Структура регистрового стека математического сопроцессора изображена на рис. 1.

 

Числа с плавающей  точкой  во временном формате представляются  следующим образом:

1)    с  0  по  63  бит:  мантисса,  целая часть которой в нормализованном виде равна 1 (всегда записывается  в прямом коде);

2)    с 64 по 78 бит: двоичный порядок, записываемый со смещением 16383.

3)    79 бит: бит знака числа. Если он равен  0 – число положительное, если бит равен 1 – число отрицательное.

                          ┌───────────┐

                          │  R0       ║

                          ├───────────║

                          │  R1       ║

                          ├───────────║

                          │  R2       ║

                          ├───────────║

                          │  R3       ║

                          ├───────────║

                          │  R4       ║

                          ├───────────║

                          │  R5       ║

                          ├───────────║

                          │  R6       ║

                          ├───────────║

                          │  R7       ║

                          └═══════════╝

 

Рис.1. Структура регистрового стека

 

 

           ┌──┬─────────┬───────────────────────────┐

     биты: │79│78 ... 64│63        ...             0║

           └════════════════════════════════════════╝

           знак  порядок          мантисса

 

                            Рис. 2. Временный формат вещественного числа

 

В памяти числа могут также храниться в коротком (32 бита) и длинном (64 бита) вещественных форматах. В этих форматах целая часть мантиссы не хранится, а всегда подразумевается равной 1.

 

           ┌──┬─────────┬───────────────────────────┐

     биты: │31│30 ... 23│22        ...             0║

           └════════════════════════════════════════╝

           знак  порядок          мантисса

                            Рис. 3. Короткий формат вещественного числа

 

           ┌──┬─────────┬───────────────────────────┐

     биты: │63│62 ... 52│51        ...             0║

           └════════════════════════════════════════╝

           знак  порядок          мантисса

                            Рис. 4. Длинный формат вещественного числа

 

FPU выполняет все вычисления в 80-битном расширенном формате, а 32- и 64-битные числа используются для обмена данными с основным процессором и памятью.

Кроме обычных чисел формат IEEE предусматривает несколько специальных случаев, которые могут получаться в результате математических операций и над которыми также можно выполнять некоторые операции:

  • положительный ноль: все биты числа сброшены в ноль;
  • отрицательный ноль: знаковый бит — 1, все остальные биты — нули;
  • положительная бесконечность: знаковый бит — 0, все биты мантиссы — 0, все биты экспоненты — 1;
  • отрицательная бесконечность: знаковый бит — 1, все биты мантиссы — 0, все биты экспоненты — 1;
  • денормализованные числа: все биты экспоненты — 0 (используются для работы с очень маленькими числами — до 10-16445 для расширенной точности);
  • неопределенность: знаковый бит — 1, первый бит мантиссы (первые два для 80-битных чисел) — 1, а остальные — 0, все биты экспоненты — 1;
  • не-число типа SNAN (сигнальное): все биты экспоненты — 1, первый бит мантиссы — 0 (для 80-битных чисел первые два бита мантиссы — 10), а среди остальных бит есть единицы;
  • не-число типа QNAN (тихое): все биты экспоненты — 1, первый бит мантиссы (первые два для 80-битных чисел) — 1, среди остальных бит есть единицы. Неопределенность — один из вариантов QNAN;
  • неподдерживаемое число: все остальные ситуации.

Целочисленные типы данных включают в себя целое слово (16 бит), короткое целое (32 бита), длинное целое (64 бита) и упакованное десятичное (BCD, 80 бит). BCD содержит в себе 18 десятичных цифр, каждая из которых кодируется четырьмя битами. Старший байт (в старшем бите)

При загрузке в FPU все эти типы преобразуются в формат временного вещественного числа.

                            Рис. 5. Формат упакованного десятичного числа

 

Слово состояния хранит информацию о текущем состоянии математического  сопроцессора и содержит следующие данные:

 

1)    C0,C1,C2,C3 – биты признаков (используются при сравнении чисел);

2)    TOP  – биты содержащие  номер  физического  регистра  стека (0..7), который в данный момент является вершиной;

3)    биты особых ситуаций:

  • PE – ошибка точности;
  • UE – ошибка переполнения;
  • OE – ошибка антипереполнения;
  • ZE – ошибка деления на 0;
  • DE – ошибка денормализованного операнда;
  • IE – ошибка недействительной операции;

4)    ES – бит суммарной ошибки;

5)    SF – бит ошибки работы со стеком;

6)    B – бит  занятости (предусмотрен для совместимости с сопроцессором 8087).

 

Биты особых ситуаций устанавливаются в состояние 1, если  эта ситуация возникла, иначе они содержат 0.

                

            15               7                     0

           ┌─┬──┬─┬─┬─┬──┬──┬──┬──┬──┬──┬──┬──┬──┬──┐

           │B│C3│T O P│C2│C1│ES│SF│PE│UE│OE│ZE│DE│IE║

           └════════════════════════════════════════╝

 

Рис. 3. Структура слова состояния

 

Слово управления содержит  данные, обеспечивающие контроль над работой математического сопроцессора. Оно включает в себя:

1)    PC – биты управления округлением;

2)    RC – биты управления точностью;

3)    PM,UM,OM,ZM,DM,IM – маски особых ситуаций:

  • PM – маска точности;
  • UM – маска переполнения;
  • OM – маска антипереполнения;
  • ZM – маска деления на 0;
  • DM – маска денормализованного операнда;
  • IM – маска недействительной операции.

Биты RC определяют способ округления результатов команд FPU до заданной точности (табл. 1).

Таблица 1. Способы округления

Значение RC

Способ округления

0

к ближайшему числу

1

к отрицательной бесконечности

2

к положительной бесконечности

3

к нулю

 

Биты PC определяют точность результатов команд FADD, FSUB, FSUBR, FMUL, FDIV, FDIVR и FSQRT (табл. 2).

Таблица 2. Точность результатов

Значение PC

Точность результатов

0

одинарная точность (32-битные числа)

1

зарезервировано

2

двойная точность (64-битные числа)

3

расширенная точность (80-битные числа)

 

Биты 0 – 5 регистра CR маскируют соответствующие исключения — если маскирующий бит установлен, исключения не происходит, а результат вызвавшей его команды определяется правилами для каждого исключения специально.

 

              15              7                   0

             ┌─┬─┬─┬─┬─┬─┬─┬─┬─┬─┬──┬──┬──┬──┬──┬──┐

             │░│░│░│░│R│C│P│C│░│░│PM│UM│OM│ZM│DM│IM║

             └═════════════════════════════════════╝

 

Рис. 4. Структура слова управления

 

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

  • 00 - допустимое ненулевое число;
  • 01 - ноль;
  • 10 - специальное  значение (нечисло,  денормализованное число,
  • бесконечность);
  • 11 - пустой регистр.

 

                   

            15       14 13       12       1         0

           ┌───────────┬───────────┬─────┬───────────┐

           │ признак 7 │ признак 6 │ ... │ признак 0 │

           │ регистра  │ регистра  │ ... │ регистра  │

           └───────────┴───────────┴─────┴───────────┘

 

Рис. 5. Структура слова признаков

2.  Организация проведения курсовой работы

1.1.     2.1. Темы курсовых работ

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

Объем курсовой работы сильно зависит от сложности задачи: чем сложнее задача, тем меньше может быть объем. Средний объем составляет примерно 1-2 тыс. операторов C или С++. (Среду программирования студент выбирает самостоятельно, исходя из выбранной технологии программирования, решаемой задачи, а также личных предпочтений).

Примерные темы курсовых работ (перед началом работы необходимо согласовать с преподавателем):

  1. Программная эмуляция среды сопроцессора Intel 80x87. Команда FILD
  2. Программная эмуляция среды сопроцессора Intel 80x87. Команда FBLD
  3. Программная эмуляция среды сопроцессора Intel 80x87. Команда FIST
  4. Программная эмуляция среды сопроцессора Intel 80x87. Команда FST
  5. Программная эмуляция среды сопроцессора Intel 80x87. Команда FISTP
  6. Программная эмуляция среды сопроцессора Intel 80x87. Команда FBSTP
  7. Программная эмуляция среды сопроцессора Intel 80x87. Команда FSTP
  8. Программная эмуляция среды сопроцессора Intel 80x87. Команда FXCH
  9. Программная эмуляция среды сопроцессора Intel 80x87. Команда FADD
  10. Программная эмуляция среды сопроцессора Intel 80x87. Команда FIADD
  11. Программная эмуляция среды сопроцессора Intel 80x87. Команда FADDP
  12. Программная эмуляция среды сопроцессора Intel 80x87. Команда FSUB
  13. Программная эмуляция среды сопроцессора Intel 80x87. Команда FISUB   
  14. Программная эмуляция среды сопроцессора Intel 80x87. Команда FSUBP   
  15. Программная эмуляция среды сопроцессора Intel 80x87. Команда FSUBR  
  16. Программная эмуляция среды сопроцессора Intel 80x87. Команда FISUBR 
  17. Программная эмуляция среды сопроцессора Intel 80x87. Команда FSUBRP
  18. Программная эмуляция среды сопроцессора Intel 80x87. Команда FMUL    
  19. Программная эмуляция среды сопроцессора Intel 80x87. Команда FIMUL  
  20. Программная эмуляция среды сопроцессора Intel 80x87. Команда FMULP  
  21. Программная эмуляция среды сопроцессора Intel 80x87. Команда FDIV     
  22. Программная эмуляция среды сопроцессора Intel 80x87. Команда FIDIV    
  23. Программная эмуляция среды сопроцессора Intel 80x87. Команда FDIVP   
  24. Программная эмуляция среды сопроцессора Intel 80x87. Команда FDIVR   
  25. Программная эмуляция среды сопроцессора Intel 80x87. Команда FIDIVR  
  26. Программная эмуляция среды сопроцессора Intel 80x87. Команда FDIVRP 
  27. Программная эмуляция среды сопроцессора Intel 80x87. Команда FCOM   
  28. Программная эмуляция среды сопроцессора Intel 80x87. Команда FICOM  
  29. Программная эмуляция среды сопроцессора Intel 80x87. Команда FCOMP
  30. Программная эмуляция среды сопроцессора Intel 80x87. Команда FICOMP
  31. Программная эмуляция среды сопроцессора Intel 80x87. Команда FCOMPP
  32. Программная эмуляция среды сопроцессора Intel 80x87. Команда FTST
  33. Программная эмуляция среды сопроцессора Intel 80x87. Команда FXAM
  34. Программная эмуляция среды сопроцессора Intel 80x87. Команда FRNDINT
  35. Программная эмуляция среды сопроцессора Intel 80x87. Команда FXTRACT
  36. Программная эмуляция среды сопроцессора Intel 80x87. Команда FSCALE
  37. Программная эмуляция среды сопроцессора Intel 80x87. Команда FABS
  38. Программная эмуляция среды сопроцессора Intel 80x87. Команда FCHS

 

2.2. Порядок выполнения курсовой работы

В процессе выполнения курсовой работы студенты должны:

1)    разработать развернутое техническое задание на программный продукт;

2)    выполнить анализ задания, выбрать технологию проектирования и разработать проект программного продукта (логическую и физическую модели);

3)    выбрать структуры данных для реализации предметной области программного продукта;

4)    выбрать стратегию тестирования и разработать тесты;

5)    выбрать язык и среду программирования, наиболее удовлетворяющий проведенным разработкам;

6)    разработать алгоритмы и реализовать их в выбранной среде разработки;

7)    выполнить тестирование и отладку;

8)    разработать необходимую документацию, указанную в техническом задании.

2.3. Сроки выполнения отдельных этапов

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

Основные этапы курсовой работы, сроки их выполнения, представляемые преподавателю результаты приведены в табл. 3.

 

Таблица 1. Этапы выполнения курсовой работы

Этап

Содержание  этапа

Сроки и объем

Представляемые результаты

1

Разработка технического задания и проекта программы

 4 неделя (25%).

Готовое техническое задание.

2

Выбор структур данных, разработка алгоритмов, подготовка данных для тестирования

 8 неделя (50%).

Описание структур данных, схемы алгоритмов, структурная и функциональная схемы продукта, стратегия тестирования и тестовые данные.

3

реализация программы на выбранном языке программирования.

12 неделя (75%).

Тексты программ системы, сам продукт на сменном носителе для проверки функционирования.

4

Подготовка расчетно-пояснительной записки

15 неделя (100%).

Полностью оформленная записка в рукописном или печатном варианте.

5

Защита курсовой работы

16 неделя

Программа, записка, приложения.

 

2.4. Порядок защиты курсовой работы

На защиту студент предоставляет:

      Развернутое техническое задание.

      Программный продукт.

      Расчетно-пояснительную записку на 20-25 страницах в рукописном или отпечатанном виде (шрифт 12 через один интервал), содержащую описание разработки и соответствующие иллюстрации.

      Программную документацию, указанную в разделе «Требования к программной документации» технического задания.

Программный продукт студент предварительно демонстрирует и сдает руководителю, который дает отзыв на работу и допускает студента к защите.

В процессе демонстрации программного продукта проверяется:

  • соответствие программы техническому заданию;
  • работоспособность в различных режимах.

На защите студент коротко (3-5 мин.) докладывает об основных проектных решениях, принятых в процессе разработки, и отвечает на вопросы членов комиссии.

Оценка за курсовую работу выставляется с учетом:

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

2.5. Правила оформления технического задания

Техническое задание должно быть составлено в соответствии с ГОСТ 19.201-78 и включать следующие разделы (количество разделов сокращено относительно ГОСТ):

1. Введение.

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

2. Назначение разработки.

В данном разделе указывается, для чего предназначена данная разработка (более подробно, чем во введении).

3. Требования к программе.

Требования к программному продукту подразделяются на группы и указываются в соответствующих разделах:

          3.1.Требования к функциональным характеристикам (составу выполняемых программой функций, характеристикам и форме представления входных и выходных данных).

          3.2.Требования к надежности (контроль входной и выходной информации, создание резервных копий промежуточных результатов и т. п.).

          3.3.Требования к составу и параметрам технических средств (необходимые параметры, используемых ЭВМ - тип микропроцессора, объем памяти, наличие внешних устройств, например, мыши).

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

  1. 4.   Требования к программной документации.

В данном разделе указывается необходимость наличия руководства программиста, руководства пользователя и руководства системного программиста.

Техническое задание оформляется в соответствии с образцом, приведенным в Приложении 1, и утверждается (подписывается) руководителем курсовой работы.

2.6. Содержание пояснительной записки

Пояснительная записка должна содержать обоснование основных проектных решений, принятых студентом на каждом этапе разработки. Решения должны приниматься исходя из особенностей проектируемого продукта и специфики области его применения. Не должно быть обоснований типа «удобнее», «целесообразнее» и т. п. Необходимо пояснить, чем удобнее, почему целесообразно. По возможности необходимо четко формулировать основания для принятия того или иного решения.

1. Введение. В этом разделе обосновывается актуальность разработки, по возможности, анализируются существующие аналоги и проводится их сравнение с разрабатываемой системой.

  1. 2.   Анализ задания, выбор технологии и среды разработки. В этом разделе записки обосновывается и осуществляется выбор одной из современных технологий программирования. А затем поясняется выбор языка и среды разработки.
  2. 3.   Определение структуры программного продукта. В данном разделе проводится анализ предметной области задачи и ее разбиение (декомпозиция) в соответствии с выбранной технологией, т.е. создается структурная схема  будущего продукта и описывается взаимодействие ее функциональных элементов.

Структурная схема - схема, отражающая состав и взаимодействие подпрограммам разрабатываемого продукта.

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

Большое значение при разработке структуры программного продукта имеет выбор алгоритмов предметной области и структур данных.

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

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

Обычно при выборе структур учитываются следующие параметры: объем и типы данных, а также основные операции над данными (хранение, поиск, сортировка) и частота обращения к ним в процессе выполнения программы. Если возможны варианты, то производится их оценка по объему требуемой памяти и вычислительной сложности выполнения основных операций.

4. Описание реализации программного продукта.  В данном разделе приводятся обобщенные алгоритмы и описывается межпрограммный интерфейс подпрограмм. Всего в записке приводятся три-четыре из наиболее интересных алгоритмов, включая алгоритм основной программы.

Примечание. Каждый алгоритм должен быть представлен:

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

 

Описание каждого алгоритма должно включать:

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

Тексты описания алгоритмов должны быть структурными, предложения короткими. Описание алгоритма должно отражать суть процесса обработки.

В завершении раздела реализации описывается декомпозиция разрабатываемой программы на модули и приводится схема взаимодействия модулей.

6. Подготовка тестовых данных. В этом разделевыбираетсястратегия и методы тестирования. В соответствии с выбранной стратегией и методами строятся  примеры тестов (обязательно с предполагаемыми результатами тестирования). Данные тестов целесообразно представить в виде таблиц.

7. Заключение. Раздел содержит выводы по разработанному продукту, рекомендации по его использованию и возможные направления дальнейшего усовершенствования .

Примечание. В зависимости от выбранной технологии и особенностей разрабатываемого продукта могут иметь место отклонения от рекомендуемой структуры записки. Разделы записки могут объединяться, опускаться, меняться местами. Возможно добавление новых разделов, если этого требует логика изложения. Все интересные материалы, выходящие за пределы рекомендуемого объема записки выносятся в приложение. Объем приложения не лимитируется.

 

Список литературы

  1. Зубков С.В. Ассемблер. Язык неограниченных возможностей. – М.: ДМК Пресс, 1999. – 319 с.
  2. Юров В.И. Assembler. Учебник для вузов. 2–е изд. – СПб.: Питер, 2008. – 637 с.
  3. Керниган Б., Ритчи Д. Язык программирования Си. - М. : Финансы и статистика – 1996, 427 с.  
  4. Сенилов М.А., Почерняев С.В., Килин И.В. Методические  указания  по дипломному  проектированию / Ижевск. гос. техн. университет. ИжГТУ, 2000.

ПРИЛОЖЕНИЕ 1

Пример технического задания

1. Введение

Напряженный график контрольных мероприятий учебного семестра требует от студента регулярной ежедневной работы. Наличие контроля выполнения графика со стороны деканата и куратора позволяет существенно повысить успеваемость студентов. Автоматизированная система учета текущей успеваемости позволить улучшить качество контроля успеваемости со стороны куратора и деканата, так как позволит получать сведения о динамике работы каждого студента.

2. Назначение

Система предназначена для хранения и обработки сведений о текущей успеваемости студентов учебной группы.

Система может быть использована при проведении смотров и для оценки текущей успеваемости каждого студента и группы в целом.

3. Требования к программе или программному изделию

3.1. Требования к функциональным характеристикам

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

                         инициализацию системы (ввод списка группы и т.п.);

                         ввод и коррекцию текущей информации о ходе выполнения учебного графика конкретным студентом;

                         хранение информации в течение длительного времени;

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

а) процент успеваемости по конкретному студенту по всем предметам;

б) процент успеваемости по всем студентам по конкретному заданию;

в) проценты успеваемости по всем студентам и группе в целом по всем предметам;

г) список студентов, не сдавших конкретное задание;

д) процент успеваемости каждого студента и группы по конкретному предмету.

Исходные данные:

¨   список студентов группы;

¨   перечень предметов, перечень заданий по каждому предмету и сроки их сдачи;

¨   текущие данные (еженедельно): процент выполнения каждым студентом каждого задания учебного графика.

3.2. Требования к надежности

1. Программный продукт должен соответствовать современному уровню  требований к разработке программного обеспечения (структурному и объектно-ориентированному подходам).

2. Предусмотреть контроль вводимой информации.

3. Предусмотреть блокировку некорректных действий пользователя при работе с системой.

4. Обеспечить сохранение результатов предыдущей корректировки файла данных в файле с расширением .bak.

3.3. Требования к составу и параметрам технических средств

Система должна работать на IBM-совместимых персональных компьютерах.

Минимальная конфигурация:

¨    тип процессора                           Intel 586 и выше

¨    объем ОЗУ                                  32 Мб и более

¨    тип монитора                              VGA и выше

¨    тип манипулятора                       мышь

 3.4. Требования к информационной и программной совместимости

Система должна работать под управлением Windows NT и выше.

4. Требования к программной документации

¨    Разрабатываемые программные модули должны быть самодокументированны, т.е. тексты программ должны содержать все необходимые комментарии.

¨    В состав сопровождающей документации должны входить:

а) расчетно-пояснительная записка;

б) руководство программиста.

ПРИЛОЖЕНИЕ 2

Пример руководства программиста

П3.1. Назначение программы

Программа    MAIN.EXE    предназначена    для     тестирования разработанной процедуры _FCHS эмуляции команды сопроцессора FCHS.

Программа написана на языке программирования Borland C++  5.01 с   использованием подпрограмм, написанных на  языке программирования Turbo Assembler версия 3.3.

 

П3.2. Условия применения программы

Данная  программа  реализована  для  работы  под  операционной системой MS-DOS v.3.3 и  выше  или  совместимой  с  ней  (PC-DOS, DR-DOS и т.д.). Для компоновки исполнительного файла должны  быть в наличии трансляторы языка  ассемблера  TASM.EXE  версии  3.0, компилятор языка Си BCC.EXE  версии  3.1  и  выше.  Также  обязательно наличие компоновщика программ TLINK.EXE версии 4.0 и выше.

Для функционирования данной программы  может  быть использован IBM-совместимый персональный компьютер с процессором Intel 386 или выше.

 

П3.3. Характеристика программы

Объем исполнимого файла программы  (MAIN.EXE)  35Kb.  Так  как скорость работы вычислительной части программы пренебрежимо мала, то скорость работы программы  зависит  от  скорости  ввода/вывода данных.

Программа "Тестирование процедуры программной эмуляции команды FCHS устройства FPU" представляет собой пакет программ, состоящий из пяти файлов:

GLOBAL.ASM - содержит объявления глобальных переменных                  системы "Эмулятор устройства FPU";

FCHS.ASM - содержит процедуру эмуляции команды  FCHS                  (_FCHS);

MAIN.C - содержит  функции  MAIN  и viewstat для вызова процедуры FCHS и  осуществляет ввод и вывод информации на экран и  диалог с  пользователем, а  также отображение состояния системы эмуляции устройства  FPU с помощью вызова функции viewstat.

TEST.ASM – содержит процедуру _TEST тестирования подпрограммы эмуляции FCHS.

HEAD.H - содержит текст макроса FCHS.

 

П3.4. Обращение к программе

Для компоновки  исполнительного  модуля  необходимо  выполнить следующие действия:

       tasm global.asm

       tasm fchs.asm

       tasm test.asm

       tcc -c -I<drive>:<path>\include test

       tcc [-f| -f87] -L<drive>:<path>\lib

test.obj global.obj fchs.obj

 

П3.5. Сообщения

Сообщения, а также действия пользователя при их появлении.

 

ПРИЛОЖЕНИЕ 3

Пример содержания пояснительной записки

[Аннотация....(в содержании не указывается.)........................................ 2]

[Содержание... ....(в содержании не указывается).................................. 3]

Введение................................................................................................... 4

1. Анализ задания и выбор технологии, языка и среды разработки.... 6

2. Определение структуры программного продукта............................. 7

2.1. Анализ процесса обработки информации и выбор структур

данных для ее хранения............................................................... 7

2.2. Выбор методов решения задачи и разработка основных

алгоритмов предметной области................................................. 9

2.3. Построение структурной схемы программного продукта....... 11

3. Разработка основных алгоритмов программы.................................. 19

4. Выбор стратегии  тестирования и разработка тестов........................ 21

Заключение............................................................................................... 24

Литература............................................................................................... 25

Приложение 1. Техническое задание...................................................... 26

Приложение 2. Руководство программиста........................................... 27

 

 


Комментарии


Комментариев пока нет

Пожалуйста, авторизуйтесь, чтобы оставить комментарий.

Авторизация
Введите Ваш логин или e-mail:

Пароль :
запомнить