Схема передачи информации. Общая схема передачи информации в линии связи Придумайте примеры передачи информации соответствующие

Распространение информации происходит в процессе ее передачи.

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

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

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

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

Сигнал – это изменение свойств носителя, которое используется для передачи информации.

Примеры сигналов – это изменение частоты и громкости звука, вспышки света, изменение напряжения на контактах и т.п.

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

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

Одна и та же информация может быть передана с помощью разных сообщений, например, через устную речь, с помощью записки или с помощью флажного семафора, который используется на флоте. В то же время одно и то же сообщение может нести разную информацию для разных приемников. Так фраза «В Сантьяго идет дождь», переданная в 1973 году на военных радиочастотах, для сторонников генерала А. Пиночета послужила сигналом к началу государственного переворота в Чили.

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

Процесс передачи информации по техническим каналам связи проходит по следующей схеме (по Шеннону):

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

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

Декодирующее устройство – устройство для преобразования кодированного сообщения в исходное.

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

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

Клодом Шенноном была разработана специальная теория ко­дирования, дающая методы борьбы с шумом. Одна из важных идей этой теории состоит в том, что передаваемый по линии связи код должен быть избыточным. За счет этого потеря какой-то части ин­формации при передаче может быть компенсирована. Однако нельзя делать избыточность слишком большой. Это при­ведёт к задержкам и подорожанию связи. Иными словами, чтобы содержание сообщения, искаженного помехами, можно было восстановить, оно должно быть избыточным, то есть, в нем должны быть «лишние» элементы, без которых смысл все равно восстанавливается. Например, в сообщении «Влг впдт в Кспск мр» многие угадают фразу «Волга впадает в Каспийское море», из которой убрали все гласные. Этот пример говорит о том, что естественные языки содержат много «лишнего», их избыточность оценивается в 60-80%.

При обсуждении темы об измерении скорости передачи инфор­мации можно привлечь прием аналогии. Аналог – процесс пере­качки воды по водопроводным трубам. Здесь каналом передачи воды являются трубы. Интенсивность (скорость) этого процесса характеризуется расходом воды, т.е. количеством литров, перекачиваемых за единицу времени. В процессе передачи информации каналами являются техничес­кие линии связи. По аналогии с водопроводом можно говорить об информационном потоке, передаваемом по каналам. Скорость пе­редачи информации – это информационный объем сообщения, передаваемого в единицу времени. Поэтому единицы измерения скорости информационного потока: бит/с, байт/с и др.

Еще одно понятие – пропускная способность информационных каналов – тоже может быть объяснено с помощью «водопроводной» ана­логии. Увеличить расход воды через трубы можно путем увеличения давления. Но этот путь не бесконечен. При слишком большом дав­лении трубу может разорвать. Поэтому предельный расход воды, который можно назвать пропускной способностью водопровода. Аналогичный пре­дел скорости передачи данных имеют и технические линии инфор­мационной связи. Причины этому также носят физический характер.

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

На заре развития

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

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

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

Первые способы хранения информации

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

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

Почтовое сообщение

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

Вопрос 1. Понятие информации, виды и способы ее передачи.

Информация (от лат. informatio, разъяснение, изложение, осведомленность) - сведения о лицах, предметах, фактах, явлениях, событиях, реального мира не зависимо от их представления.

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

Однако можно лишь утверждать, что понятие ИНФОРМАЦИЯ предполагает наличие материального носителя информации, источника информации, передатчика информации, приемника и канала связи между источником и приемником.

Классификация информации

Информацию можно разделить на виды по различным критериям:

по способу восприятия:

Визуальная - воспринимаемая органами зрения.

Аудиальная - воспринимаемая органами слуха.

Тактильная - воспринимаемая тактильными рецепторами.

Обонятельная - воспринимаемая обонятельными рецепторами.

Вкусовая - воспринимаемая вкусовыми рецепторами.

по форме представления:

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

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

Графическая - в виде изображений, предметов, графиков.

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

по назначению:

