Главная страница

Лекции по информатике учебно методическое пособие


Скачать 0.99 Mb.
НазваниеЛекции по информатике учебно методическое пособие
Дата16.11.2018
Размер0.99 Mb.
Формат файлаpdf
Имя файла1599.pdf
ТипЛекции
#56701
страница5 из 10
1   2   3   4   5   6   7   8   9   10
NTFS (New Technolo- gy File System) – используется, начиная с ОС Windows NT для 32-х и
64-х разрядных процессоров). В них пользователю предоставляются следующие возможности:
– создание папок;
– копирование, перемещение, переименование и удаление файлов и папок;
– навигация по файловой структуре
– запуск программ и открытие документов;
– создание ярлыков;
– стандарты для обозначения пути к файлу: абсолютный и от- носительный адрес файла. Абсолютный адрес начинается указанием диска, на котором расположен файл, и далее последовательно через символ «\» (обратный слеш) перечисляются все папки, которые сле- дует открыть, чтобы найти нужный файл. В относительном адресе
через символ «\» перечисление папок ведется, начиная от той, кото- рая активна в данный момент. Для перехода в папку нижнего уровня следует указать имя этой папки. Переход в папку верхнего уровня вне зависимости от ее реального названия обозначается символом
«..» (две точки).
Файл характеризуется свойствами и атрибутами. Их значения указываются в диалоговом окне «Свойства», которое открывается по команде «Свойства» в меню «Файл» и в контекстном меню. Основ- ные из них:
имя файла может содержать до 256 символов и состоит из двух частей, которые разделяются точкой. Первая часть – имя, кото- рое назначает пользователь для того, чтобы в дальнейшем было по-

