Теоретические основы информатики

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

Рубрика Программирование, компьютеры и кибернетика
Вид шпаргалка
Язык русский
Дата добавления 06.06.2010
Размер файла 1,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

4. Вынуть ключ.

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

Свойства алгоритмов:

1. Дискретность (от лат. discretus -- разделённый, прерывистый, раздельность) (алгоритм должен состоять из конкретных действий, следующих в определенном порядке);

2. Детерминированность (от. лат. determinate - определенность, точность) (любое действие должно быть строго и недвусмысленно определено в каждом случае);

3. Конечность (каждое действие и алгоритм в целом должны иметь возможность завершения);

4. Массовость (один и тот же алгоритм можно использовать с разными исходными данными);

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

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

Виды алгоритмов:

1. Линейный алгоритм (описание действий, которые выполняются однократно в заданном порядке);

2. Циклический алгоритм (описание действий, которые должны повторятся указанное число раз или пока не выполнено заданное условие);

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

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

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

· В устной форме.

· В письменной форме на естественном языке.

· В письменной форме на формальном языке.

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

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

Стандартные графические объекты блок-схемы:

Вид стандартного графического объекта

Назначение

Начало алгоритма

Конец алгоритма

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

Условие выполнения действий записывается внутри ромба

Счетчик кол-во повторов

Последовательность выполнения действий

Пример записи алгоритма в виде блок-схемы:

Стадии создания алгоритма:

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

2. Алгоритм должен быть представлен в форме, понятной тому объекту (в том числе и человеку), который будет выполнять описанные в алгоритме действия (выбрать среду и объект алгоритма, детализировать алгоритм).

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

Исполнитель - объект, который выполняет алгоритм.

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

Компьютер - автоматический исполнитель алгоритмов.

Алгоритм, записанный на "понятном" компьютеру языке программирования, называется программой.

Каждый исполнитель характеризуется средой ("местом обитания") и системой команд.

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

Среда (или обстановка) -- это "место обитания", множество объектов, которые окружают исполнителя.

Каждый исполнитель может выполнять команды только из некоторого строго заданного списка -- системы команд исполнителя. Совокупность всех команд, которые исполнитель может выполнить, называется системой команд исполнителя (СКИ). Для каждой команды должны быть заданы условия применимости (в каких состояниях среды может быть выполнена команда) и описаны результаты выполнения команды.

За каждой командой из системы команд исполнителя закреплено конкретное элементарное действие. Исполнителя можно представить в виде устройства с кнопочным управлением. Каждая кнопка соответствует одной команде исполнителю, и нажатие означает вызов этой команды. После вызова команды исполнитель совершает элементарное действие, соответствующее данной команде.

Отказы исполнителя возникают при вызове команды в недопустимом для данной команды состоянии среды. Другими словами - это случай, когда попытка выполнить команду приводит к аварии.

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

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

Многие из учебных исполнителей занимаются рисованием на экране компьютера. Эту группу можно назвать графическими исполнителями. Пусть наш гипотетический (т.е. придуманный) исполнитель тоже будет из этой компании. Назовем его ГРИС, что значит Графический Исполнитель.

Что умеет делать ГРИС? Он может перемещаться по полю и своим хвостом рисовать на этом поле.

Среда графического исполнителя это лист (страница экрана) для рисования. ГРИС может перемещаться в горизонтальном и вертикальном направлениях с постоянным шагом. Исполнитель может двигаться только по линиям сетки листа и не может выходить за границы. Состояние исполнителя на поле определяется, во-первых, его местоположением (в какой точке поля он находится) и направлением (куда он смотрит). Пусть система команд ГРИСа: шаг, поворот, прыжок. Шаг - перемещение ГРИС на один шаг вперед с рисованием линии; поворот - поворот на 900 против часовой стрелки; прыжок - перемещение на один шаг вперед без рисования линии. Эти команды будем называть простыми командами. Составим алгоритм по которому ГРИС нарисует на поле букву "Т". Исходное состояние - чистый лист. Исполнитель находится в точке, где будет находится левый конец горизонтального отрезка буквы "Т", направление вправо. Можно использовать только указанные команды из СКИ: шаг, поворот, прыжок.

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

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

