
- •Билет №1
- •Билет №8
- •Билет №10
- •Билет №7
- •1. Внешняя память компьютера. Различные типы носителей информации (информационная емкость, быстродействие и т.Д.).
- •Билет №9
- •Непозиционные системы
- •Позиционная система:
- •1. Измерение информации: содержательный и алфавитный подходы. Единицы измерения информации.
- •Единицы количества информации
- •Например, слово «мама» кодируется 32-разрядным двоичным числом:
- •Физическая и логическая структура магнитных дисков
- •Структура программы, или главный порядок
- •Идентификаторы, или имена
- •Стандартные типы данных
- •Переменные, или реализация типов
- •Нестандартные типы или типы, определяемые программистом
- •Операторы
- •Выполнение простых операторов или как это работает
- •Процедуры и функции, или как структурировать программы
- •Первая программа, или с чего начинают все всегда и везде
Структура программы, или главный порядок
Pascal задумывался автором как учебный язык структурного программирования. Как следствие этого программы, на нем написанные, имеют достаточно простую, но жесткую структуру. Она такова
{ часть объявления имени программы: } Program NameOfProgram; { часть объявления списка подключаемых модулей: } Uses {список модулей через запятую }; { часть объявления констант: } Const {список констант и их значений через ; }; { часть объявления типов пользователя: } Type {список типов пользователя через ; }; { часть объявления переменных: } Var {список переменных и их типов через ;}; { часть основной программы } Begin {точка входа} {операторы основной программы} End. {основная точка выхода и конец программы}
Части Program и Uses не являются обязательными, однако должны быть первыми и единственными в программе. Const, Type и Var частей в программе может существовать множество, их порядок не нормируется и определяется требованиями программирования. Часть основной программы всегда является последней, признаком ее завершения является ключевое слово End с точкой после него. Любая информация после завершения основной части игнорируется компилятором.
Идентификаторы, или имена
По определению Н.Вирта (автора языка) программа есть данные продуманной структуры плюс алгоритмы, эти данные обрабатывающие.
Каждое данное (каждый элемент данных) может (и должен) иметь определенное имя (идентификатор). То же самое относится и к каждому типу данных, и к процедурам, и к функциям. Идентификатором на Pascal'e считается любая последовательность из не более чем 126 символов, состоящая из букв латинского алфавита, цифр и символа "_", причем первым символом должна быть буква. Большие и маленькие буквы не различаются. Идентификаторы, у которых одинаковы первые 63 символа, считаются идентичными.
Первое упоминание (нестандартного, то есть не входящего в список зарезервированных) идентификатора в программе должно быть определением типа, переменной, процедуры или функции. Это означает следующую простую вещь: нельзя использовать тип (переменную...) до тех пор, пока он (она) не определена.
Стандартные типы данных
Для того, чтобы правильно обрабатываться компилятором языка, каждый элемент данных должен иметь некоторый определенный тип. Рассмотрим типы данных, стандартно обрабатываемые на Pascal'e. В основном групп типов девять (самих типов - море):
целочисленные:
Integer :
2 байта со знаком;
ShortInt:
2 байта со знаком;
Longint:
1 байт со знаком;
Word:
2 байта без знака;
byte:
1 байт без знака.
дробные:
Real:
6 байт;
Single:
4 байтa;
Double:
8 байт;
Extended:
10 байт;
Comp:
8 байт
логические:
Boolean:
1 байт;
WordBool:
2 байта;
ByteBool:
1 байт;
LongBool:
4 байта;
символьные:
Char:
1 байт;
String:
от 1 до 255 байт + байт длины;
указатели:
Pointer:
4 байтa, нетипизированный указатель;
^<имя_типа>:
4 байта, типизированнный указатель;
массивы - несколько однотипных элементов, объединенных одним именем; доступ к элементам производится по их номерам (индексам);
записи - несколько разнотипных элементов, объединенных одним именем; доступ к элементам производится по их уникальным "подименам";
множества - несколько однотипных элементов, объединенных одним именем, причем элементы не повторяются; доступ к элементам производится через специальные функции;
файлы - несколько элементов, объединенных одним именем и расположенных вне оперативной памяти; доступ к ним производится с помощью специфических процедур и функций;
типы, определяемые программистом, - поименованные структуры из некоторых стандартных типов (эти типы не являются стандартными).
Следует отметить, что диапазон значений числовых типов определяется их размером и наличием знака для целочисленных типов, а для дробных - размером и спецификацией IEEE. Так к примеру диапазон переменной типа байт - от минус двух в седьмой до плюс двух в седьмой без единицы (-128..127). Логические переменные могут принимать значения False и True(ложь и истина соответственно), символьные - любое из значений ASCII набора, строки - набор символов ASCII длиной от 0 до указанной длины (максимально - 255).
Типы (д) - (и) и строковые типы относятся к так называемым сложным типам (потому как одним именем объединено несколько элементов).