русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Управление вводом-выводом.


Дата добавления: 2014-11-27; просмотров: 695; Нарушение авторских прав


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

· шину данных, состоящую из линий данных и служащую для передачи информации между процессором и памятью, процессором и устройствами ввода-вывода, памятью и внешними устройствами;

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

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

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

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



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

0…FFFFh – адресное пространство ввода-вывода. Обмен информацией с портами осуществляется с помощью in и out: in Al,60h // mov al, 20h out 20h, al. Если номер порта >1 байта, то значение пишется в DX.

20h-21h – контроль прерываний; 40h-43h – системный таймер, 60h – клавиатура, 61h – спикер

 

12. Особенности программ в СОМ-формате. Структура, хранение на диске, загрузка в память, варианты завершения.

Особенности:

- минимальная модель памяти

- размер < 64 кб (сегмент)

- абсолютный образ памяти

- не содержит заголовков и настроечной информации,

только машинный код

- не контролируется содержимое

Загружается в память с помощью системного загрузчика

XEC. Данная функция строит в памяти т.н. префикс

егмента программы (PSP) – настраивает адреса и передает управление на точку входа в программу

(первая исполняемая инструкция). PSP – специальная структура, в кот. по фиксированным адресам

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

нулевое слово, кот. используется ля завершения программы. Max размер=64кб-256(psp)-2б(стек)

Общая структура:

<имя сегмента кодов>SEGMENT<параметры>

ASSUME СS:<имя сегм. кодов> DS: :<имя сегм. Дан.>SS:<имя сегмента стека> ES: nothing

ORG 100h (явно задает смещение, резервирование под префикс первой инструкции)

<Имя процедуры> PROC NEAR

;код программы

;завершение процедуры

<имя процедуры> ENDP

; определение данных

<Имя сегмента кодов> ENDS

END <имя программы>

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

mp main

Варианты завершения:

- инструкция RET

- INT 20h в конце процедуры

- ф-ция 4ch прерывания INT 21h позволяет передать в вызываемую процедуру код завершения

 



<== предыдущая лекция | следующая лекция ==>
Логическая структура контроллера прерываний. | Особенности программ в ЕХЕ-формате. Структура, хранение на диске, загрузка в память,


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

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