Алгоритм Буква "Т"

начало

шаг

шаг

шаг

шаг

шаг

шаг

поворот

поворот

прыжок

прыжок

прыжок

поворот

шаг

шаг

шаг

шаг

шаг

конец

Билет № 7

Основные алгоритмические структуры: следование, ветвление, цикл; изображение на блок-схемах. Разбиение задачи на подзадачи. Вспомогательные алгоритмы.

Ответ:

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

1. Линейный алгоритм (еще называют следование);

2. Циклический алгоритм;

3. Разветвляющийся алгоритм;

4. Вспомогательный алгоритм.

Линейный алгоритм

Линейный алгоритм - описание действий, которые выполняются однократно в заданном порядке. Исполнитель выполняет действия последовательно, одно за другим в том порядке в котором они следуют.

Блок-схема линейного алгоритма:

Циклический алгоритм

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

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

Циклические алгоритмы бывают двух типов:

· Циклы со счетчиком, в которых какие-то действия выполняются определенное число раз;

· Циклы с условием, в которых тело цикла выполняется, в зависимости от какого-либо условия. Различают циклы с предусловием и постусловием.

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

В общем случае схема циклического алгоритма со счетчиком будет выглядеть так:

Для счетчика от нач. значения до кон. значения выполнить действие.

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

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

В общем случае схема циклического алгоритма с условием будет выглядеть так:

Пока условие повторять действие.

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

Разветвляющийся алгоритм

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

Если пошел дождь, то надо открыть зонт.

Если прозвенел будильник, то надо вставать.

Если встречу Сашу, то скажу ему

Если встречу Сашу, то скажу ему …, иначе зайду к нему сам.

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

Эти предложения начинаются с проверки какого-либо условия: пошел дождь, прозвенел будильник, встретил Сашу. Далее в зависимости мы либо вылиняем какое-либо действие, либо не выполняем его (или выполняем какое-то другое действие).

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

В общем случае схема разветвляющегося алгоритма будет выглядеть так: "если условие, то действие 1, иначе действие 2" (Если встречу Сашу, то скажу ему …, иначе зайду к нему сам.). Так же можно использовать неполную форму: "если условие, то действие" (Если встречу Сашу, то скажу ему ). В этом случае не предусматривается действий на случай невыполнения условия.

Условие - это высказывание которое может быть либо истинно, либо ложно.

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

Вспомогательный алгоритм

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

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

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

Рассмотрим пример с графическим исполнителем ГРИС. Пусть требуется составить алгоритм рисования четырехзначного числа 1919.

Можно составить один длинный алгоритм, по которому исполнитель шаг за шагом нарисует эти цифры. Но ведь цифры 1 и 9 повторяются по два раза. Алгоритм можно сократить используя вспомогательный алгоритм.

Метод последовательной детализации

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

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

Сборочный метод

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

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

Описанный метод называется сборочным программированием.

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

Билет № 8

Величины: константы, переменные, типы величин. Присваивание, ввод и вывод величин. Линейные алгоритмы работы с величинами.

Ответ:

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

Компьютер-исполнитель работает с определенными данными по определенной программе. Программа - это алгоритм записанный на каком-либо языке программирования. Данные - это множество величин.

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

Величины в программировании, как и в математике, делятся на переменные и константы. Значение константы остается неизменной в течении всей программы, значение переменной величины может изменяться.

У каждой переменной есть имя, тип и текущее значение. Имена переменных называют идентификаторами (от глагола "идентифицировать", что значит "обозначать", "символизировать"). В качестве имен переменных могут быть буквы, цифры и другие знаки. Причем может быть не одна буква, а несколько. Примеры идентификаторов: a, b5, x, y, x2, summa, bukva10.

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

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

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

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

