Программное обеспечение компьютера



Структура ПК, состав и назначение устройств

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

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

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

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

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

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

· оперативную память (ОП) – оперативное запоминающее устройство (ОЗУ), состоящую из перенумерованных ячеек и выполняющую функции приёма информации из других устройств, запоминания информации и выдачи информации по запросу в другие устройства компьютера;

· центральный процессор (ЦП), включающий в себя устройство управления(УУ) и арифметико-логическое устройство (АЛУ) и выполняющий функции обработки данных по заданной программе путем выполнения арифметических и логических операций, программного управления работой устройств компьютера;

· устройства ввода/вывода;

· каналы связи, по которым передается информация.

 

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

 


Рис. 1. Структурная схема компьютера

 

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

Обычно в составе процессора имеется ряд специализированных дополнительных ячеек памяти, называемых регистрами. Регистр выполняет функцию кратковременного хранения данных или команды. Существует несколько типов регистров, отличающихся видом выполняемых операций. Некоторые важные регистры имеют свои названия. Например: сумматор – регистр АЛУ, участвующий в выполнении каждой операции; счетчик команд – регистр УУ, содержимое которого соответствует адресу очередной выполняемой команды и служит для автоматической выборки программы из последовательных ячеек памяти; регистр команд– регистр УУ для хранения кода команды на период времени, необходимый для ее выполнения. Часть его разрядов используется для хранения кода операции, остальные – для хранения адресов операндов.

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

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

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

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

Основными структурными элементами компьютера являются центральный процессор и память компьютера (слайд 6).

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

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

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

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

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

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

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

К устройствам специальной памяти относятся постоянная память, перепрограммируемая постоянная память, память CMOS RAM, питаемая от батарейки, видеопамять и некоторые другие виды памяти.

Постоянная память (ROM– память только для чтения) – энергонезависимая память, используется для хранения данных, которые никогда не потребуют изменения. Содержание памяти специальным образом «зашивается» в устройстве при его изготовлении для постоянного хранения. Из ПЗУ можно только читать.

Перепрограммируемая постоянная память (FlashMemory)– энергонезависимая память, допускающая многократную перезапись своего содержимого.

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

Важнейшая микросхема Flash-памяти – модуль BIOS. Роль BIOS двояка: с одной стороны, это неотъемлемый элемент аппаратуры, а с другой стороны — важный модуль любой операционной системы. BIOS (BasicInput/OutputSystem – базовая система ввода-вывода) – совокупность программ, предназначенных для автоматического тестирования устройств после включения питания компьютера и загрузки операционной системы в оперативную память.

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

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

 

К внешним устройствам компьютера относятся, прежде всего, устройства внешней памяти, а также устройства ввода/вывода.

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

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

Флэш-диски– это современные устройства хранения данных на основе энергонезависимой флэш-памяти. Устройство имеет компактные размеры и допускает подключение в разъем USB, после чего распознается как жесткий съемный диск. Объем флэш-дисков может составлять от нескольких до десятков Гбайт.

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

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

Компакт-диск (CD-ROM) представляет собой прозрачный полимерный диск диаметром 12 см и толщиной 1,2 мм, на одну сторону которого напылен светоотражающий слой алюминия, защищенный от повреждений слоем прозрачного лака. Емкость CD-ROM достигает 780 Мбайт. Считывание информации с CD-ROM происходит с достаточно высокой скоростью, хотя и заметно меньшей, чем скорость работы накопителей на жестком диске.

В настоящее время на смену технологии CD-ROM пришла технология цифровых видеодисков – DVD. Эти диски имеют тот же размер, что и обычные CD, но вмещают до 17 Гбайт данных, т.е. по объему заменяют 20 стандартных дисков CD-ROM.

К устройствам ввода/вывода (слайд 9) относятся: аудиоадаптер, видеоадаптер, видеосистема компьютера, принтер, сканер, клавиатура, мышь.

Аудиоадаптер (SoundBlaster - звуковая плата) – это специальная электронная плата, которая позволяет записывать звук, воспроизводить его и создавать программными средствами с помощью микрофона, наушников, динамиков, встроенного синтезатора и другого оборудования.

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

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

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

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

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

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

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

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

