Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Informatika_2-y_semestr

.pdf
Скачиваний:
18
Добавлен:
11.04.2015
Размер:
1.98 Mб
Скачать

Информатика 2012г.

11

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

Характеристики коммуникационной сети:

-скорость передачи данных по каналу связи (бит/сек);

-пропускная способность канала связи (количество знаков в секунду);

-достоверность передачи информации (количество ошибок на знак, показатель 10-6 – 10-7 ошибок/знак);

-надежность канала связи и модемов (измеряется средним временем безотказной работы, как минимум несколько тысяч часов).

Архитектура компьютерных сетей

Архитектура вычислительной сети – описание ее общей модели. Для объединения различных вычислительных сетей была разработана модель архитектуры открытых систем.

Открытая система – система, взаимодействующая с другими системами в соответствии с принятыми стандартами. Принята семиуровневая эталонная архитектура открытых систем.

Уровень

7 Прикладной

6 Представительный

5 Сеансовый

4 Транспортный

3 Сетевой

2 Канальный

1 Физический

7-й уровень – прикладной обеспечивает поддержку прикладных процессов конечных пользователей. Содержит все элементы сервиса для прикладных задач пользователя.

6-й – представительный определяет синтаксис данных в модели, т.е. представление данных.

5-й – сеансовый реализует установление и поддержку сеанса связи между двумя абонентами через коммуникационную сеть.

Три верхних уровня объединяют и называют процесс или прикладной процесс. Они определяют функциональные особенности сети как прикладной системы.

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

Информатика 2012г.

12

3-й – сетевой определяет интерфейс оконечного оборудования данных пользователя с сетью коммуникации пакетов. Он отвечает за маршрутизацию пакетов в сети и за связь между сетями.

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

1-й – физический – выполняет процедуры в канале связи. Его основная задача – управление аппаратурой передачи данных и каналом связи.

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

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

Протокол - набор правил, определяющий взаимодействие двух одноименных уровней модели открытых систем в различных абонентских ЭВМ. Основные типы протоколов:

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

Бит-ориентированные протоколы – поток битов, не разделяемый на байты. Для разделения кадров используются флаги. Более скоростной, малое затухание в физической среде.

Информатика 2012г.

13

Язык программирования Pascal

Язык программирования Паскаль был разработан в 1968-1971 гг. Никлаусом Виртом в Цюрихском Институте информатики ( Щвейцария ) и назван в честь знаменитого математика Блеза Паскаля.

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

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

A, B, C, D …..X, Y, Z a, b, c, ……x, y, z

Десять арабских цифр от 0 до 9 Двадцать два специальных символа

+ - * / = > < . , ; : @ ‘ ( ) [ ] { } # $ ^

Символы из алфавита языка используются для построения базовых элементов программ – лексем.

Лексема – минимальная единица языка имеющая, имеющая самостоятельный смысл.

Классы лексем:

1. Служебные (зарезервированные) слова. Ограниченная группа слов.

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

идентификаторов, переменных, констант и т.д..

 

Служебные слова:

 

 

absolute

and

array

asm

assembler

begin

case

const

constructor

destructor

div

do

downto

else

end

external

file

for

forward

function

go to

if

implementation

in

inline

interface

interrupt

label

mod

nil

not

object

of

or

packed

private

procedure

program

record

repeat

set

shl

shr

string

then

to

type

unit

until

uses

var

virtual

while

with

xor

 

 

Информатика 2012г.

14

2. Идентификаторы (имена). Формируются по следующей диаграмме

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

3.Изображения. Группа лексем обозначающих числа, символьные строки и некоторые другие значения.

4.Знаки операций – предназначены для задания действий по преобразованию данных и вычислению значений.

5.Разделители – формируются из специальных символов. Комментарии

произвольная последовательность символов заключенных в разделители вида (* и *). Например (* Это комментарий *)

Структура Pascal программы

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

Программа снабжена заголовком, который задает имя программы и ее параметры. Текст программы должен завершатся символом ‘.’ (точка).

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

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

Блок = [раздел описания меток]

[раздел определения констант] [раздел определения типов] [раздел описания переменных]

[раздел описания процедур и функций] [раздел операторов]

Пример простой программы:

Информатика 2012г.

15

Программа вычисляет ряд вида R=1+1/2+1/3+…+1/N. Program example;

var

N: integer; R: real;

begin

readln(N);

R:=0; While N>0 do

begin R:=R+1./N; N:=N-1; end;

writeln(R);

end.

Раздел описания меток

Любой оператор в программе может быть помечен меткой. Метка ставится перед оператором и отделяется от него двоеточием. Метки должны быть описаны в разделе описания меток прежде чем они будут использованы. Синтаксис :

Раздел описания меток = “Label метка”; Метка = целое без знака

Пример Label 3, 100, 9999;

Использование меток при написании программы не приветствуется.

Раздел описания констант

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

Синтаксис:

Описание констант

Определение константы

 

Информатика 2012г.

16

Использование в программе идентификаторов констант вместо записи

 

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

 

лучшему ее пониманию.

 

Например:

 

const

HIGH=100;

 

 

Low=- HIGH;

 

 

В качестве констант разрешается использовать целые и

 

вещественные значения, а так же строки

 

Const

Pi=3.14151619;

 

 

STR=’------‘;

 

Значения констант, заданные в разделе определения констант, в

 