· присваивание;

· ввод;

· вывод;

Значения переменным задаются с помощью оператора присваивания. Команда присваивания - одна из основных команд в алгоритмах работы с величинами. При присваивании переменной какого-либо значения старое значение переменной стирается и она получает новое значение.

В языках программирования команда присваивания обычно обозначается либо ":=" (двоеточие и равно), либо "=" (равно). Значок ":=" (или "=") читается "присвоить". Например: z := x + y.

Компьютер сначала вычисляет выражение x + y, затем результат присваивает переменной z, стоящей слева от знака ":=".

Если до выполнения этой команды содержимое ячеек, соответствующих переменным x, y, z, было таким:

x

y

z

2

3

-

то после выполнения команды z := x + y оно станет следующим:

x

y

z

2

3

5

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

Если слева от знака присваивания стоит числовая переменная, а справа - математическое выражение, то такую команду называют арифметической командой присваивания, а выражение - арифметическим.

В частном случае арифметическое выражение может быть представлено одной переменной или одной константой.

Например:

x := 7

a := b + 10

c := x

Значения переменных, являющихся исходными данными решаемой задачи, как правило, задаются вводом. На современных компьютерах ввод чаще всего выполнятся в режиме диалога с пользователем. По команде ввода компьютер прерывает выполнение программы и ждет действий пользователя. Пользователь должен набрать на клавиатуре вводимые значения переменных и нажать клавишу <ВВОД>. Введенные значения присвоятся соответствующим переменным из списка ввода, и выполнение программы продолжится.

Команд ввода в описаниях алгоритмов обычно выглядит так:

ввод <список переменных>

или

ввод (<список переменных>)

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

1. Память до выполнения команды:

a

b

c

-

-

-

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

3. Пользователь набирает на клавиатуре:

1 3 5

и нажимает клавишу <ВВОД> (<Enter>).

4. Память после выполнения команды:

a

b

c

1

3

5

При выполнении пункта 3 вводимые числа должны быть отделены друг от друга какими-нибудь разделителями. Обычно это пробелы.

Следовательно, можно сделать вывод:

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

Если переменной величине не присвоено никакого значения (или не введено), то она является неопределенной. Иначе говоря, ничего нельзя сказать, какое значение имеет эта переменная.

Результаты решения задачи сообщаются компьютером пользователю путем выполнения команды вывода.

Команда вывода в описаниях алгоритмов обычно выглядит так:

вывод <список вывода>

или

вывод (<список вывода>)

Например: вывод (x1, х2).

По этой команде значения переменных x1 и х2 будут вынесены на устройство вывода (чаще всего это экран).

Для примера составим алгоритм вычисления периметра треугольника. Нам потребуется 4 переменных для хранения значения длин сторон треугольника и его периметра. Периметр - это сумма всех сторон.

Алгоритм Вычисление периметра треугольника

переменные a, b, c, p - целые

начало

ввод (а, b, c)

p := a + b+ c

вывод (p)

конец

Сначала компьютер запросит значения переменных a, b, c у пользователя, затем произведет вычисления и выведет результат на экран.

Строка переменные a, b, c, p - целые - называется описанием переменных. Некоторые языки программирования требуют обязательного описания всех переменных до начала их использования в программе, некоторые - относятся более лояльно.

Полученный алгоритм имеет линейную структуру.

Билет № 9

Логические величины, операции, выражения. Логические выражения в качестве условий в ветвящихся и циклических алгоритмах.

Ответ:

Для того чтобы понять работу ветвящихся и циклических алгоритмов, рассмотрим понятие логического выражения.

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

В результате сравнения значений двух выражений возможны два варианта ответа: сравнение истинно или ложно?

Например:

2+3 > 3+1 - да (истинно)

0 < -5 - нет (ложно)

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