Массовая - содержит тривиальные сведения и оперирует набором понятий, понятным большей части социума.

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

Секретная - передаваемая узкому кругу лиц и по закрытым (защищённым) каналам.

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

по значению:

Актуальная - информация, ценная в данный момент времени.

Достоверная - информация, полученная без искажений.

Понятная - информация, выраженная на языке, понятном тому, кому она предназначена.

Полная - информация, достаточная для принятия правильного решения или понимания.

Полезная - полезность информации определяется субъектом, получившим информацию в зависимости от объёма возможностей её использования.

по истинности:

истинная

Формы информации.

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

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

Информацию можно:

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

Информация может существовать в виде:

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

Вопрос 2.Задачи получения, передачи, преобразования и хранения информации.

1. Передача информации

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

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

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

Декодирующее устройство - устройство для преобразования кодированного сообщения в исходное.

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

2. Преобразование информации

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

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

3. Использование информации

Информация используется при принятии решений. Достоверность, полнота, объективность полученной информации обеспечат вам возможность принять правильное решение.

4.Хранение информации.

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

Носитель информации – среда для записи и хранения информации:

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

2) Волны различной природы (световая волна)

3) Акустические носители

4) Электромагнитные носители

5) Гравитационные носители

6) Вещество в различном состоянии

7) Компьютерные носители (магнитные диски, оптические диски, винчестер, флэш-карта)

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

ИТАК, передача, обработка и хранение информации происходит в форме :

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

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

Состав операционной системы

Современные операционные системы имеют сложную структуру, каждый элемент которой выполняет определенные функции по управлению компьютером.

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

2. Командный процессор . Специальная программа, которая запрашивает у пользователя команды и выполняет их.

3. Драйверы устройств. Специальные программы, которые обеспечивают управление работой устройств и согласование информационного обмена с другими устройствами, а также позволяют производить настройку некоторых параметров устройств. Технология «Plug ad Play» (подключай и играй) позволяет автоматизировать подключение к компьютеру новых устройств и обеспечивает их конфигурирование.

4. Графический интерфейс. Используется для упрощения работы пользователя.

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

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

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

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

Структура компилятора

Процесс компиляции состоит из следующих этапов:

  1. Лексический анализ На этом этапе последовательность символов исходного файла преобразуется в последовательность лексем.
  2. Синтаксический анализ Последовательность лексем преобразуется в семантическое дерево.
  3. Оптимизация Выполняется удаление изличших конструкций и упрощение семантического дерева.
  4. Генерация кода. Семантическое дерево преобразуется в целевой язык.

Стадии работы компилятора

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


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

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

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

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

Вопрос 12. Требования к языкам программирования и их классификация.

Основные требования, предъявляемые к языкам программирования:

наглядность - использование в языке по возможности уже существующих символов, хорошо известных и понятных как программистам, так и пользователям ЭВМ;

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

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

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

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

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

Высокое качество создаваемых программ (компактность и скорость выполнения);

Возможность использования конкретных аппаратных ресурсов;

Предсказуемость объектного кода и заказов памяти;

Для составления эффективных программ необходимо знать систему команд и особенностифункционирования данной ЭВМ;

Трудоемкость процесса составления программ (особенно на машинных языках и ЯСК), плохо защищенного отпоявления ошибок;

Низкая скорость программирования;

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

Машинно-ориентированные языки по степени автоматического программирования подразделяются на классы.

- Машинный язык

Отдельный компьютер имеет свой определенный Машинный язык (далее МЯ), ему предписывают выполнение указываемых операций над определяемыми ими операндами, поэтому МЯ является командным.

- Языки Символического Кодирования

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

- Автокоды

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

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

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

- Макрос

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

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

Макрос одинаково может работать, как с программами, так и с данными.

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

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

-Проблемно – ориентированные языки

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

Фортран, Алгол – языки, созданные для решения математических задач;

-Универсальные языки

Универсальные языки были созданы для широкого круга задач: коммерческих, научных, моделирования и т.д.

-Диалоговые языки

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