программе менять нельзя, сразу следует сообщение об ошибке.

 

Раздел описания переменных

Каждая переменная, встречающаяся в программе, должна быть описана в разделе описания переменных. Определение переменной должно содержать два элемента: имя переменной и ее тип.

Синтаксис:

Описание переменных

Определение переменных

Например:

var R1, R2, R3:integer; Xku, Jio: real; Word: char;

Раздел определения типов

Информатика 2012г.

17

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

Синтаксическая диаграмма

Определение типов

Например

Type Color = (RED, ORANGE, YELLOW, GREEN, BLUE, VIOLET); Day=(Monday, Tuesday, Wednesday, Thursday, Friday, Saturday,

Sunday);

Целый тип

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

Синтаксическая диаграмма

Над целыми значениями допустимы следующие операции:

+ сложение, - вычитание, * умножение,

div деление нацело (с отбрасыванием дробной части), mod взятие остатка от целочисленного деления.

Информатика 2012г.

18

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

SQR(х) – вычисляет х2 ,

Trunc(x) – х должно быть вещественного типа, результат целый тип, дробная часть отбрасывается. Функция приводит значения вещественного типа

к целому типу путем отсечения дробной части.

 

Trunc(2.5)=2,

Trunc(-4.7)=-4

 

Round(x) - х должно быть вещественного типа, результат целый тип,

округленный до ближайшего целого.

 

Round(5.7)=6,

 

Round(-1.7)=-2.

 

Нельзя смешивать операнды целого и вещественного типа.

Имеется пять целых типов, различающихся допустимым диапазоном

значений и размером занимаемой памяти.

 

 

 

 

Целые типы

 

Идентификатор

 

Диапазон

Размер памяти

типа

 

 

значений

 

shortint

 

 

128…127

1 байт

integer

 

 

-32768…32767

2 байта

longint

 

 

-2147483648 …

4 байта

 

 

2147483647

 

byte

 

 

0…255

1 байт

word

 

 

0…65535

2 байта

 

 

 

 

 

Вещественный тип

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

Пример описания

var K, Tr, Dfg: real;

Вещественные типы имеют следующие характеристики

Идентифик

Диапазон

Число цифр

Размер

атор типа

значений

мантисы

памяти

real

2,9e-

11-12

4 байта

 

29…1.7e38

 

 

single

1,5e-

7-8

2 байта

 

45…3.4e38

 

 

double

5,0e-

15-16

8 байт

 

324…1.7e308

 

 

extende

3,4e-

20

10 байт

 

493…1.1e493

 

 

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

Информатика 2012г.

19

+ сложение, - вычитание, * умножение, / деление.

Имеется развитая библиотека стандартных функций:

ABS(x), SQR(x), SIN(x), COS(x), LN(x), EXP(x), ARCTAN(x), SQRT(x).

Символьный литерный тип

Значениями символьного типа являются символы из множества ASCII (American Standard Code Information Interchange) состоящего из 256 различных символов. Описание типа производится с помощью стандартного идентификатора char. Например

Char hg1, jg, Lt67: char;

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

1.Для любого набора литер все литеры фиксированы и упорядочены.

2.Включены все прописные буквы латинского алфавита от A до Z. Это множество упорядочено по алфавиту.

3.Включены все строчные буквы латинского алфавита от A до Z. Это множество упорядочено по алфавиту.

4.Включены все десятичные цифры от 0 до 9. Это множество упорядочено по возрастанию цифр.

5.Включены литеры: пробел, запятая, точка, разделители строк

и т.д.

Литеры, заключенные в апострофы, являются константами литерного типа, для апострофа они повторяются дважды:

‘’’ ‘A’ ‘Y’ ‘6’ ‘3’

Упорядоченность букв означает ‘A’< ‘B’< ‘C’…<’Z’ ‘0’<’1’<’2’<…<’9’

Две стандартные функции преобразования:

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

CHR(I) - является литерой с порядковым номером I. Порядковый номер литер – это значения целого типа, которые

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

CHR(ORD(C))=C

ORD(CHR(I))=I

Информатика 2012г.

20

Пример: Прочитать последовательность цифр и преобразовать ее к виду целого числа.

program rdprint; var ch: char;

I, J: integer; begin

read(ch);

I:=0;

while(ch>=’0’) AND (ch<=’9’) do begin J=:ORD(ch)-ORD(‘0’); I:=10*I+J;

Read(ch);

end;

writeln(‘Введено число -’, I); end.

Логический тип (булевский)

Определяет диапазон логических значений, который содержит два элемента:

True (истина)

False (ложь)

Допустимая операция сравнения False < True

Логические переменные описываются с помощью слова boolean и занимают 1 байт памяти

var R, Dt, yut: boolean;

и могут принимать одно из значений False или True

Над аргументом логического типа определены следующие операции: NOT (не) – отрицание;

AND (И) – конъюнкция или логическое умножение;

OR (или) – дизъюнкция или логическое сложение. Операции отношения

= равно, <> не равно, < меньше, > больше, <= меньше или равно, >= больше или равно.

var R: boolean; Y:integer;

R:=Y<5;

Переменная R получит значение True, если значение Y меньше 5, в противном случае False.

Старшинство операций: NOT затем AND затем OR, затем операции отношения. Порядок выполнения операций изменяется круглыми скобками.

NOT P=Q означает (NOT P)=Q

P OR Q AND R означает P OR (Q AND R)

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]