Логическое выражение, подобно математическому выражению, выполняется (вычисляется), но в результате получается не число, а логическое значение: истина (true) или ложь (false). Логическая величина - это всегда ответ на вопрос, истинно ли данное высказывание.

Нам известны шесть операций сравнения:

знак отношения

операция отношения

=

равно

<>

не равно

>

больше

<

меньше

>=

больше или равно

<=

меньше или равно

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

5 > 3

a < b

c <> 7

Как выполняются операции отношения для числовых величин понятно из математики. Как же сравниваются символьные величины? Отношение "равно" истинно для двух символьных величин, если их длинны одинаковы и все соответствующие символы совпадают. Следует учитывать, что пробел тоже символ.

Символьные величины можно сопоставлять и в отношениях >, <, >=, <=. Здесь упорядоченность слов (последовательности символов) определяется по алфавитному принципу.

"кот" = "кот"

"кот" < "лис"

"кот" > "дом"

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

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

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

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

В результате логического умножения (конъюнкции) получается истина, если истинны все логические выражения.

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

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

Присоединение частицы "не" к высказыванию называется операцией логического отрицания или инверсией.

Отрицание изменяет значение логической величины на противоположное: не истина = ложь; не ложь = истина.

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

1. отрицание (не);

2. конъюнкция (и);

3. дизъюнкция (или).

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

Пример. Пусть a, b, c - логические величины, которые имеют следующие значения: a = истина, b = ложь, c = истина. Необходимо определить результаты вычисления следующих логических выражений:

1. a и b

2. a или b

3. не a или b

4. a и b или c

5. a или b и c

6. не a или b и c

7. (a или b) и (с или b)

8. не (a или b) и (с или b)

9. не ( a и b и c)

Получим в результате:

1. ложь

2. истина

3. ложь

4. истина

5. истина

6. ложь

7. истина

8. ложь

9. истина.

Пример. Составить алгоритм для вычисления:

Алгоритм Вычисление x

переменные a, c, x - вещественные

начало

ввод (а, c)

если (4*а - с >=0) и (а<>0) то

начало

x: = корень(4*а - с)/(2*a)

вывод (х)

конец

иначе

вывод ("нет решения")

конец

Компьютер сначала проверит условие (4*а - с >=0) и (а<>0) и если оно окажется истинно, то вычислить x, иначе выведет сообщение "нет решения".

Пример. Составить алгоритм для вычисления суммы всех чисел от 1 до n.

Алгоритм Вычисление суммы чисел

переменные a, c, x - вещественные

начало

ввод (n)

x := 1

пока x<n повторять

начало

s := s + x

x := x +1

конец

вывод (s)

конец

До тех пор пока условие x<n будет истинно компьютер будет выполнять тело цикла - вычислять очередную сумму и увеличивать x на единицу.

Билет № 10

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

Ответ:

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

Специалисты, профессионально занимающиеся программированием, называются программистами. В первые годы существования ЭВМ для использования компьютера в любой области нужно было уметь программировать. В 1970-х - 80-х годах XX века начинает развиваться прикладное программное обеспечение. Бурное распространение прикладного ПО произошло с появлением персональных компьютеров. Стало совсем не обязательным уметь программировать для того, чтобы воспользоваться компьютером. Люди, работающие на компьютерах, разделились на пользователей и программистов. В настоящее время пользователей гораздо больше, чем программистов.

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

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

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

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

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

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

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

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

На заре компьютерной эры, в 50-е годы XX века, программы писались на машинном языке и представляли собой очень длинные последовательности нулей и единиц. Составление и отладка таких программ было чрезвычайно трудоемким делом.

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

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

Одним из первых процедурных языков программирования был Бэйсик (Basic), созданный в 1964 году. В течение последующего времени Бэйсик развивался, появлялись его различные версии (MSX-Basic, Бэйсик-Агат, QBasic и др.). Другим широко распространенным языком программирования алгоритмического типа является Pascal.

