Рефераты. Введение в информатику

3-я (конец XIX века) - электричество (телеграф, телефон, радиопередача оперативная, накопление информации в любом объеме);

4-я (70 годы XX века) - микропроцессорная технология персональный компьютер.

Реальные схемы составляют компьютеры, компьютерные сети, информационные телекоммуникации (системы передачи данных).

Три достижения данного периода:

1. переход от механических и электрических средств преобразования информации к электронным;

2. миниатюризация всех узлов, устройств, приборов, машин;

3. создание программно-управляемых устройств и процессов.

19. Информатизация общества

Образование больших объемов информации определяется:

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

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

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

В результате возникает информационный кризис.

Его проявления:

1. Противоречия между ограниченными возможностями человека по восприятию и переработки информации и огромными потоками хранящейся информации (Пример: изменение суммы значений: к 1900 г. - удваивалось каждые 50 лет, к 1950 г. - каждые 10 лет, к 1970 г. каждые 5 лет, с 1990 - каждый год).

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

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

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

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

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

Информационные ресурсы - это формализованные идеи и знания, различные идеи и знания, различные данные, методы и средства их накопления, хранения и обмена между источниками и потребителями информации.

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

20. Классификация языков программирования

Процедурное программирование

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

Основные принципы архитектуры фон Неймана состоят в следующем:

1. ЭВМ состоит из процессора, памяти и внешних устройств;

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

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

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

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

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

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

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

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

Существует большое число процедурных языков программирования. Это - Algol, Fortran, Pascal, С, Basic и др.

Функциональное программирование

Применение ЭВМ для решения задач искусственного интеллекта и обработки текстов привело к созданию функциональных языков. Эти языки имеют хорошо проработанное математическое основание - -исчисление. Функция в математике - отображение объектов из множества величин (области определения функции или домена) в объекты другого множества (область значений функции). Переменные в функциональной программе рассматриваются как переменные в математике: если они существуют, то имеют какую-то величину, и эта величина не может измениться. Функциональная программа описывает, что должно быть вычислено, то есть является просто выражением, определенным в терминах заранее заданных функций и функций, определенных пользователем. Величина этого выражения является результатом программы. Таким образом, здесь отсутствует состояние программы и предыстория вычислений. Первым языком функционального программирования является созданный в начале 1960-х годов язык ЛИСП (LISP - LISt Processing). В отличие от процедурных языков, в которых действия в основном выражаются в виде итерации - повтора какого-либо фрагмента программы несколько раз, в ЛИСП вычисления производятся с помощью рекурсии - вызова функцией самой себя, а основная структура данных - это список.

Логическое программирование

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

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

Серьезные практические результаты в области логического программирования появились только в 70-е годы после того, как была подготовлена достаточная теоретическая база и достигнут значительный прогресс в развитии вычислительной техники. К этому времени после целой череды экспериментальных языков группой Алана Колмероэ в Марселе была создана (еще неэффективная) реализация языка, заменившего последовательные вычисления машины фон Неймана на логический вывод. Новый язык, названный Прологом (Программирование логическое), предназначался для анализа текстов, написанных на естественном языке, т.е. для решения задач, обычно относимых к области искусственного интеллекта. Приблизительно в те же годы были разработаны и теоретические основы нового направления в программировании. Основные результаты в этой области принадлежат Алану Робинсону и Роберту Ковальскому. Первая реализация Пролога, выполненная кстати на Фортране, заинтересовала специалистов, но не получила широкого распространения по причине низкой эффективности. Мешал распространению Пролога и накопившийся к этому времени у специалистов (в основном американских) общий скепсис по отношению к идее логического программирования, поскольку все реализации предшественников Пролога были также неэффективны.

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

Объектно-ориентированное программирование

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

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

Основные идеи объектно-ориентированного подхода опираются на следующие положения:

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

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

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

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

5. Объекты, описанные одним и тем же набором параметров и способные выполнять один и тот же набор действий представляют собой класс однотипных объектов.

Три основных достоинства ООП: упрощение проектирования; ускорение разработки за счет многократного использования готовых модулей; легкость модификации.

Общим предком практически всех используемых сегодня объектных и объектно-ориентированных языков является Simula, созданный в 1960 году Далем, Мюрхогом и Ныгардом. Существенно, что Simula, предназначенная для описания систем и моделирования, ввела дисциплину написания программ, отражающую словарь предметной области.

Практически все объектно-ориентированные языки программирования являются развивающимися языками, их стандарты регулярно уточняются и расширяются. Следствием этого развития являются неизбежные различия во входных языках компиляторов различных систем программирования. Наиболее распространенными в настоящее время являются системы программирования Microsoft C++ , Microsoft Visual C++ и системы программирования фирмы Borland International.

21. Компьютеры. Поколения ЭВМ

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.