Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Принцип двоичного кодирования




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

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

Согласно фон Нейману, ЭВМ состоит из следующих основных блоков:

· Устройства ввода/вывода информации

· Память компьютера

· Процессор, состоящий из устройства управления (УУ) и арифметико-логического устройства (АЛУ)

Машины, построенные на этих принципах, называются ФОН-НЕЙМАНОВСКИМИ.

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

 

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

 

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

 

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

 

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

 

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

 

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

 

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

 

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

 

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

 

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

Микропроцессор является «мозгом» компьютера. Он осуществляет выполнение программ, работающих на компьютере, и управляет работой остальных устройств компьютера. Скорость его работы во многом определяет быстродействие компьютера. В IBM PC используются МП, разработанные фирмой Intel.

МП отличаются друг от друга двумя характеристиками: типом (моделью) и тактовой частотой. Чем выше тактовая частота, тем выше производительность и цена. Тактовая частота указывает, сколько элементарных операций (тактов) МП выполняет в одну секунду. Тактовая частота измеряется в МГц.

Перечислим некоторые форматы данных, типичные для 16-разрядной ЭВМ.

8-битовые целые числа без знака. Каждое такое число занимает 1 байт и воспринимается процессором как целое положительное число.

8-битовые целые числа со знаком. В этом случае величина числа задается семью битами, а значение старшего бита определяет знак числа (0-положтельное, 1-отрицательное).

16-битовые целые числа со знаком и без знака. Они в точности аналогичны 8-битовым, но код имеет вдвое большую длину.

8-битовые символы. В этом формате двоичный код интерпретируется обрабатывающей его командой как код символа.

Битовые поля. В этом формате значащим является не весь 8- или 16-разрядный код в целом, а каждый из составляющих его битов. Один из примеров битового поля – форма хранения множеств в языке «Паскаль».

Существуют и другие форматы данных – двоично-десятичные числа, строки и т.д.

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

Наиболее важные команды:

1) остановка (выполнение программы прекращается);

2) очистить А (А:=0 (в операнд А засылается 0));

3) увеличить А на 1;

4) уменьшить А на 1;

5) переписать А в В (В:=А);

6) сложить А в В (В:=В+А);

7) вычесть А из В;

8) сравнить А с В;

9) Безусловный переход на К слов;

10) вызов подпрограммы по адресу А;

11) возврат из подпрограммы

Системы прерываний

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

 

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

Одноуровневые прерывания

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

Векторные прерывания

 

Чтобы значительно уменьшить время реакции на внешние события, используются многоуровневые или, что то же самое, векторные прерывания. В векторных прерываниях КАЖДОМУ источнику прерывания соответствует СВОЙ, вполне определенный, адрес процедуры обработки прерывания, который принято называть вектором прерывания.

 

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

Приоритетные прерывания

 

Обычно, значимость тех или иных событий в системе неодинакова. Одни события более важны и требуют немедленной реакции, другие менее важны, и с ответом на них можно подождать. Естественно, что и соответствующие этим событиям прерывания должны иметь разный приоритет. При одновременном возникновении нескольких прерываний, процессор должен перейти к обработке прерывания, имеющего более высокий приоритет. Этот процесс происходит на аппаратном уровне ядра процессора и называется последовательностью опроса прерываний (interrupt polling sequence).

Вложенные прерывания

 

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

Assembler - язык програмирования, с помощью которого можно написать такие программы, которые невозможно, или очень сложно написать на других языках програмирования. Например: генераторы ключей(keygen), системные мониторы, драйвера для оборудования или даже операционные системы. Конечно есть и такие языки програмирования как "C","Pascal","Delphi" и т.д., но они не обеспечивают надёжного контроля за потоками данных, адресами памяти или регистрами процессора, а также: все языки высокого уровня ("C","Pascal","Delphi" и т.д.) были разработаны под определённый вид операционной системы (на Turbo Pascal для DOS невозможно написать даже самую элементарную программу, которая работала бы под MacOS или Linux, также Pascal не предусматривает работу с загрузочными секторами диска или перекомпиляцию самого себя под определённую платформу.), assembler же (не все особи) может стать этим-же ассемблером, но работающим на неизвестной науке платформе, и делающий программы под эту-же платформу. И это ещё не всё!

 

Программы на Ассемблере получаются в десятки раз меньше, а работают в десятки раз быстрее. Примером может послужить операционная система MenuetOS, которая написана на Flat Assembler и умещается на одной дискете (1.44 M), причём в комплект входят прикладные программы, такие как: редактор ассемблерного кода с подсветкой, работа с файловой системой, 3d заставки, некоторое колличество игр, просмоторщик картинок, компилятор Flat Assembler, терминал, CD плейер и многое другое. Преимущество состоит в том, что его можно быстро скачать с интернета (даже при маленькой скорости соединения). Так, что я думаю создатель MenuetOS не промахнулся, когда выбирал язык, для своего детища. Также маленькие программы проще распространять, т.к. диски с ними не надо высылать по почте, а достаточно, поместить на скачивание, и сделать платную регистрацию этой программы. Таким образом, это правильный шаг в смысле Internet маркетинга, и его нельзя упустить.

Microsoft Macro Assembler (MASM, макроассемблер Microsoft) — ассемблер для процессоров семейства x86. Первоначально был произведён компанией Microsoft для написания программ в операционной системы MS-DOS и был в течение некоторого времени самым популярным ассемблером, доступным для неё. Это поддерживало широкое разнообразие макросредств и структурированность программных идиом, включая конструкции высокого уровня для повторов, вызовов процедур и чередований (поэтому MASM — ассемблера высокого уровня). Позднее[когда?] была добавлена возможность написания программ для Windows. MASM — один из немногих инструментов разработки Microsoft, для которых не было отдельных 16- и 32-битных версий.





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


Дата добавления: 2015-04-24; Просмотров: 1174; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.