Первая версия языка Паскаль была разработана швейцарским ученым Никлаусом Виртом в 1968 году. Первоначально язык предназначался для целей обучения, поскольку он является достаточно детерминированным, т.е. все подчиняется определенным правилам, исключений из которых не так много. Основные характеристики: относительно небольшое количество базовых понятий, простой синтаксис, быстрый компилятор для перевода исходных текстов в машинный код. В 1992 г. фирма Borland International выпустила два пакета, основанных на языке Паскаль: Borland Pascal 7.0 и Turbo Pascal 7.0.

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

Рассмотрим несколько простых примеров на языке программирования Паскаль.

Пример 1. Программа с линейной структурой. Для примера составим программу вычисления периметра треугольника.

program perim; {вычисление периметра треугольника}

var a,b,c,p:integer;

begin

readln(a,b,c);

p:=a+b+c;

write(p);

end.

Для удобства пользователя можно улучшить эту программу так:

program perim; {вычисление периметра треугольника}

var a,b,c,p:integer;

begin

write('Введите стороны треугольника:');

readln(a,b,c);

p:=a+b+c;

write('Периметр равен =',p);

end.

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

program bid; {большее из двух чисел}

var a,b,c:integer;

begin

readln(a,b);

if a>b then c := a

else c := b;

write(c);

end.

Пример 3. Программа с циклической структурой. Для примера составим программу вычисления факториала. Факториал числа это произведение последовательности чисел от 1 до этого числа. N! = 1*2*...*N.

Сначала составим программу, используя циклы со счетчиком. Произведение уже умноженных чисел будем хранить в переменной f, начальное значение которой равно 1.

program faktorial; {вычисление факториала}

var n,f,i:integer;

begin

readln(n);

f:=1;

for i:=1 to n do f:=f*i;

write(f);

end.

Теперь составим программу, используя циклы с предусловием. В данном случаи переменная r выполняет роль множителя, значение которого меняется от 1 до n. В теле цикла сначала вычислим очередное произведение, затем увеличим r на единицу.

program faktorial; {вычисление факториала}

var n,r,f:integer;

begin

readln(n);

f:=1;

r:=1;

while r<=n do

begin

f:=f*r;

r:=r+1;

end;

write(f);

end.

Рассмотрим несколько простых примеров на языке программирования QBasic.

Пример 1. Программа с линейной структурой. Для примера составим программу вычисления периметра треугольника.

REM вычисление периметра треугольника

DIM a, b, c, p AS INTEGER

INPUT "Введите стороны треугольника", a, b, c

p = a + b + c

PRINT "Периметр равен", p

END

Команду описания переменных DIM a, b, c, p AS INTEGER на QBasic можно не использовать, в этом случае компьютер будет считать переменные типа variant.

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

REM большее из двух чисел

DIM a, b, c AS INTEGER

INPUT "Введите два числа", a, b

IF a > b THEN

c = a

ELSE

c = b

END IF

PRINT "Большее число =", c

END

Пример 3. Программа с циклической структурой. Для примера составим программу вычисления факториала. Факториал числа это произведение последовательности чисел от 1 до этого числа. N! = 1*2*...*N.

Сначала составим программу, используя циклы со счетчиком. Произведение уже умноженных чисел будем хранить в переменной f, начальное значение которой равно 1.

REM вычисление факториала

DIM n, f, i AS INTEGER

INPUT "Введите число", n

f = 1

FOR i = 1 TO n

f = f * i

NEXT

PRINT "факториал =", f

END

Теперь составим программу, используя циклы с предусловием. В данном случае переменная r выполняет роль множителя, значение которого меняется от 1 до n. В теле цикла сначала вычислим очередное произведение, затем увеличим r на единицу.

REM вычисление факториала

DIM n, f, r i AS INTEGER

INPUT "Введите число", n

f = 1

r = 1

DO WHILE r <= n

f = f * r

r = r + 1

LOOP

PRINT "факториал =", f

