Основы программирования и информатика

- -
- 100%
- +
Вычислительная техника - раздел, в котором разрабатываются общие принципы построения вычислительных систем. Речь идет не о технических деталях и электронных схемах (это лежит за пределами программирования как таковой), а о принципиальных решениях на уровне, так называемой, архитектуры вычислительных (компьютерных) систем, определяющей состав, назначение, функциональные возможности и принципы взаимодействия устройств. Примеры принципиальных, ставших классическими решений в этой области - неймановская архитектура компьютеров первых поколений, шинная архитектура ЭВМ старших поколений, архитектура параллельной (многопроцессорной) обработки информации.
Программирование - деятельность, связанная с разработкой систем программного обеспечения. Здесь отметим лишь основные разделы современного программирования: создание системного программного обеспечения и создание прикладного программного обеспечения. Среди системного - разработка новых языков программирования и компиляторов к ним, разработка интерфейсных систем (пример - общеизвестная операционная оболочка и система Windows). Среди прикладного программного обеспечения общего назначения самые популярные - система обработки текстов, электронные таблицы (табличные процессоры), системы управления базами данных. В каждой области предметных приложений программирования существует множество специализированных прикладных программ более узкого назначения.
Информационные системы - раздел программирования, связанный с решением вопросов по анализу потоков информации в различных сложных системах, их оптимизации, структурировании, принципах хранения и поиска информации. Информационно-справочные системы, информационно-поисковые системы, гигантские современные глобальные системы хранения и поиска информации (включая широко известный Internet) в последнее десятилетие XX века привлекают внимание все большего круга пользователей. Без теоретического обоснования принципиальных решений в океане информации можно просто захлебнуться. Известным примером решения проблемы на глобальном уровне может служить гипертекстовая поисковая система WWW, а на значительно более низком уровне - справочная система, к услугам которой мы прибегаем, набрав телефонный номер 09.
Искусственный интеллект - область программирования, в которой решаются сложнейшие проблемы, находящиеся на пересечении с психологией, физиологией, лингвистикой и другими науками. Как научить компьютер мыслить подобно человеку? Поскольку мы далеко не все знаем о том, как мыслит человек, исследования по искусственному интеллекту, несмотря на полувековую историю, все еще не привели к решению ряда принципиальных проблем. Основные направления разработок, относящихся к этой области - моделирование рассуждений, компьютерная лингвистика, машинный перевод, создание экспертных систем, распознавание образов и другие. От успехов работ в области искусственного интеллекта зависит, в частности, решение такой важнейшей прикладной проблемы как создание интеллектуальных интерфейсных систем взаимодействия человека с компьютером, благодаря которым это взаимодействие будет походить на межчеловеческое и станет более эффективным.
ВОПРОСЫ ДЛЯ САМОКОНТРОЛЯ
Что представляет собой сообщение?
Что такое сигнал и какие характеристики могут нести информацию?
На какие виды делятся сигналы по источнику возникновения? Приведите примеры естественных и искусственных сигналов.
Чем отличаются аналоговый, дискретный и цифровой сигналы?
Что такое цифровая шина и что понимается под её разрядностью?
Для чего используются АЦП и ЦАП?
Что такое данные? Приведите примеры данных.
Что понимается под информацией? Назовите три направления исследований, связанных с понятием информации.
Как связаны энтропия и количество информации? Что такое негэнтропия?
Какие свойства информации наиболее важны с точки зрения программирования?
Что такое информационная система и какова её основная задача?
ТЕСТОВЫЕ ЗАДАНИЯ ДЛЯ ПРОВЕРКИ ЗНАНИЙ
Сообщение – это:
a. физический процесс, несущий информацию;
b. предназначенное для передачи высказывание, текст, изображение, физический предмет или поступок;
c. сведения, полученные путем измерения и представленные в формализованном виде;
d. свойство материи.
Сигнал – это:
a. материальная оболочка для представления информации;
b. физический процесс, некоторая характеристика которого несёт информационный смысл;
c. последовательность сообщений;
d. зарегистрированная информация.
Естественные сигналы возникают:
a. в результате деятельности человека;
b. в технических системах;
c. в силу взаимодействия материальных объектов в живой или неживой природе;
d. только в живых организмах.
Аналоговый сигнал характеризуется:
a. скачкообразным изменением информационной характеристики;
b. наличием только двух возможных значений;
c. плавным изменением информационной характеристики;
d. ограниченным числом значений.
Дискретный сигнал отличается от аналогового тем, что:
a. его информационная характеристика изменяется плавно;
b. число возможных значений ограничено;
c. он всегда является цифровым;
d. он может принимать бесконечное число значений.
Цифровой сигнал – это:
a. любой дискретный сигнал;
b. аналоговый сигнал, преобразованный в электрический;
c. частный случай дискретного сигнала, принимающий только два возможных значения;
d. сигнал, передаваемый только по оптоволокну.
Разрядность цифровой шины – это:
a. количество проводящих линий в шине;
b. количество бит, передаваемых с её помощью за один раз;
c. скорость передачи данных;
d. максимальное напряжение сигнала.
Для преобразования аналогового сигнала в цифровой используется:
a. ЦАП;
b. АЦП;
c. звуковая карта;
d. микропроцессор.
Данные – это:
a. информация, представленная в формализованном виде и предназначенная для обработки техническими средствами;
b. физический процесс, несущий информацию;
c. результат регистрации только светового сигнала;
d. любое сообщение.
Что является примером данных?
a. световой сигнал;
b. запись речи на магнитной ленте;
c. естественный запах цветов;
d. сигнал светофора.
Информация определяется как:
a. сведения, полученные путем измерения;
b. свойство материи, передаваемое физическим сигналом;
c. последовательность сигналов;
d. зарегистрированный сигнал.
Сколько направлений развития исследований связано со свойственно-количественным подходом к понятию информации?
a. одно;
b. два;
c. три;
d. четыре.
Количество информации, полученное как разность между начальной и конечной энтропией, называется:
a. энтропией;
b. битом;
c. негэнтропией;
d. вероятностью.
Какое из перечисленных свойств НЕ относится к наиболее важным свойствам информации с точки зрения программирования?
a. объективность;
b. полнота;
c. актуальность;
d. громкость.
Информационная система – это:
a. система, организующая, хранящая и преобразующая информацию;
b. аппаратное обеспечение компьютера;
c. совокупность программ для обработки данных;
d. база данных.
Процесс изменения свойств некоторого материального объекта под воздействием сигнала называется:
a. преобразованием;
b. регистрацией сигнала;
c. модуляцией;
d. кодированием.
Ответы на тестовые задания
b.
b.
c.
c.
b.
c.
b.
b.
a.
b.
b.
c.
1.3. Единицы измерения информации
Для автоматизации работы с данными, относящимся к различным типам, очень важно унифицировать их форму представления – для этого обычно используют приём кодирования, т.е. выражение данных одного типа через данные другого типа. Своя система существует и в вычислительной технике (ВТ); она называется двоичным кодированием и основана на представлении данных последовательностью всего двух чисел: 0 и 1. Эти знаки называются двоичными цифрами, по-английски —binary digit или сокращённо bit (бит).
Одним битом могут быть выражены два устойчивых состояния, например, два символа: 0 или 1 (да или нет, чёрное или белое, истина или ложь и т.п.). Если количество битов увеличить до двух, то уже можно выразить четыре различных состояния: 00, 01, 10, 11, которым можно присвоить четыре конкретных понятия.
Единицей измерения (памяти) компьютерной информации служит восьмибитовое число, называемое байтом (byte), т.е. каждому символу соответствует последовательность из 8 бит, вида — 00000000, 00000001, ….., 01111111, 11111111. Байт – это 8 бит. С помощью 1 байта можно кодировать N = 2m = 28 = 256 различных символов. Таким образом, информация в компьютере – это последовательность единиц и нулей. Чтобы измерить больший объем информации, применяют более крупные единицы измерения информации.
Таблица 2 – Единицы измерения количества информации
Наименование
Обозначение
Размер
Бит
Бит
1 двоичный разряд
Байт
Байт
1 байт = 8 бит
Килобайт
Кбайт
1 Кбайт = 1024 байта
Мегабайт
Мбайт
1 Мбайт = 1024 Кбайта
Гигабайт
Гбайт
1 Гбайт = 1024 Мбайта
Терабайт
Тбайт
1 Тбайт = 1024 Гбайта
Надо заметить, что при переходе к более крупным единицам «инженерная» погрешность, связанная с округлением, накапливается и становится недопустимой, поэтому на старших единицах измерения округление производится реже. Байт, как группа взаимосвязанных бит, появился вместе с первыми образцами электронной вычислительной техники. Долгое время байт был машинно-зависимым, то есть для разных вычислительных машин длина байта была разной. Только в конце 60-х годов понятие байта стало универсальным и машинно-независимым. Во многих случаях целесообразно использовать не восьмиразрядное кодирование, а 16-разрядное, 24-разрядное, 32-разрядное и более. Группа из 16 взаимосвязанных бит (двух взаимосвязанных байтов) в информатике называется словом. Соответственно, группы из четырех взаимосвязанных байтов (32 разряда) называются удвоенным словом, а группы из восьми байтов (64 разряда) — учетверенным словом.
При хранении данных решаются две проблемы: как сохранить данные в наиболее компактном виде и как обеспечить к ним удобный и быстрый доступ (если доступ не обеспечен, то это не хранение). Для обеспечения доступа необходимо, чтобы данные имели упорядоченную структуру, а при этом образуется «паразитная нагрузка» в виде адресных данных. Без них нельзя получить доступ к нужным элементам данных, входящих в структуру. Поскольку адресные данные тоже имеют размер и тоже подлежат хранению, хранить данные в виде мелких единиц, таких, как байты, неудобно. Их неудобно хранить и в более крупных единицах (килобайтах, мегабайтах и т. п.), поскольку неполное заполнение одной единицы хранения приводит к неэффективности хранения.
В качестве единицы хранения данных принят объект переменной длины, называемый файлом. Файл – отдельная, логически связанная совокупность данных или программ, для размещения на внешних устройствах. На диске файл не требует для своего размещения непрерывного пространства, обычно он занимает свободные кластеры в разных частях диска.
1.4 История развития программирования и электронно-вычислительных машин
Программирование – молодая научная дисциплина, изучающая вопросы, связанные с поиском, сбором, хранением, преобразованием и использованием информации в самых различных сферах человеческой деятельности. Генетически программирование связана с вычислительной техникой, компьютерными системами и сетями, так как именно компьютеры позволяют порождать, хранить и автоматически перерабатывать информацию в таких количествах, что научный подход к информационным процессам становится одновременно необходимым и возможным.
До настоящего времени толкование термина «программирование» (в том смысле как он используется в современной научной и методической литературе) еще не является установившимся и общепринятым. Обратимся к истории вопроса, восходящей ко времени появления электронных вычислительных машин.
После второй мировой войны возникла, и начала бурно развиваться кибернетика как наука об общих закономерностях в управлении и связи в различных системах: искусственных, биологических, социальных. Рождение кибернетики принято связывать с опубликованием в 1948 г. американским математиком Норбертом Винером, ставшей знаменитой, книги «Кибернетика или управление и связь в животном и машине». В этой работе были показаны пути создания общей теории управления и заложены основы методов рассмотрения проблем управления и связи для различных систем с единой точки зрения. Развиваясь одновременно с развитием электронновычислительных машин, кибернетика со временем превращалась в более общую науку о преобразовании информации.
Под информацией в кибернетике понимается любая совокупность сигналов, воздействий или сведений, которые некоторой системой воспринимаются от окружающей среды (входная информация X), выдаются в окружающую среду (выходная информация У), а также хранятся в себе (внутренняя, внутрисистемная информация Z).
Развитие кибернетики в нашей стране встретило идеологические препятствия. Как писал академик А.И.Берг, «... в 1955-57 гг. и даже позже в нашей литературе были допущены грубые ошибки в оценке значения и возможностей кибернетики. Это нанесло серьезный ущерб развитию науки в нашей стране, привело к задержке в разработке многих теоретических положений и даже самих электронных машин». Достаточно сказать, что еще в философском словаре 1959 года издания кибернетика характеризовалась как «буржуазная лженаука». Причиной этому послужили, с одной стороны, недооценка новой бурно развивающейся науки отдельными учеными «классического» направления, с другой - неумеренное пустословие тех, кто вместо активной разработки конкретных проблем кибернетики в различных областях спекулировал на полуфантастических прогнозах о безграничных возможностях кибернетики, дискредитируя тем самым эту науку.
Развитие электронно-вычислительных машин можно разделить на несколько этапов или поколений. Каждый этап эволюции ЭВМ отличатся друг от друга математическим обеспечением и элементной базой.
Рассмотрим каждый этап эволюции ЭВМ.
1. Первый этап – 1945-1954 годы. Электронно-вычислительные машины созданы на основе электронных ламп, были экспериментальными устройствами и разрабатывались с целью проверки теоретических предположений.
Первым серийно выпускавшимся ЭВМ, разработанный Джоном Мочли (John Mauchly) и Дж. Преспером Эккертом (J.Prosper Eckert), стал универсальный автоматический компьютер UNIVAC. Это было первое компьютерное устройство общего назначения, работа по созданию которого началась в 1946 году и завершилась в 1951 году. Универсальный компьютер UNIVAC умел выполнять сложение за 120 мкс, умножение за 1800 мкс, деление за 3600 мкс, а также сохранял 1000 слов, 12000 цифр. Магнитная лента несла информацию в 120тыс.слов и более 1 млн.цифр. Ввод и вывод информации осуществлялся с магнитной ленты, перфокарт и перфоратора. Первый экземпляр и был передан в Бюро переписи населения. Программное обеспечение электронных машин первого поколения состояло из стандартных программ.
К первому этапу относятся электронно-вычислительные машины: « ENIAC », «МЭСМ», «БЭСМ», «IBM -701», «Стрела», «М-2», «М-3», «Урал», «Урал-2», «Минск-1», «Минск-12», «М-20» и др. Такие устройства имели большой размер и занимали большую площадь в помещении, употребляли большое количество электроэнергии и состояли из множества электронных ламп. Быстродействие таких машин не превышало более 2-3 тыс.операций в секунду, а оперативная память была не более 2 Кбайт. Только в 1958 году ЭВМ «М-2» оперативная память была 4 Кбайта и быстродействие составляло примерно 20 тыс.операций в секунду.
2. Второй этап – 1950-60 гг. В качестве основного элемента используются полупроводниковые диоды и транзисторы вместо электронных ламп, а магнитные сердечники и барабаны применяются в качестве устройств памяти. Появилась возможность программирования на алгоритмических языках высокого уровня – это Кобол, Фортран, Алгол. Что позволило в значительной степени упростить и ускорить написание программ для электронно-вычислительных машин. Благодаря этому позволило уменьшить размеры и стоимость компьютерных устройств, которые стали впервые выпускаться для продажи.
К компьютерам второго поколения относятся: РАЗДАН-2», «IВМ-7090», «Минск-22,-32», «Урал- 14,-16», «БЭСМ-3,-4,-6», «М-220, -222» и др.
Замена электронных ламп на полупроводниковые диоды и транзисторы привели к производительности до 30 тыс.операций в сек., и увеличении оперативной памяти до 32 Кб., уменьшению габаритов компьютеров и потреблении электроэнергии. На втором этапе эволюции ЭВМ появляется операционная система и, следовательно, расширилась сфера использования электронно-вычислительных машин. Компьютеры второго поколения уже использовались в управлении и планировании, а не которые фирмы применяли электронно-вычислительные машины в бухгалтерии.
3. Третий этап – 1970-80 гг. Создание ЭВМ третьего поколения служит разработка интегральных схем как целых устройств и узлов из сотен транзисторов, выполненных на одном кристалле полупроводника, которое получило в дальнейшем название микросхема. Также появляется полупроводниковая память, которая на данный момент используется в современных компьютерах в качестве оперативной памяти. Центральный процессор получил возможность работать и управлять параллельно многочисленными периферийными устройствами. Электронно-вычислительные машины уже могли обрабатывать одновременно несколько программ, что и привело к возможности работы разделения времени в диалоговом режиме, принцип мультипрограммирования. Теперь удаленные пользователи получили возможность оперативно взаимодействовать с компьютером, независимо друг от друга.
Начиная с создания ЭВМ третьего поколения, стали разрабатываться постоянно и серийные машины, не смотря на то что компьютерные устройства одной серии отличались друг от друга по производительности и возможностям, но были программно, информационно и аппаратно совместимы.
К третьему поколению ЭВМ относятся: «ЕС-1022», «ЕС-1030», «ЕС-1033», «ЕС-1046», «ЕС-1061», «ЕС-1066», «IВМ-370», «Электроника — 100/25», «Электроника — 79», «СМ-3», «СМ-4» и др. Производительно уже достигала от 500 тыс. до 2 млн. операций в сек., объем оперативной памяти составлял от 8Мб до 192 Мб.
Между тем количество соединений и элементов в одной микросхеме постоянно росло и в 70-х гг. интегральные схемы уже состояли из тысячи транзисторов. Что и позволило объединить компании Intel большинство компонентов компьютерного устройства, тем самым создав и выпустив первый микропроцессор, который предназначался только для калькуляторов.
Тем самым в 1969 году появились первая глобальная компьютерная сеть, операционная система Unix и язык программирования С, который оказал огромное влияние на программный мир и по сей день сохранило свое передовое положение.
4. Четвертый этап – 1975-1985 гг. Начиная с середины 70-х гг. XX века картина смены поколений начинает нарушаться, все меньше становиться инноваций в компьютерной сфере, прогресс остановился на повышении мощности и миниатюризации элементной базы и самих электронно-вычислительных машин.
С 1975 года считается периодом создания ЭВМ четвертого поколения, элементной базой, которых стали большие интегральные схемы – СБИС. Быстродействие таких ЭВМ выросло до десятков млн. операций в секунду, а оперативная память достигала более сотен Мб. Развитие электронно-вычислительных машин разделилось на два направления:
1. создание комплексов многопроцессорных компьютеров, то есть суперЭВМ;
2. дальнейшее развитие на базе БИС и СБИС микроЭВМ и персональных ЭВМ.
5. Пятый этап – 90-е гг. XX века. Разработка программного обеспечения пятого поколения ЭВМ была принята в 1982 году в Японии, и предполагалось к 1991 году создать принципиально новые компьютеры, которые будут решать задачи искусственного интеллекта. Планировалось с помощью языка Пролог и инноваций в конструкции компьютеров вплотную подойти к решению основной задачи компьютерной науки – это хранение и обработка информации. Предполагалось, что элементной базой будут служить не интегральные схемы СБИС, а созданные на их базе устройства искусственного элемента. Собирались использовать оптоэлектронику и биопроцессоры для увеличения памяти и быстродействия. Однако японский проект компьютеров пятого поколения повторил трагическую судьбу ранних исследований в области искусственного интеллекта. Проведенные в ходе проекта исследования и накопленный опыт по методам представления знаний и параллельного логического вывода сильно помогли прогрессу в области систем искусственного интеллекта в целом.
Уже сейчас компьютеры способны воспринимать информацию с рукописного или печатного текста, с бланков, с человеческого голоса, узнавать пользователя по голосу, осуществлять перевод с одного языка на другой. Это позволяет общаться с компьютерами всем пользователям, даже тем, кто не имеет специальных знаний в этой области.
Многие успехи, которых достиг искусственный интеллект, используют в промышленности и деловом мире. Экспертные системы и нейронные сети эффективно используются для задач классификации – это фильтрация СПАМа, категоризация текста и т.д.
Современные персональные компьютеры в соответствии с принятой классификацией надо отнести к ЭВМ четвертого поколения, но так как быстро развивается программное обеспечение, многие авторы публикаций относят их к 5-му поколению.
Фирма IBM обратила внимание на персональные компьютеры, когда рынок "вырос из пеленок". К 1980 году только в США уже было продано более миллиона персональных компьютеров, и тогда маркетологи предсказывали большой рост спроса. в тоже время свои модели представили десятки компаний. Каждый производитель разрабатывал собственную архитектуру компьютера. Считалось, что наиболее перспективной архитектурой обладает компьютер PDP-11, разработанный компанией DEC. Технические решения этой компании легли в основу первых отечественных компьютеров «Электроника».
В 1989 г. был начат выпуск более мощного процессора 80486 с быстродействием более 50 млн. операций в секунду. В марте 1993 г. компания Intel продолжает ряд 80х86 выпуском микропроцессора Р5 "Pentium" с 64-разрядной архитектурой. Потом были "Pentium 2", "Pentium 3". Сегодня самым популярным микропроцессором является "Pentium 4" с нанотехнологией, позволяющей обрабатывать информацию по двум параллельным потокам, т.е. получать как бы два процессора.
Тактовые частоты современных ПК превышают 3 ГГц, объёмы основного запоминающего устройства до 4 Гб. Емкость накопителей на жестких дисках выросла до несколько Тб. Современные технологии позволяют на персональных компьютерах прослушивать и записывать высокачественные ауди-файлы. Применение DVD-приводов обеспечивает просмотр современных фильмов.
Широкое распространение получили сегодня переносные персональные компьютеры - nootbook, карманные компьютеры (КПК) и мобильные компьютеры - смартфоны, планшеты, которые объединяют функции компьютера и телефона.
Компьютер нельзя представить без программного обеспечения. Как архитектура IBM PC стала стандартом для аппаратной части персонального компьютера, так и продукция фирмы MicroSoft, создатель Билл Гейтс, стала эталоном для программ. Особенно популярны ее операционные системы Windows и офисные приложения MS Office.
Таблица 3 – История развития ЭВМ
Поколения ЭВМ
I
II
III
IV
Годы применения
1946-1958
1959-1963
1964-1976
1977—...
Элементная база
Эл. лампа, реле
Транзистор, параметрон



