Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Управление и оптимизация / Osnovi informatsionnikh i komputernikh tekhnologiy 2011

.pdf
Скачиваний:
50
Добавлен:
02.09.2019
Размер:
2.13 Mб
Скачать

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

При кодировании текстовой информации используют различные типы кодировок. На практике используют 8-битные и 16-битные (unicode) кодировки. Однако, существуют и альтернативы.

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

Решение.

Информационный объем текста равен произведению числа символов на информационный вес одного символа, то есть: I = К * а.

Т.к. оба текста имеют одинаковое число символов -К, то разница зависит от информативности одного символа алфавита а.

Найдем количество бит, которое необходимо для кодирования 32 и 16

символов.

2а1 = 32, т.е. а1 = 5 бит, 2а2 = 16, т.е. а2 = 4 бит.

Тогда информационный объем сообщений будет равен I1 = К * 5 бит, I2 = К * 4 бит соответственно.

Значит, текст, записанный на русском языке, в 5/4 раза несет больше информации.

Ответ: русский текст несет больше информации.

Пример. Объем сообщения, содержащего 2048 символов, составил 1/512 часть Мбайта. Определить мощность алфавита.

Решение.

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

Определим объем сообщения в битах. I = 1/512 * 1024 * 1024 * 8 = 16384 бит – это информационный объем сообщения. Тогда для кодирования одного символа используется следующее количество бит: а = I / К = 16384 /1024 =16 бит.

Таким образом. Один символ алфавита кодируется 16 битами. Тогда мощность использованного алфавита равна 216 = 65536.

Ответ: мощность алфавита равна 65536.

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

Пример. Известно, что видеопамять компьютера имеет объем 512 Кбайт. Разрешающая способность экрана 640 на 200. Сколько страниц экрана одновременно разместится в видеопамяти при палитре

31

а) из 8 цветов; б) 16 цветов?

Решение.

а)Для кодирования 8 цветов используют 3 бита (23=8).

Объем информации на одном экране монитора будет равен

620*200*3=372000 бит.

Объем видеопамяти равен 512*1024*1024=536870912.

Ответ: в памяти может храниться 1443 страницы. Тогда в видеопамяти может храниться 1443 страниц. б)Для кодирования 16 цветов используют 4 бита (24=16).

Объем информации на одном экране монитора будет равен

620*200*16=1984000 бит.

Объем видеопамяти равен 512*1024*1024=536870912.

Тогда в видеопамяти может храниться 270 страниц. Ответ: 270 страниц.

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

Решение.

Нетрудно подсчитать, что 8 (то есть 1 байт), поскольку при помощи 7 бит можно сохранить номер оттенка о 0 до 127, а 8 бит хранят от 0 до 255.

Заметим, что такой способ кодирования неоптимален: 130 заметно меньше 255.

Ответ: 8 бит.

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

Решение.

Для хранения информации о 16 оттенках достаточно 4 бита (половина байта). Так как эти 16 оттенков выбраны из 130, то, очевидно, что среди их кодов могут быть оттенки, коды которых не умещающиеся в 4 битах. Поэтому воспользуемся так называемым «методом палитр»: назначим 16 используемых в нашем рисунке оттенкам свои “локальные” номера от 1 до 15 и закодируем весь рисунок из расчета 2 точки на байт. А затем допишем к этой информации (в конец содержащего ее файла) таблицу соответствия, состоящую из 16 пар байтов с номерами оттенков: 1 байт - наш “локальный” номер в данном рисунке, второй - реальный номер данного оттенка.

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

32

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

Решение.

Если записывают моносигнал с частотой 44.1 кГц, разрядностью 16 бит (2 байта), то каждую минуту аналого-цифровой преобразователь будет выдавать 441000 * 2 * 60 = 529000 байт (примерно 5 Мб) данных об амплитуде аналогового сигнала, который в компьютере записываются на жесткий диск.

Если записывают стереосигнал, то 1058000 байт (около 10 Мб). Ответ: для записи моносигнала необходимо 5 Мб, стереосигнала

10 Мб.

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

(16 бит, 24 кГц)?

Решение.

16 бит * 24000 = 384000 бит = 48000 байт = 47 кБайт.

Ответ: 47 кБайт.

Пример. Рассчитайте объем стереоаудиофайла длительностью 20 секунд при 20-битном кодировании и частоте дискретизации 44.1 кГц.

Решение.

20 бит * 20 * 44100 * 2 = 35280000 бит = 4410000 байт = 4.41 Мб.

Ответ: 4.41 Мб.

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

Решение.

К = 28 = 256.

Ответ: 256.

33

ОСНОВНЫЕ ПРИНЦИПЫ ОРГАНИЗАЦИИ И ФУНКЦИОНИРОВАНИЯ ЭВМ

Логические основы функционирования ЭВМ

Функциональная организация ЭВМ - это абстрактная модель ЭВМ,

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

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

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

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