END

Билет № 11

Основные компоненты компьютера, их функциональное назначение и принципы работы. Программный принцип работы компьютера.

Ответ:

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

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

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

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

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

Имеются четыре основных компонента информационной функции человека:

· прием (ввод) информации;

· запоминание информации (память);

· процесс мышления (обработка информации);

· передача (вывод) информации.

Компьютер включает в себя устройства, выполняющие эти функции мыслящего человека:

· устройства ввода,

· устройства запоминания (память),

· устройство обработки (процессор),

· устройства вывода.

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

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

Схема устройства компьютера:

Схема устройства компьютера впервые была предложена в 1946 году американским ученым Джоном фон Нейманом. Дж. фон Нейман сформулировал основные принципы работы ЭВМ, которые во многом сохранились и в современных компьютерах.

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

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

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

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

Принципы фон-Неймана:

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

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

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

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

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

Программное обеспечение - совокупность программ, хранящихся на компьютере.

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

В течении первых тридцати лет развития вычислительной техники компьютеры были крупногабаритными и дорогими устройствами. Из-за высокой стоимости они использовались коллективно. Компьютеры можно было найти в больших корпорациях, университетах, исследовательских центрах, государственных учреждениях и, конечно же, у военных. В России за компьютерами коллективного использования закрепился термин ЭВМ.

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

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

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

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

· Системный блок;

· Монитор;

· Клавиатура;

· Мышь.

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

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

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

В настольных компьютерах обычно используются мониторы на электронно-лучевой трубке (ЭЛТ) или плоские мониторы на жидких кристаллах (ЖК).

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

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

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

LCD (Liquid Crystal Display, жидкокристаллические мониторы) сделаны из вещества, которое находится в жидком состоянии, но при этом обладает некоторыми свойствами, присущими кристаллическим телам. Фактически это жидкости, обладающие анизотропией свойств (в частности, оптических), связанных с упорядоченностью в ориентации молекул. Молекулы жидких кристаллов под воздействием электрического напряжения могут изменять свою ориентацию и вследствие этого изменять свойства светового луча, проходящего сквозь них.

Преимущество ЖК-мониторов перед мониторами на ЭЛТ состоит в отсутствии вредных для человека электромагнитных излучений и компактности. Но ЖК-мониторы обладают и недостатками. Наиболее важные из них - это плохая цветопередача и смазывание быстро движущейся картинки. Иначе говоря, если взять достаточно качественный ЭЛТ-монитор, то он будет пригоден для любых задач без оговорок - для работы с текстом, для обработки фотографий, для игр и так далее; в то же время среди ЖК-мониторов можно выделить модели, подходящие для игр - но они непригодны для работы с фотографиями, можно выделить модели, имеющие прекрасную цветопередачу - но они плохо подходят для динамичных игр, и так далее.

Мониторы могут иметь различный размер экрана. Размер диагонали экрана измеряется в дюймах (1 дюйм =2,54 см) и обычно составляет 17, 19, 21 и более дюймов.

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

Мышь - устройство "графического" управления.

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

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

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

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

Вот некоторые из них:

· Принтер;

· Сканер;

· Модем;

· Web-камера.

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

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

Процессор. Микропроцессор - основная микросхема ПК. Все вычисления выполняются в ней. Процессор аппаратно реализуется на большой интегральной схеме (БИС). Большая интегральная схема на самом деле не является большой по размеру и представляет собой, наоборот, маленькую плоскую полупроводниковую пластину размером примерно 20 х 20 мм, заключенную в плоский корпус с рядами металлических штырьков (контактов). БИС является большой по количеству элементов. Использование современных высоких технологий позволяет разместить на БИС процессора огромное количество функциональных элементов, размеры которых составляют всего около 0.13 микрон (1 микрон = 10-6 м). Например, в процессоре Intel Core 2 Duo с 4 МБ кэш-памяти их около 291 миллиона.

