Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
28_-_2_.doc
Скачиваний:
7
Добавлен:
25.09.2019
Размер:
2.83 Mб
Скачать

36. Процедуры.

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

Формат описания процедуры:

Procedure Имя_процедуры ( переменная:тип; переменная:тип…);

Раздел описаний

Begin

Тело процедуры

End;

37. Функции.

Формат описания функции:

Function Имя_функции ( переменная: тип; переменная:тип …):Тип_рзультата_функции;

<Раздел описаний>

Begin

<Тело функции>

End;

38. Параметры процедур и функций.

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

procedure name(x,y:integer; a:word; var d:byte);

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

39. Локальные и глобальные объекты в процедуах и функциях.

Глобальными называются объекты, описанные в главной программе. Переменные, которым не было присвоено значение как типизированным константам, перед началом выполнения программы обнуляются. Время жизни глобальных переменных – с начала программы и до её завершения.

Локальные объекты описываются внутри подпрограмм. Распределение памяти под них происходит в момент вызова подпрограммы, а её освобождение – по завершении подпрограммы. Время жизни локальных переменных – с начала работы подпрограммы и до её окончания.

Глобальные переменные доступны в любом месте программы или подпрограммы, кроме тех попрограмм, в которых описаны локальные переменные с такими же именами. Локальные переменные могут использоваться только в подпрограмме, в которой они описаны, и всех вложенных в неё.

40. Структурное представление основных конструкций языка.

Блок-схемы.

41. Перевод вещественных чисел из десятичной системы в двоичную.

42. Перевод вещественных чисел из двоичной СС в 10-чную.

43. Перевод числа из 2-го в 8-чное и из 8-чного в 16- ричн.

44. Перевод чисел из 8-рич и 16-рич системы в десятичную.

45. Внутреннее представление двоичных чисел с фиксированной точкой.

Раз уж в нашем байте нет специального места для десятичной точки, просто договоримся, где мы будем мысленно ее помещать. Скажем, если считать, что байт делится так: биты 0 - 4  - целая часть, биты 5 - 7  - дробная часть, то диапазон представимых чисел получится такой: 00000.000 00000.001 00000.010 .   .   . 11111.110 11111.111 Если считать, что рассматриваются числа без знака, то есть только положительные, то это будет соответствовать таким десятичным числам: 0,  0.125,  0.25,  ... ,  31.75,  31.875 Представление чисел с фиксированной точкой можно расширить на несколько байтов, аналогично тому, как мы поступали с целыми числами. Можно считать, например, что из двух байтов один - это целая часть, а второй - дробная. Точно так же, как мы делали для целых чисел, можно отвести один бит под знак, и таким способом получить представление отрицательных чисел с фиксированной точкой. Представление чисел с фиксированной точкой, как видим, совсем несложно, однако оно не получило широкого распространения. Как вы думаете, почему? Причина очень проста. Допустим, что числа из приведенного ранее примера мы захотели бы представить с фиксированной точкой. Что получилось бы? 6.67 * 10-11  превратилось бы в 0.0000000000667, а 6.06 * 1023  - в 606000000000000000000000 ! То есть очевидно, что для очень больших и очень маленьких чисел представление с фиксированной точкой неудобно. По этой же причине и в компьютерах в основном используют существенно более сложное, но зато и более гибкое представление нецелых чисел с плавающей точкой.