Блок - функциональный компонент ЭВМ, состоящий из элементов и узлов и выполняющий операции над машинными словами или управляющий такими.

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

Элемент - простейшее устройство ЭВМ, выполняющее одну операцию над входными сигналами.

Блоки и устройства часто изготавливаются в виде самостоятельных конструктивных модулей.

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

Обобщенная структура ЭВМ приведена на рис. 2 и состоит из следующих частей:

обрабатывающей подсистемы,

подсистемы памяти,

подсистемы ввода-вывода,

подсистемы управления и обслуживания.

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

34

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

Рис. 2. Обобщенная структура ЭВМ

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

Операционные устройства или арифметико-логическое устройство

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

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

Всоставе ЭВМ выделяется центральная обрабатывающая часть (ядро ЭВМ) и периферия (все подсистемы ввода/вывода и внешняя память).

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

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

35

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

Подсистема памяти имеет иерархическую структуру, состоящую из нескольких уровней: сверхоперативного уровня (локальная память процессора, кэш-память первого, второго и третьего уровня), оперативного уровня (оперативная память, дисковый кэш), внешнего уровня (внешние ЗУ на дисках, flash накопителях, картах памяти, лентах и т.д.).

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

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

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

Подсистема управления и обслуживания - это совокупность аппаратно-

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

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

К общим принципам построения современных ЭВМ относятся следующие:

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

возможность мультипрограммной работы,

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

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

Для описания логики функционирования аппаратных и программных

средств ЭВМ используется алгебра логики или, булева алгебра. Язык

36

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

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

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

(ФАЛ).

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

Основные логические операции (в порядке их выполнения):

инверсия (отрицание) x – если исходное логическое выражение истинно, то результат отрицания будет ложным, и наоборот, если исходное логическое выражение ложно, то результат отрицания будет истинным;

конъюнкция x1 x2 – сложное логическое выражение, которое считается истинным в том и только том случае, когда оба простых выражения являются истинными, во всех остальных случаях данное сложное выражение ложно;

дизъюнкция x1 x2 – логическое выражение, которое истинно, если хотя бы одно из простых логических выражений истинно и ложно тогда и только тогда, когда оба простых логических выражения ложны;

импликация x1 x2 – логическое выражение, которое истинно во всех

случаях, кроме как из истины следует ложь;

двойная импликация (эквивалентность) x1 x2 – логическое

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

Всего в алгебре логики имеется 16 элементарных функций, но наиболее важными являются перечисленные выше. При этом конъюнкция,

37

дизъюнкция и инверсия образуют базис, и любая сложная функция может быть выражена через них.

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

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

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

Принципы Фон-Неймана. Основные архитектуры ЭВМ

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

Любая компьютерная программа представляет собой последовательность отдельных команд.

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

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

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

Алгоритм – точное указание исполнителю последовательности действий, выполнение которых приводит к решению поставленной задачи.

Программа – последовательность команд, описывающих решение определенной задачи.

38

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

Принципы Фон-Неймана

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

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

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

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

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

Уровни архитектуры

1.Самым нижним уровнем является уровень физических устройств.

2.Цифровой логический уровень – здесь происходит обработка информации в двоичном виде.

3.Микроархитектурный уровень – простейшие арифметические операции (арифметико-логическое устройство).

4.Уровень архитектуры команд.

5.Уровень операционной системы.

6.Уровень языка ассемблера.

7.Уровень языков высокого уровня.

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

Поток команд (ПК) - это последовательность команд, выполняемых ЭВМ (системой), а поток данных (ПД) - последовательность данных

39

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

SISD (Single Instruction Single Data) архитектура или ОКОД - один поток команд, один поток данных. SISD компьютеры – это последовательные компьютеры, в которых в каждый момент времени выполняется лишь одна операция над одним элементом данных (числовым или каким-либо другим значением). К этому классу относятся последовательные компьютерные системы, которые имеют один центральный процессор. Основная масса современных ЭВМ, до последнего времени, функционирует в соответствии с принципом фон Неймана и имеет архитектуру класса SISD. Данная архитектура породила CISC, RISC и архитектуру с суперскалярной обработкой.

Рис. 3. SISDархитектура

Компьютеры с CISC (Complex Instruction Set Computer) архитектурой имеют комплексную (полную) систему команд, под управлением которой выполняются всевозможные операции типа «память-память», «памятьрегистр», «регистр-память», «регистр-регистр». Данная архитектура характеризуется: большим числом команд, переменной длиной, большим числом способов адресации и форматов команд, сложностью команд и многотактностью их выполнения, наличием микропрограммного управления. Типичными представителями CISC являются микропроцессоры семейства x86.

Компьютеры с RISC (Reduced Instruction Set Computer) архитектурой содержат набор простых, часто употребляемых в программах команд. Основными являются операции типа «регистр-регистр».

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

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

SIMD (Single Instruction Stream - Multiple Data Stream) или ОКМД -

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

40