Задачи: управление и описание алгоритмов решения задач..

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

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

-Непроцедурные языки

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

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

Рекурсивные структуры

1.4.1. Список

Список относится к особой группе структур - это так на­зы­ва­е­мые ре­курсивные структуры.

Приведем рекурсивное определение списка: Списком называется со­­во­купность

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

1.4.2. Набор

Другим примером рекурсивной структуры является структура на­бора, которая

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

элементов, каждый из которых может быть ли­бо атомом, либо набором. Атом

определяет "неделимый" элемент на­бора, предназначенный для хранения

элементарной порции ин­фор­ма­ции. Реализация наборов основана на

использовании разнородных списков.

1.4.3. Дерево

Еще один пример рекурсивной структуры, широко использующейся в

программировании - структура дерева. Деревом называется сово­купность

связанных элементов - вершин дерева, включающая в себя один особый элемент -

корень, при этом все остальные эле­мен­ты образуют поддеревья. Наиболее

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

которого делится (по отношению к корню) на два подмножества - два поддерева

(левое и правое).

Примеры рекурсивных алгоритмов

6.1. Рисование дерева

6.2. Ханойские башни

6.3. Синтаксический анализ арифметических выражений

6.4. Быстрые сортировки

6.5. Произвольное количество вложенных циклов

6.6. Задачи на графах

6.7. Фракталы

Присваивание

В одной строке может стоять больше одной операции присваивания =.

Знак = всегда означает: "переменной слева присвоить значение, стоящее справа ". Операция выполняется справа налево. Поэтому первой значение 100 получает переменная d, затем с, b и а.

Знак присвоить может стоять даже внутри математического выражения:

Присваивание имеет более высокий приоритет, чем сложение и вычитание. Поэтому сначала переменной r будет присвоено значение 9-с. А затем переменная value получит значение 5+9-с.

Составное присваивание

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

Преобразование типов

(тип данных) выражение

v=(double)age*f;

Переменная age временно преобразуется к типу с плавающей точкой двойной точности и умножается на переменную f.

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

Операции инкремента (++) и декремента (-)

В языке C++ предусмотрены две уникальные операции, которые увеличивают или уменьшают значение переменной на 1.

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

Операция sizeof

Имеет формат

sizeof данные

sizeof (тип данных)

Операция sizeof возвращает размер в байтах указанного в ней данного или типа данных.

cout " "Размер типа float в байтах=\t" "sizeof (float)

Результат: 4.

Операция "запятая"

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

Оператор?:

(Условие) ? (выражение1):(выражение2)

Если условие истинно, то выполняется выражение1, а если ложно, то выражение2.

(а>b) ? (ans =10):(ans=25);

ans=(a>b)?(10):(25);

Если а>b, то переменная ans получается значение 10, иначе - значение 0.25

Поразрядные операции

|,или

^ исключающее или

Логические бинарные операции (&&-конъюнкция(И) и || дизъюнкция (или))

Унарные операции:

& - операция получения адреса операнда

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

Унарный минус- изменяет знак арифметического операнда.

Унарный плюс (введен для симметрии с унарным минусом)

! – логическое отрицание значения операнда.

Увеличение на единицу (инкремент или автоувеличение):

префиксная операция – увеличение значения операнда на 1 до его использования

постфиксная операция – увеличение значения операнда на 1 после его использования.

Операнд не может быть константой.

sizeof – операция вычисления размера(в байтах) для объекта того типа, который имеет операнд.

Бинарные операции:

Аддитивные (+- сложение арифметических операндов, - вычитание арифметических операндов)

Мультипликативные (* - умножение операндов арифметического типа, / - деление операндов арифметического типа, %- получение остатка от деления целочисленных операндов (деление по модулю))

Операции сдвига (<<- сдвиг влево битового представления значения левого целочисленного операнда на количество разрядов, равное значению правого целочисленного операнда, >>- сдвиг вправо битового представления значения левого целочисленного операнда на количество разрядов, равное значению правого целочисленного операнда)