Клавиатура имеет 12функциональных клавиш, расположенных вдоль верхнего края. Нажатие функциональной клавиши приводит к посылке в компьютер не одного символа, а целой совокупности символов. Функциональные клавиши могут программироваться пользователем. Например, во многих программах для получения помощи (подсказки) задействована клавиша F1, а для выхода из программы – клавиша F10.

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

 

Программное обеспечение компьютера

Программное обеспечение(ПО) является логическим продолжением технических средств. Сфера применения конкретного компьютера определяется созданным для него ПО.

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

Все программы, работающие на компьютере, можно условно разделить на три категории (слайд 10):

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

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

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

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

· операционные системы и оболочки;

· системы программирования (трансляторы, библиотеки подпрограмм, отладчики и т.д.);

· инструментальные системы;

· интегрированные пакеты программ;

· системы машинной графики;

· системы управления базами данных (СУБД);

· прикладное программное обеспечение.

 

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

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

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

 

Операционные системы

 

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

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

В основные функции операционной системы входит:

· осуществление диалога с пользователем;

· ввод-вывод и управление данными;

· планирование и организация процесса обработки программ;

· распределение ресурсов (оперативной памяти, процессора, внешних устройств);

· запуск программ на выполнение;

· всевозможные вспомогательные операции обслуживания;

· передача информации между различными внутренними устройствами;

· программная поддержка работы периферийных устройств (дисплея, клавиатуры, дисковых накопителей, принтера и др.).

 

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

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

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

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

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

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

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

Оболочки– это программы, созданные для упрощения работы со сложными программными системами, такими, например, как ОС DOS. Они преобразуют неудобный командный пользовательский интерфейс в дружественный графический интерфейс или интерфейс типа “меню”. Прежде всего, оболочки предоставляют пользователю удобный доступ к файлам и обширные сервисные услуги (слайд 15).

В начале 90-х годов во всем мире огромную популярность приобрела графическая оболочка ОС DOS - MS Windows, преимущество которой состоит в том, что она облегчает использование компьютера, и её графический интерфейс вместо набора сложных команд с клавиатуры позволяет выбирать их мышью из меню практически мгновенно. По мере появления новых версий MS Windows она из оболочки превратилась в полноценную операционную систему с огромными возможностями. В настоящее время большинство компьютеров в мире работают под управлением той или иной версии операционной системы MS Windows, как правило – Windows 10.

Имеются и другие операционные системы для ПК. Список их включает в себя, в частности, MacOS, Linux Ubuntu и другие ее модификации. Их в основном используют узкопрофильные специалисты.

 

Системы программирования

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

· компилятор или интерпретатор;

· интегрированная среда разработки;

· средства создания и редактирования текстов программ;

· обширные библиотеки стандартных программ и функций;

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

· “дружественная” к пользователю диалоговая среда;

· многооконный режим работы;

· мощные графические библиотеки; утилиты для работы с библиотеками;

· встроенный ассемблер;

· встроенная справочная служба;

· другие специфические особенности.

 

Транслятор– это программа-переводчик (слайд 17). Она преобразует программу, написанную на одном из языков высокого уровня, в программу, состоящую из машинных команд. Трансляторы реализуются в виде компиляторов или интерпретаторов. С точки зрения выполнения работы компилятор и интерпретатор существенно различаются.

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

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

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

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

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

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

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

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

Процедурные языки характеризуются следующими особенностями:

· необходимостью явного управления памятью, в частности, описанием переменных;

· малой пригодностью для символьных вычислений;

· отсутствием строгой математической основы;

· высокой эффективностью реализации.

 

В основе объектно-ориентированного стиля программирования (слайд 19) лежит понятие объекта, а суть его выражается формулой: “объект - данные + процедуры”. Каждый объект интегрирует в себе некоторую структуру данных и доступные только ему процедуры обработки этих данных, называемые методами. Объединение данных и процедур в одном объекте называется инкапсуляциейи присуще объектно-ориентированному программированию.

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

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

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

В данном курсе мы будем изучать основы программирования, используя языкпрограммирования высокого уровня – Visual C ++. Это мощная, профессиональная, визуальная, объектно-ориентированная система программирования, позволяющая быстро и эффективно создавать приложения для MS Windows и входящая в состав интегрированной среды разработки Visual Studio .NET. Однако мы не будем использовать объектно-ориентированные возможности системы, оставаясь в рамках процедурного программирования.   

 


Дата добавления: 2020-11-27; просмотров: 99; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!