45 нятно, что за информация хранится в этом файле. Обычно имя поль- зователя состоит из букв русского и латинского алфавита, цифр, про- белов, дефиса. Остальные символы использовать не рекомендуется, хотя некоторые – допускается. Вторая часть – расширение. Оно ука- зывает на тип файла или программу, которая в дальнейшем должна работать с ним. В нем разрешается использовать не более 4-х симво- лов. Пояснения к стандартным расширениям, с которыми часто встречаются пользователи, приведены в табл.4.1.
длина файла в байтах (длина занимаемого участка на диске);
время и дата создания файла (для опознания последних по времени вариантов файла).
Кроме перечисленных выше атрибутов каждому файлу сопос- тавляются атрибуты, определяющие допустимые действия с ним. На- пример:
только для чтения (исправления, сделанные во время про- смотра, не будут сохраняться после закрытия файла;
скрытый (не будет высвечиваться в каталоге), но открыть его можно, введя имя вручную;
архивный (для автоматического обновления изменѐнных вер- сий в архивах);
системный.

46
Таблица 4.1.
Основные стандартные расширения файлов:
Расширение
Формат/назначение программы
Системные программы/программы в машинных кодах
*.com
*.pcx системные программы в машинных кодах
*.sys программа драйвера
*.bak автоматически создаваемая резервная копия файла
*.tmp временная копия с промежуточной информацией, автоматически уничтожаемая после закрытия программы
*.hlp файл встроенной справочной системы
*.exe прикладная программа в машинных кодах
Графические форматы
*.bmp формат растровой графики, в котором задан цвет каждого пиксе- ля
* .jpg форматы сжатой растровой графики, удобный для хранения от- сканированных фотографий и иллюстраций. Используется в Ин- тернете
*.gif
*.tif
*.png
Формат для диаграмм, создаваемых программным путѐм, рисун- ков типа аппликации с ограниченным набором цветов, неслож- ной анимации. Используется в Интернете
*.psd,
*.pdd формат растровых графических файлов в PhotoShop
*.cdr формат векторных графических файлов в CorelDRow
*.eps формат векторных графических файлов для подготовки афиш, объявлений, плакатов, который рекомендуется для создания ил- люстраций в настольных издательских системах.
Текстовые форматы
*.txt формат текстовых файлов без форматирования
*.doc, *.docх формат текстовых файлов программ Word до 2003 и после 2003 года
*.rtf универсальный формат форматированных текстовых файлов, понятный всем версиям программы Word
*.pdf
Комбинация текста с растровой графикой. Используется в Ин- тернете для публикации документов.
Расширения основных программ Microsoft office
*.xls, *.xlsx форматы файлов программы Excel до 2003 и после 2003 года
*.ppt, *.pptx формат файлов электронных презентаций программы PowerPoint до 2003 и после 2003 года
*.mdb,
*.mdbx формат файлов программы Access до 2003 и после 2003 года
*.htm, *.html формат файлов для Web-страниц

47
Для того, чтобы применить нужную команду не к одному фай- лу, а к нескольким, в именах которых есть общие для них фрагменты, вводится понятие групповое имя файла (маска имени). В маске в яв- ном виде указываются символы, которые обязательно должны при- сутствовать в нужных файлах, остальные символы заменяются шаб- лонными:
– * означает, что на этом месте может оказаться любое количе- ство любых символов, в частности, ничего;
– ? означает, что на этом обязательно должен быть какой- нибудь символ, но только один;
– | означает, что требуется обработать одной командой все файлы, указанные в предыдущей маске, кроме файлов, подходящих под маску, указанную после него.
Примеры:
*.* – под эту маску подходят все файлы (любое имя и любое расширение);
*.jpg – маска указывает на все файлы рисунков с расширением
―jpg‖;
*экзам*.* – маска указывает на файлы с любым расширением, у которых в имени пользователя есть указанный фрагмент текста;
*.*|*.bak‖ – означает, что требуется обработать одной коман- дой все файлы, кроме файлов с расширением . ―bak‖, какими бы ни были их имена.
4.3.
Инструментальное программное обеспечение ЭВМ
Инструментальное ПО служит для разработки программ, применяемых в самых разных областях деятельности человека.
В истории программирования можно выделить следующие этапы по способам написания программ:
– программирование в машинных кодах;
– использование машинно-ориентированных языков низкого уровня;
– использование алгоритмических языков высокого уровня.
Для того чтобы ЭВМ могла выполнять программу, она должна быть записана по строгим правилам в виде, доступном процессору, т. е. представлять собой последовательность двоичных чисел и кодов.
Такие коды называются машинными кодами, машинными коман-
дами. Программа, написанная таким образом, – программой на ма-

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

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

50
В результате получается исполняемый модуль – программа, написанная в машинных кодах и полностью готовая к работе.
Этот режим трансляции удобен для расчѐтов по уже отлажен- ной и протестированной программе, так как исполняемый модуль можно сохранить в памяти и при необходимости провести расчеты с другим набором исходных данных, не повторяя трансляцию.
В настоящее время для большинства алгоритмических языков разработаны интегрированные системы программирования (Бей- сик, Паскаль, Си и т. п.). Они включают в себя следующие компонен- ты:
текстовый редактор для написания программы;
– библиотеки стандартных программ;
– средства отладки;
– справочную службу;
–компилятор и/или интерпретатор;
– диалоговый интерфейс.
4.5.
Основные алгоритмические языки
высокого уровня
Один из первых языков программирования высокого уровня,
Фортран(Formula Translation), был создан в середине 50-х годов.
Он используется для инженерных и научных расчетов, для реше- ния задач физики и других наук с развитым математическим аппара- том. Благодаря своей простоте и тому, что на этом языке накоплены
Исходный
модуль
Объектный
модуль
Исполняемый
модуль
Перевод кон-
струкций
языка в ма-
шинные ко-
ды с исполь-
зованием от-
носительных
адресов
Добавление
необходимых
стандартных
программ,
замена отно-
сительных
адресов ре-
альными
Компиляция
Компоновка
Рис. 4.1. Схема трансляции в режиме компиляции

51 большие библиотеки программ, Фортран и в наши дни остается од- ним из самых распространенных алгоритмических языков.
Для решения экономических задач был создан язык програм- мирования Кобол.
Расширение областей применения ЭВМ влечет за собой созда- ние языков, ориентированных на новые сферы применения: Снобол– алгоритмический язык для обработки текстовой информации.
Лисп– алгоритмический язык для обработки символов. Он находит широкое применение в исследованиях по созданию искусственного
интеллекта.
В 1968 г. был объявлен конкурс на лучший язык программиро- вания для обучения студентов. Для этого конкурса Никлаус Вирт
создал язык Паскаль, достаточно простой, удобный, с наличием мощных средств структурирования данных. Хотя Паскаль был разра- ботан как язык для обучения программированию, он впоследствии получил широкое развитие и в настоящее время считается одним из самых используемых языков.
Для обучения младших школьников Самуэлем Пайпертом был разработан язык Лого. Он отличается простотой и богатыми возможностями.
Широкое распространение в школах в качестве обучающего языка получил язык Бейсик, позволяющий взаимодействовать с ЭВМ в режиме непосредственного диалога. Спустя много лет после изо- бретения Бейсика, он и сегодня самый простой для освоения из де- сятков языков общецелевого программирования.
Необходимость разработки больших программ, управляющих работой ЭВМ, потребовала создания специального языка программи- рования. В начале 70-х г. был разработан язык СИ, который широко используется как инструментальный язык для разработки опера-
ционных систем, трансляторов, баз данных и других системных
и прикладных программ. Это язык программирования общего назна- чения. Во многих случаях программы, написанные на Си, сравнимы по скорости с программами, написанными на языке Ассемблера. При этом они имеют лучшую наглядность и их более просто сопровож- дать. В отличие от Паскаля, в нем заложены возможности непосред- ственного обращения к некоторым машинным командам и к опреде- ленным участкам памяти компьютера.
Появление функционального программирования привело к

52 созданию языка Пролог (ПРОграммы ЛОГические). Этот язык про- граммирования разрабатывался для задач анализа и понимания ес-
тественных языков на основе языка формальной логики и мето-
дов автоматического доказательства теорем.
В 80-х г. 20 века был создан язык Ада. В дополнение к класси- ческим свойствам,он обеспечивает программирование задач ре-
ального времени и моделирования параллельного решения задач.
К языкам сверхвысокого уровня можно отнести Алгол-68 и
APL. Повышение уровня этих языков произошло за счет введения сверхмощных операций и операторов.
В современной информатике можно выделить два основных направления развития языков программирования: процедурное и не- процедурное.
В процедурных языках программа явно описывает определен- ную последовательность действий, которые необходимо выполнить, чтобы получить результат.
Среди процедурных языков выделяют в свою очередь струк-
турные и операционные языки. В структурных языках одним опера- тором записываются целые алгоритмические структуры: ветвления, циклы и т.д. В операционных языках для этого используются не- сколько операций. Широко распространены следующие структурные языки: Паскаль, Си, Ада, ПЛ/1. Среди операционных известны
Фортран, Бейсик, Фокал.
Непроцедурное (декларативное) программирование появи- лось в начале 70-х годов 20 века, но стремительное его развитие на- чалось в 80-е годы, когда был разработан японский проект создания
ЭВМ пятого поколения, целью которого явилась подготовка почвы для создания интеллектуальных машин. К непроцедурному програм- мированию относятся функциональные и логические языки.
В функциональных языках программа описывает вычисление некоторой функции. Обычно эта функция задается как композиция других, более простых, те в свою очередь разлагаются на еще более простые и т.д. Один из основных элементов в функциональных язы- ках – рекурсия, то есть вычисление значения функции через значение этой же функции от других элементов. Присваивания и циклов в классических функциональных языках нет.
В логических языках программа вообще не описывает дейст- вий. Она задает данные и соотношения между ними. После этого сис-

53 теме можно задавать вопросы. Машина перебирает известные и за- данные в программе данные и находит ответ на вопрос. Порядок пе- ребора не описывается в программе, а неявно задается самим языком.
Классическим языком логического программирования считается
Пролог. Построение логической программы вообще не требует алго- ритмического мышления, программа описывает статические отноше- ния объектов, а динамика находится в механизме перебора и скрыта от программиста.
Можно выделить еще один класс языков программирования –
1   2   3   4   5   6   7   8   9   10


написать администратору сайта