Операции отношения (сравнения) (> < <= >= != = =-равно)

Логические бинарные операции (&&-конъюнкция(И) и || дизъюнкция (или))

Операции присваивания (=- присвоить значение выражения-операнда из правой части операнду левой части p=10.3 – 2*x, *= присвоить левой части произведение значений обоих операндов P*=2 эквивалентно P = P*2, /= P/=2.2-d эквивалентно P=P/ (2.2-d), %= N%3 эквивалентно N=N % 3;,+= присвоить операнду левой части сумму значений обоих операндов А+= В эквивалентно А=А+В, -= Х -=4.5 – z эквивалентно Х=Х – (4.2 – z),

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

Приоритеты операций задают последовательность вычислений в сложном выражении

Вопрос 26. Потоковый ввод и вывод информации в языке С++

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

Потоки ввода-вывода

В соответствии с названием заголовочного файла iostream.h (stream - поток; "i" - сокращение от input - ввод; "o" - сокращение от output - вывод) описанные в этом файле средства ввода-вывода обеспечивают программиста механизмами для извлечения данных из потоков и для включения (внесения) данных в потоки. Поток определяется как последовательность байтов (символов) и с точки зрения программы не зависит от тех конкретных устройств (файл на диске, принтер, клавиатура, дисплей, стример и т.п.), с которыми ведется обмен данными. При обмене с потоком часто используется вспомогательный участок основной памяти - буфер потока.

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

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

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

Входные, из которых читается информация;

Выходные, в которые вводятся данные;

Двунаправленные, допускающие как чтение, так и запись.

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

В соответствии с особенностями "устройства", к которому "присоединен" поток, потоки принято делить на

Стандартные,

Консольные,

Строковые и

Файловые.

В заключение перечислим отличительные особенности применения механизма потоков. Потоки обеспечивают:

Буферизацию при обменах с внешними устройствами;

Независимость программы от файловой системы конкретной операционной системы;

Контроль типов передаваемых данных;

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

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

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

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

Аналогом понятия внутреннего файла в языках Си/Си++ является понятие потока. Отличие от файловой переменной Паскаля состоит в том, что потоку в Си не ставится в соответствие тип. Поток - это байтовая последовательность, передаваемая в процессе ввода-вывода.

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

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

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

Стандартные потоки (istream, ostream, iostream ) служат для работы с терминалом. Строковые потоки (istrstream, ostrstream, strstream ) служат для ввода-вывода из строковых буферов, размещенных в памяти. Файловые потоки (ifstream, ofstream, fstream ) служат для работы с файлами.

· ios базовый потоковый класс

· streambuf буферизация потоков

· istream потоки ввода

· ostream потоки вывода

· iostream двунаправленные потоки

· iostream_withassign поток с переопределенной операцией присваивания

· istrstream строковые потоки ввода

· ostrstream строковые потоки вывода

· strstream двунаправленные строковые потоки

· ifstream файловые потоки ввода

· ofstream файловые потоки вывода

· fstream двунаправленные файловые потоки

· Потоки для работы с файлами создаются как объекты следующих классов:

· ofstream - запись в файл;

· ifstream - чтение из файла;

· fstream - чтение/запись.

· Ввод/вывод в C++ осуществляется с помощью потоков библиотеки C++, доступных при подключении заголовочного файла iostream.h (в VC++.NET – объекта-заголовка iostream). Поток представляет собой объект какого-либо потокового класса.

· Потоковые классы сконструированы на основе базового класса ios:

· ios – базовый потоковый класс;

· istream – класс входных потоков;

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

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

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

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

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

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

Стремительное развитие КПК потребовало увеличения скорости и мобильного интернета. От медлительного и дорогостоящего WAP-соединения до высокоскоростного 4G. Прогресс не стоит на месте, и уже не за горами тот день, когда проводной интернет будет поглощен мобильным. Следующее поколение будет с недоумением взирать на ВОЛС, так же, как мы сейчас смотрим на стационарную телефонную связь, которая постепенно вытесняется беспроводной.