Основная характеристика процессора - тактовая частота (измеряется в мегагерцах (МГц) и гигагерцах (ГГц)). Чем выше тактовая частота, тем выше производительность компьютера. Есть еще насколько важных характеристик процессора - тип ядра и технология производства, частота системной шины.

Единственное устройство, о существовании которого процессор "знает от рождения" - оперативная память - с нею он работает совместно. Данные копируются в ячейки процессора (регистры), а затем преобразуются в соответствии с командами (программой).

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

Может возникнуть вопрос - почему бы не использовать для хранения промежуточных данных жесткий диск, ведь его объем во много раз больше? Это делать нельзя, так как скорость доступа к оперативной памяти у процессора в сотни тысяч раз больше, чем к дисковой.

Для длительного хранения данных и программ широко применяются жесткие диски (винчестеры). Выключение питания компьютера не приводит к очистке внешней памяти. Жесткий диск - это чаще не один диск, а пакет (набор) дисков с магнитным покрытием, вращающихся на общей оси. Основным параметром является емкость, измеряемая в гигабайтах. Средний размер современного жесткого диска составляет 120 -- 250 Гбайт, причем этот параметр неуклонно растет.

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

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


Подобные документы

  • Восприятие звуковых раздражений. Частота, амплитуда, фаза как характеристики звука. Представление и способы передачи цифровой информации. Особенности дискретизации звука. Способы записи информации: бит в бит; сжатие; структура болванки CD-R; запись CD-R.

    реферат [23,4 K], добавлен 10.11.2009

  • Информация и ее свойства. Единицы измерения данных. Вероятностный и объемный подход к измерению количества информации, способы ее передачи. Рассмотрение поставщиков финансовой информации в Интернете; технологии финансовых инвестиций в компьютерной сети.

    контрольная работа [61,5 K], добавлен 08.06.2013

  • Содержательный и кибернетический подходы к определению и измерению информации. Кодирование символьной информации в компьютере. Линия информации и информационных процессов. Обзор процесса передачи информации по техническим каналам связи. Языки информатики.

    презентация [173,0 K], добавлен 19.10.2014

  • Основные понятия и определения информатики. Программные средства реализации информационных процессов. Кодирование текстовых и графических данных. Типовые структуры локальных сетей ЭВМ и основные принципы их построения. Модели взаимодействия в сети.

    курс лекций [272,0 K], добавлен 19.12.2010

  • Понятие алгоритма, его назначение, представление (изобразительные средства для описания), типы, способы записи, схемы. Основные принципы разработки алгоритмов и программ. Характеристика языков программирования. Средства и правила построения блок-схем.

    реферат [87,9 K], добавлен 26.03.2010

  • Рассмотрение проблемы моделирования процессов в Q-схемах – математических схемах, разработанных для формализации процессов функционирования систем массового обслуживания. Разработка моделирующего алгоритма, машинная реализация и математическое описание.

    курсовая работа [781,9 K], добавлен 03.07.2011

  • Основные определения и понятия информатики. Вычислительная техника, история и этапы ее развития. Методы классификации компьютеров, их типы и функции. Разновидности системного и прикладного программного обеспечения. Представление информации в ЭВМ.

    учебное пособие [35,3 K], добавлен 12.04.2012

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

    презентация [896,4 K], добавлен 22.10.2013

  • Изучение понятия локальной вычислительной сети, назначения и классификации компьютерных сетей. Исследование процесса передачи данных, способов передачи цифровой информации. Анализ основных форм взаимодействия абонентских ЭВМ, управления звеньями данных.

    контрольная работа [37,0 K], добавлен 23.09.2011

  • Характеристика алгоритма, его свойств, способов записи. Особенности, типовые примеры линейной алгоритмической структуры. Анализ разветвляющей алгоритмической структуры. Изучение основных операторов циклов. Эволюция, классификация языков программирования.

    контрольная работа [492,2 K], добавлен 15.02.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.