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

[Alekseev_A.P.]_Informatika_2015(z-lib.org)

.pdf
Скачиваний:
220
Добавлен:
26.01.2020
Размер:
8.07 Mб
Скачать

QRкоды 81

__________________________________________________________________

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

Вначале нужно определить, какой вид маски использован при её кодировании. В разрядах 12, 11 и 10 системной строки записано двоичное слово 111. Сложение со статической маской 101 дает двоичное число 010. По таблице кодов маски легко определить формулу, использованную для формирования маски:

j mod 3 0 .

По этой формуле можно определить вид расчётной маски (см. рис. а). Этот рисунок нужно трактовать следующим образом:

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

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

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

Наибольший интерес для декодирования представляет область матрицы, распо-

82 QRкоды

__________________________________________________________________

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

а)

б)

в)

Из рисунка в) видно, что модули третьего и шестого столбца справа были проинвертированы.

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

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

а) б) в)

В соответствии с двоичным форматом данных следующие 8 бит (клет-

QRкоды 83

__________________________________________________________________

ки 5…12) указывают, сколько символов содержится в сообщении. Двоичное число 00000101 говорит о том, что данное сообщение содержит пять символов.

В очередных восьми клетках 13…20 (см. рисунок а) размещено двоичное слово 01010000. Перевод этого байта в десятичную систему счисления даёт число 80. По таблице CP-1251 легко определить, что данному коду соответствует латинская буква «Р».

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

Результаты декодирования сообщения приведены в таблице.

Номера модулей

Биты

Десятичное число

Символ

13…20

01010000

80

P

21…28

01110000

114

r

29…36

01101111

111

o

37…44

01100010

98

b

45…52

01100001

97

a

Таким образом, в результате ручного декодирования было определено, что матрица содержит слово «Proba».

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

Согласно первому правилу штраф назначается за каждую группу из пяти или более одноцветных пикселей в одной строке. Штрафные функции по столбцам вычисляются аналогично. Второе правило дает штраф за каждый одноцветный квадрат размером 2x2 пикселя. Третье правило определяет штраф, если на матрице есть области, которые похожи на указатели определения ориентации. Четвёртое правило начисляет штраф, если более половины пикселей одного цвета.

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

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

Расчет ведется следующим образом. Если в строке имеется группа из

84 QRкоды

__________________________________________________________________

пяти смежных одноцветных пикселей, то начисляется три штрафных балла. За каждый последующий пиксель, который примыкает к группе, начисляется дополнительно по одному баллу. Таким образом, первая группа черных пикселей дает вклад 3 + 1 + 1 = 5 баллов. Вторая группа из семи черных пикселей также дает 5 штрафных баллов. В общей сложности первая строка дала 10 штрафных баллов.

Вторая сверху строка матрицы показана на следующем рисунке.

В этой строке есть две группы по пять белых пикселей. Эти две группы в сумме дают 6 штрафных баллов.

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

На следующем рисунке показаны штрафные баллы по всем строкам и столбцам матрицы.

Затем рассчитываются суммарные значения штрафных баллов по строкам и по столбцам. Для рассматриваемого примера суммарное число штрафных баллов по строкам равно 88, а по столбцам 102. Общее число штрафных балов, вычисленное по первому правилу для данной маски, даёт число 190.

Используя все четыре правила расчета штрафных баллов, находят суммарную

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

Структурная схема ЭВМ

85

__________________________________________________________________________________

4. Аппаратные средства

4.1. Структурная схема ЭВМ

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

Основные элементы электронной вычислительной машины (фоннеймановской структуры) и связи между ними показаны на рисунке.

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

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

86 Структурная схема ЭВМ

__________________________________________________________________________________

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

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

Таким образом, программы состоят из команд, а при выполнении программы процессор разбивает команды на элементарные операции.

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

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

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

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

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

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

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

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

Структурная схема ЭВМ

87

__________________________________________________________________________________

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

Кэш-память первого уровня, которая размещается на одном кристалле с процессором, принято обозначать символами L1. Кэш-память, которая располагается на материнской плате (второй уровень), обозначается символами L2.

На структурной схеме показана только кэш-память L1. Заметим, что в первых ЭВМ структуры фон Неймана кэш-памяти не было.

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

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

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

Вкачестве запоминающих элементов в ОЗУ используются либо триггеры (статическое ОЗУ), либо конденсаторы (динамическое ОЗУ).

ОЗУ — это энергозависимая память, поэтому при выключении питания информация, хранившаяся в ОЗУ, теряется безвозвратно.

По быстродействию ОЗУ уступает кэш-памяти и тем более сверхоперативной памяти — БР. Но стоимость ОЗУ значительно ниже стоимости упомянутых видов памяти.

88 Структурная схема ЭВМ

__________________________________________________________________________________

В постоянном запоминающем устройстве (ПЗУ) хранится инфор-

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

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

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

Внешние запоминающие устройства (ВЗУ) предназначены для дол-

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

Кустройствам ввода информации относятся: клавиатура, мышь,

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

Кустройствам вывода информации относятся: дисплей (монитор), LCD-проектор, принтер, плоттер, акустические колонки, головные телефоны

идр.

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

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

Общий принцип работы ЭВМ заключается в следующем. Из процессора на шину адреса (на структурной схеме она не показана и находится внутри системной шины) выдается адрес очередной команды. Считанная по

Структурная схема ЭВМ

89

__________________________________________________________________________________

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

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

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

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

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

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

90 Структурная схема ЭВМ

__________________________________________________________________________________

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

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

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

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

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