- •История развития эвм.
- •Архитектура эвм. Основные устройства и принципы взаимодействия.
- •Типовые структуры эвм.
- •Система счисления. Способ представления любого числа с помощью цифр.
- •Структурная организация эвм или три иерархических уровня или функциональной части эвм.
- •Раздел 1. Технология проектирования программных продуктов. Алгоритмизация.
- •Программная часть пк.
- •Шаблоны файлов.
- •Структура файловой системы.
- •Принципы работы с программными продуктами.
- •Тема 1. Процессы жизненного цикла программных средств Введение
- •1 Область применения
- •1.2 Область распространения
- •1.3 Адаптация настоящего стандарта
- •1.4 Соответствие
- •1.5 Ограничения
- •2 Нормативные ссылки
- •3 Определения
- •4 Прикладное применение настоящего стандарта
- •4.1 Построение стандарта
- •5 Основные процессы жизненного цикла
- •5.1 Процесс заказа
- •5.2 Процесс поставки
- •5.3 Процесс разработки
- •5.3.1 Подготовка процесса,
- •5.4 Процесс эксплуатации
- •5.5 Процесс сопровождения
- •6 Вспомогательные процессы жизненного цикла
- •6.1 Процесс документирования
- •6.1.2 Проектирование и разработка
- •6.1.З Выпуск
- •6.2 Процесс управления конфигурацией
- •6.2.5 Оценка конфигурации
- •6.3 Процесс обеспечения качества
- •6.3.1 Подготовка процесса
- •6.3.2 Обеспечение продукта
- •6.4 Процесс верификации
- •6.5 Процесс аттестации
- •6.6 Процесс совместного анализа
- •6.7 Процесс аудита
- •6.8 Процесс решения проблем
- •7 Организационные процессы жизненного цикла
- •7.1 Процесс управления
- •7.2 Процесс создания инфраструктуры
- •7.3 Процесс усовершенствования
- •Раздел 3. Программирование в среде turbo pascal (система программирования)
- •Введение.
- •Общая характеристика системы.
- •Среда turbo pascal. Элементы диалоговой среды.
- •Система меню.
- •Search-поиск:
- •Window – окно:
- •Помощь f1:
- •Текстовый редактор.
- •Основные принципы работы с turbo pascal.
- •Язык программирования turbo pascal Структура программы.
- •Алфавит языка.
- •Синтаксис языка.
- •Запись текста программы.
- •Операции и выражения.
- •Встроенные (стандартные) функции языка turbo pascal.
- •Описание констант, переменных и типов .
- •Обзор типов данных.
- •Простые структурированные ссылочные процедурные объектные
- •Целый тип.
- •Понятие целочисленного выражения.
- •Вещественный тип.
- •Логический тип boolean.
- •Операции над логическими данными.
- •Символьный тип char.
- •Диапазон (ограниченный, интервальный).
- •Перечисляемый (перечислимый) тип.
- •Регулярный тип (массив) array.
- •Файловый тип.
- •Описание файлов
- •Чтение из файла.
- •Запись данных в файл.
- •Операции (действия) над файлами.
- •Текстовые файлы.
- •Запись (комбинированный тип данных) record.
- •Операции, выполняемые над записью.
- •Запись с вариантной частью.
- •Множественный тип (множества) set.
- •Операции множеств.
- •Строковый тип string.
- •Обработка операции строковых данных.
- •Типизированные константы.
- •Преобразование, совместимость типов.
- •Способы преобразования типов.
- •Эквивалентность типов.
- •Основы ввода/вывода.
- •Организация форматирования вывода.
- •Операторы языка.
- •Простые операторы.
- •Структурные операторы.
- •Оператор работы над записями with.
- •Операторы работы над записями.
- •Подпрограммы. Процедуры и функции. Блочная структура подпрограммы.
- •Правила по использованию подпрограмм
- •Общая структура подпрограмм
- •Механизм параметров
- •Вычисление значения функции. Завершение подпрограмм.
- •Предварительное описание подпрограмм.
- •Рекурсия и побочный эффект
- •Процедурный тип.
- •Правило использования процедурных типов
- •Директивы компилятора.
- •Модули.
- •Общая структура модуля.
- •Заголовок модуля и связь модулей друг с другом.
- •Интерфейсная часть.
- •Исполняемая часть(реализационная).
- •Инициирующая часть.
- •Компиляция модулей.
- •Стандартные модули.
Обработка операции строковых данных.
1 – присваивание элемента сложения:
ST:=’A’+’B’;
ST:=ST +’C’; {НАРАСТИЛИ}
2 – операция сравнения: >, =, >=, <=, …. При них выполняются следующие правила: более короткая всегда менее более длинной; если длины равны, то происходит поэлементное сравнение символов.
3 – стандартные функции для работы со строками:
-
определение длины строки VAR ST:STRING[70];
LENGHT(ST);
Единственный параметр этой процедуры – выражение типа STRING.
-
CONCAT – функция слияния строк
CONCAT[S1, S2]: STRING;
-
функция копирования
COPY(S:STRING, I: BYTE;C:BYTE): STRING;
4 – DELETE – производит удаление из под строки S под строку C, начиная с символа I.
DELETE(S, I, C);
5 – INCERT(S, STROKA, I); - вставка. Предназначена для вставки подстроки S в строку, начиная с количества символов =I.
6 – Преобразования строки в целые и вещественные типы (VAL) и обратно.
Типизированные константы.
Типизированные константы – это переменные с заданным начальным значением в разделе CONST.
Пример описания:
CONST
<ИДЕНТИФИКАТОР>: ТИП=<ЗНАЧЕНИЕ>
MAX: BYTE = 99;
MIN: 1..100 = 99;
Свойства типизированных констант:
А) описывается в CONST;
Б) получает начальное значение;
В) аналогично переменным, имеют заданный тип;
Г) могут получать новые значения.
Типизированные константы могут быть любого типа.
CONST
X : ARRAY[1..10] OF BYTE = 6;
Самые распространенные ошибки при использовании типизированных констант:
-
нельзя использовать константы в качестве границ диапазона.
CONST
MIN:BYTE = 0;
MAX; BYTE = 100; НЕЛЬЗЯ!!!
VAR ARRAY[MIN .. MAX] OF BYTE
[MIN1 .. MAX1]
-
нельзя использовать список идентификаторов типизированных констант
CONST
A, B, C: BYTE =0;
- нельзя использовать в качестве значений функций X:REAL = PI; {PI - ФУНКЦИЯ}
-
нельзя объявлять в разделе переменных: VAR …
TYPE CUBE = ARRAY[1..2 ,1..2, 1..2] OF BYTE;
C:CUBE = (((1, 2),(3, 4));((5, 6),(7, 8)));
Задача: Расписать как выглядят все элементы С.
C[1,1,1]=1
C[1,1,2]=2
C[1,2,2]=3
C[2,2,2]=4
C[1,2,1]=5
C[2,1,1]=6
C[2,2,1]=7
C[2,1,2]=8
Определение типизированных констант как многомерного массива (см. выше пример).
Подмассивы – элементы многомерного массива, заключенные в отдельные круглые скобки. Типизированные константы могут быть простых строковых типов, типа массив, типа запись, типа множества.
-
CONST T:STRING = ‘ВЕСНА’;
A:STRING[3] = ‘N_O’;
-
TYPE P=RECORD;
X, Y:REAL;
END;
CONST CENTER:P = (X:10.0;Y:10.0);
-
TYPE DAY=RECORD
NAME: (MON, TUE, WED, …, SUN);
NUM: 1..31;
MONTH: 1..12;
END;
CONST SOMEDAY : DAY(NAME:WED, NUM:12, MONTH:4);