МИНИСТЕРСТВО
СЕЛЬСКОГО ХОЗЯЙСТВА
РОССИЙСКОЙ ФЕДЕРАЦИИ
ФГОУ ВПО «ВОРОНЕЖСКИЙ
ГОСУДАРСТВЕННЫЙ
АГРАРНЫЙ УНИВЕРСИТЕТ ИМЕНИ
ИМПЕРАТОРА ПЕТРА
I »
Кафедра информационного
обеспечения
и моделирования
агроэкономических систем
Контрольная
работа
по дисциплине
«Информатика»
Выполнила: студентка Ю - гос-(3)-2014
заочного отделения
Писарева О.А.
Шифр 14554
Проверил: к.ф.-м.н., доц.
Кульнева Н.А.
Миллерово
2014
Содержание
Организация и архитектура
памяти ЭВМ
Важной частью вычислительных систем
является память. Организация взаимодействия
между процессором и памятью определяет
основные характеристики вычислительной
системы, остальные элементы обеспечивают
связь этого звена с внешними устройствами
с внешним миром. Память соединяется с
управляющим памятью контроллером (устройством
управления памятью) по шине адреса, шине
данных и шине управления. Разрядность
шины данных определяет, сколько двоичных
разрядов одновременно (параллельно) может
быть считано из памяти. Каждый двоичный
разряд (1 бит) хранится элементом памяти.
Элементы для памяти различного типа строятся
на основе различных физических принципов
записи и хранения информации. Элементы
памяти объединяются в ячейки памяти.
При этом все элементы ячейки адресуются
одновременно, одинаково и организованы
так, что одновременно могут выдавать
данные на шину данных. Такие объединенные
ячейки образуют слово. Количество разрядов
данных, считываемых из памяти одновременно,
называют длиной выборки. Для хранения
1 байта используется 8 элементов памяти,
восьмибитные ячеки памяти организованы с использованием шины данных шириной 8 линий.
Из микросхем памяти (чипов) создаются
модули памяти, которые устанавливаются
в специальные слоты (разъемы) вычислительной
системы. Сейчас наиболее распространены
DIMM модули - модули памяти с двумя рядами контактов.
Разрядность адресной шины определяет
адресное пространство, то есть количество
ячеек памяти, которые могут адресоваться
непосредственно. Если разрядность адресной
шины - n, то количество
всех возможных двоичных комбинаций (количество
адресов) определится как N = 2n.
Рис. 1. Организация
связи системы памяти с процессором
Память вычислительного устройства
может выполнять три операции:
- хранение информации;
- запись информации;
- чтение информации.
Характеристики памяти:
Емкость памяти определяет
максимальное количество хранимой в памяти
информации и измеряется в битах, байтах,
килобайтах, мегабайтах, гигабайтах, терабайтах и т.д.
Удельная емкость определяется
как отношение емкости памяти к физически занимаемому ею объему.
Плотность записи информации определяется как количество
информации, приходящееся
на единицу площади носителя информации
или на единицу длины носителя информации.
Время доступа к памяти. Быстродействие памяти определяется
продолжительностью выполнения операций
при обращении к памяти. Время обращения
при записи и время обращения при чтении
складывается из времени поиска ячейки
памяти по заданному адресу и собственно
записи или чтения соответственно.
Классификация памяти:
Память с произвольным доступом
Для памяти
с произвольным доступом (электронной
памяти) время обращения не зависит от
местоположения искомого участка памяти.
Выбор ячейки происходит по адресу при
помощи электронных схем.
Прямой циклический доступ
При обращении к дисковой памяти используется
прямой циклический доступ. Носитель информации
непрерывно вращается, поэтому возможность обращения к одному
и тому же участку памяти является циклической.
Последовательный доступ
Последовательный доступ к данным возможен
при использовании в качестве носителя
магнитной ленты, где последовательный просмотр участков
носителя необходим для нахождения нужных
данных.
Безадресная память
К безадресным
можно отнести стековые и ассоциативные
запоминающие устройства. При обращении
к безадресной памяти в команде обращения
к памяти не задается адрес ячейки. В стековых
устройствах памяти адрес ячейки памяти
отслеживает специальный адресный регистр.
При обращении к стеку устанавливается
адрес из этого регистра. При обращении
к ассоциативной памяти поиск информации
ведется по признаку (тэгу) путем сравнения
тегов всех ячеек памяти с ассоциативным
признаком. Ассоциативный признак записывается
для выполнения операции сравнения в специальный
регистр признака.
Классифицикация памяти по функциональному назначению:
ПЗУ - постоянные запоминающие устройства
или ROM (Read Only- Memory), служат для хранения постоянных
данных и служебных программ.
СОЗУ - сверхоперативное запоминающее
устройство, это набор регистров общего
назначения - РОН, предназначенных для хранения
операндов и результатов выполнения операции в процессоре.
ОЗУ - оперативное запоминающее
устройство или RAM (Random Access Memory - память с произвольной выборкой),
служит для хранения выполняемой программы
и оперативных данных. Если к любому регистру можно
обратиться для записи/чтения по его адресу,
то такая регистровая структура образует СОЗУ с произвольным доступом.
Классификация по способу хранения информации:
Статическая память
В статических запоминающих устройствах БИС выполнены на бистабильных триггерных элементах памяти
(имеющих два стабильных состояния – отсюда и название памяти).
Динамическая память
В динамических запоминающих
устройствах используются более дешевые БИС, в которых
запоминающим элементом является конденсатор.
Конденсатор со временем разряжается
(в этом - динамика), поэтому необходимо
поддерживать значение потенциала, подзаряжая
конденсатор. Этот процесс называют регенерацией.
Постоянная память
В постоянных запоминающих устройствах
запоминающим элементом является пережигаемая
плавкая перемычка или полупроводниковый
диод, играющий роль разрушаемой перемычки.
В перепрограммируемых ПЗУ для записи
и хранения информации применяются ячейки,
выполненные на МОП транзисторах с плавающим и
изолированным затвором, информация записывается
электрически, когда по каналу исток/сток
протекает ток, заряды оседают на затворе
и хранятся как угодно долго. Стирание
информации производится путем подачи
напряжения другого знака на участок исток/сток
в перепрограммируемых ПЗУ с электрическим
стиранием или облучением ультрафиолетовым
излучением в ПЗУ с ультрафиолетовым стиранием.
Голографическая память
В голографических запоминающих
устройствах информация хранится в объеме
голографического кристалла в виде снимка
интерференции двух волн, опорной и информационной.
Этот перспективный вид запоминающих
устройств имеет большую плотность записи информации и в настоящее время находится в стадии разработки.
Биологическая память
В биологических запоминающих
устройствах для записи информации используется
изменение состояния органических молекул,
обладающих свойством хранить заряд и обмениваться электронами.
Память на магнитных носителях
Во внешних запоминающих устройствах
на магнитных носителях информация хранится
в виде намагниченных в определенном направлении
участков ферромагнитной поверхности диска или магнитной ленты.
Оптическая память
В оптических внешних запоминающих устройствах
информация записывается в виде участков,
имеющих разные коэффициенты рассеяния
света направленного луча лазера.
Память является одним из
основных компонентов любого компьютера.
Ее емкость и быстродействие в значительной
степени определяют производительность
всей компьютерной системы. В данном вопросе
были рассмотрены наиболее важные технологии
создания и детали организации памяти.
Языки программирования
Язык программирования - это система обозначений,
служащая для точного описания программ
или алгоритмов для ЭВМ. Языки программирования
являются искусственными языками. От естественных
языков они отличаются ограниченным числом
“слов” и очень строгими правилами записи
команд (операторов). Поэтому при применении
их по назначению они не допускают свободного
толкования выражений, характерного для
естественного языка.
Основные требования,
предъявляемые к языкам программирования:
наглядность - использование в языке по
возможности уже существующих символов,
хорошо известных и понятных как программистам,
так и пользователям ЭВМ;
единство - использование одних и тех
же символов для обозначения одних и тех
же или родственных понятий в разных частях
алгоритма. Количество этих символов должно
быть по возможности минимальным;
гибкость - возможность относительно
удобного, несложного описания распространенных
приемов математических вычислений, с
помощью имеющегося в языке ограниченного
набора изобразительных средств;
модульность - возможность описания сложных
алгоритмов в виде совокупности простых
модулей, которые могут быть составлены
отдельно и использованы в различных сложных
алгоритмах;
однозначность - недвусмысленность записи
любого алгоритма. Отсутствие ее могло
бы привести к неправильным ответам при
решении задач.
В настоящее время в мире существует
несколько сотен реально используемых
языков программирования. Для каждого
есть своя область применения.
По этому критерию
можно выделить следующие уровни языков
программирования:
- машинные;
- машинно-оpиентиpованные
(ассемблеры);
- машинно-независимые
(языки высокого уровня).
Разные типы процессоров имеют
разные наборы команд. Если язык программирования
ориентирован на конкретный тип процессора
и учитывает его особенности, то он называется
языком программирования низкого уровня.
В данном случае “низкий уровень” не
значит “плохой”. Имеется в виду, что
операторы языка близки к машинному коду
и ориентированы на конкретные команды
процессора.
При программировании на машинном
языке программист может держать под своим
контролем каждую команду и каждую ячейку
памяти, использовать все возможности
имеющихся машинных операций. Но процесс
написания программы на машинном языке
очень трудоемкий и утомительный. Программа
получается громоздкой, труднообозримой,
ее трудно отлаживать, изменять и развивать.
Поэтому в случае, когда нужно иметь эффективную
программу, в максимальной степени учитывающую
специфику конкретного компьютера, вместо
машинных языков используют близкие к
ним машинно-ориентированные языки (ассемблеры).
Язык ассемблера
- это машинно-зависимый язык
низкого уровня, в котором короткие мнемонические
имена соответствуют отдельным машинным
командам. Используется для представления
в удобочитаемой форме программ, записанных
в машинном коде.
С помощью языков низкого уровня
создаются очень эффективные и компактные
программы, так как разработчик получает
доступ ко всем возможностям процессора.
Программы, написанные на языке ассемблера,
требуют значительно меньшего объема
памяти и времени выполнения.
Языки высокого уровня - были разработаны для того,
чтобы освободить программиста от учета
технических особенностей конкретных
компьютеров, их архитектуры. Уровень
языка характеризуется степенью его близости
к естественному, человеческому языку.
Важным преимуществом языков высокого уровня является их универсальность,
независимость от ЭВМ. Программа, написанная
на таком языке, может выполняться на разных
машинах. Языки высокого уровня в значительной
мере являются машинно-независимыми.
Языки высокого уровня делятся
на:
- процедурные языки, предназначенные
для однозначного описания алгоритмов;
- логические, ориентированы не на запись
алгоритма решения задачи, а на систематическое
и формализованное описание задачи с тем,
чтобы решение следовало из составленного описания;
- объектно-ориентированные руководящая
идея этого языка заключается в стремлении
связать данные с обрабатывающими эти
данные процедурами в единое целое - объект.
Обзор
современных языков программирования
Алгоритмический
язык (язык программирования) представляет
собой один из способов записи алгоритма.
Язык программирования является строго
формализованным, то есть все команды
записываются по определенным правилам
и отступления от этих правил не допускаются.
Универсальные
Иногда их делят на процедурно-ориентированные
и объектно-ориентированные, но в настоящее
время граница между этими видами стерлась.
Эти языки используются чаще всего для
решения самых разнообразных задач. И
хотя каждый из языков имеет свои особенности,
что делает его наиболее эффективными
для решения определенного вида задач,
но в принципе для решения любой задачи
можно выбирать любой язык программирования.
Паскаль
Паскаль (PASCAL - акроним с французского
- Program Applique a la Selection et la Compilation Automatique de la
Litterature) - Процедурно-ориентированный язык
программирования высокого уровня, разработанный
в конце 1960-х гг. Никлаусом Виртом, первоначально
для обучения программированию в университетах. Назван в честь французского
математика XVII века Блеза Паскаля.