Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 30% recurring commission
  • Выплаты в USDT
  • Вывод каждую неделю
  • Комиссия до 5 лет за каждого referral

СОЗУ – сверх оперативное запоминающее устройство.

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

Регистр – счетчик команд (РС или IP).

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

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

Регистр флагов характеризует результат операций, произведенных в АЛУ, а словосостояние характеризует текущий исполняемый процесс.

Регистр указатель стека.

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

НЕ нашли? Не то? Что вы ищете?

1) LIFO (Last In First Out) – в SP хранится адрес (верхушка) стека (чтение стека идет сверху и поочередно). При чтении стека идет его опустошение.

2) FIFO (First In First Out) – организована работа по принципу очереди.

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

Стек – область памяти, которую указывает программист.

Виды адресации. 20

SPHL – команда неявной адресации.

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

(А)←(А) + #data (неявная и непосредственная адресация).

При прямой адресации операнды извлекаются из памяти по адресу, который хранится в команде. Пример : STA < DA DDR>.

Если адрес указан в виде символа в дальнейшем распознаваемого компилятором, то такая адресация является символической прямой адресацией.

Если задается в виде явного адреса, то такая адресация называется абсолютной.

Пример : STA 0B00 – содержимое аккумулятора поместить в 0В00.

код операции адрес

(двоичный код)

3А(шестнадцатеричный код ) 0В00 (строка в памяти)

3А 000В – запись команды на машинном языке.

2) IN KBRD – загрузка с пятого порта (непосредственная адресация)

IN 05

1

D B

Прямая регистровая адресация.

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

Пример: MOV RBD, RBS (RBD)←(RBS)

01 ddd sss

Если нужно перенести (скопировать) из регистра С в В (В←С) , то

(В) – 000

(С) – 001

01  000  001

команда адрес В адрес С

пересылки

****

MOV RBD, data 8 – в регистр приемник поместить восьмиразрядные данные.

00 ddd 110 data 8 – прямая регистровая адресация.

MOV C, 03h – число 03 переносится в регистр С.

00 001 110 03h

Косвенная адресация.

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

Пример (косвенная неявная регистровая адресация):

MOV M, RBS – переслать данные из байтового регистра источника.

((HL)) ← (RBS)

A – 111

B – 000

C – 001

D – 010

E – 011

H – 100

L – 101

0111 0sss

(0B00) ←(D)

(H) ←0B

(L) ← 00

(HL) ← 0B00

0←72h

7 2


Индексная адресация

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

Базовая адресация.(БА)

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

Относительная адресация.

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

Используется при выполнении условных переходов вызовов подпрограмм и возвращения подпрограмм.

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

Стековая адресация.

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

Говорят, что стек работает на автоувеличение, если содержимое указателя стека после записи в стек увеличивается, и на автоуменьшение, при уменьшении.

Граничная адресация.

Была введена с целью уменьшить длину команд и следовательно увеличить быстродействие процессора. При этом в формате команды хранится 2 параметра: 1)номер страницы, к которой идет обращение и 2)адрес внутри страницы, т. е. смещение относительно адреса начала страницы. Память при этом можно рассматривать в виде набора страниц, при этом у каждой страницы имеется свой начальный адрес.

Сегментная адресация.

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

Параграф. Под параграфом понимают минимально возможное смещение между 2-мя соседними сегментами (16 адресов).

Виртуальная адресация.

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

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

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

Область использования: отображение, память, свопинг, кеширование памяти, использование теневой памяти.

Кеширование заключается в перемещении наиболее часто используемых данных из более медленной памяти в более быструю, т. е. наиболее востребованные данные оказываются в наиболее быстродействующей области памяти. Существует несколько уровней кеширования. Самый нижний уровень – внешний кеш (дисковый). Реализуется также как и слот. Следующий – кеш 2-го уровня (L2), следующий – кеш 1-го уровня (L1).

Дисковый кеш реализуется во внешней памяти (магнитный носитель), L2 реализуется в динамической памяти системы, L1 реализуется в статической памяти системы. Наиболее быстродействующая – статическая память.

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

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

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

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

MS DOS позволяет организовывать 1 Мбайт адресов.

Подключение клавиатуры и индикации к микропроц. системе (мпс)

клавиатура – одно из основных средств ввода.

устройство вывода получ. сигналы с блока центрального процессора.

основные задачи:

определение факта положения некоторой клавиши;

идентификация клавиши (определение номера клавиши);

передача управления на соответствующую подпрограмму (обработка нажатия клавиши).

первые две задачи записываются как программно-аппаратными так и аппаратными средствами. 3-я – программами.

кроме того решаются дополнительные задачи:

устранение дребезга контактов;

определение количества одновременно нажатых клавиш и их идентификация;

выявление истинно нажатой клавиши при случайном нажатии нескольких клавиш.

основной метод организации клавиатуры – матрица m ´ n, n – кол-во строк, m – кол-во столбцов. Сопряжение клавиатуры с микроЭВМ осуществляется с помощью устройств ввода–вывода (портов), либо с помощью специализированных контроллеров клавиатуры.

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

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

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

Алгоритм опроса клавиатуры

Вывод данных на индикацию

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

Организация подсистемы прерывания МПС с использованием специального контроллера

Существует 2 основных метода инициализации обмена между микропроцессором и внешними устройствами: 1) метод последовательного опроса внешних устройств микропроцессором (полинг); 2) метод обмена по сигналам прерывания.

При организации обмена по прерыванию используется как средство обработки прерываний встроенный в МП, так и специализированные устройства (контроллеры прерывания). Как правило МП имеют небольшое количество входов прерывания (1, 2 входа). Поэтому при необходимости обработки прерываний от большого кол-ва источников используются контроллеры прерываний.

Их основные функции: 1) фиксация внешнего прерывания; 2) выявление его предмета; 3) формирование запросов для МП; 4) принятие подтверждения от МП о готовности обслуживания прерывания; 5) передача МП адреса подпрограммы обслуживания данного прерывания (сама подпрограмма находится в опер. памяти, либо указывается на данный адрес); 6) отслеживание очередности прерываний для выполнения след. прерывания.

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

Контроллер может находиться в одном из трех состояний:

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

2) Холостое состояние. В этом состоянии контроллер может находиться неограниченно долго, пока не поступит внешнее прерывание.

3) Состояние обслуживания прерывания. В этом состоянии контроллер переходит после прихода на один из входов IRQ запроса на прерывание, от внешнего устройства – сигнал высокого уровня (с 0 на 1).

У контроллера Х59 переход к прерыванию происходит по уровню. У контроллеров других архитектур происходит переход по уровню и по фронту, в зависимости от настройки.

После прихода прерывания контроллер во внутреннем регистре: 1) выявляет необходимость обработки этого прерывания IMR (замаскирован под или нет); 2) фиксирует прерывание IRR; 3) выявляет приоритет запроса ISR.

Если поступил запрос в то время, как обслуж. другой запрос, то пришедший запрос либо ставиться в очередь до совершения обслуживания текущего прерывания. Если его приоритет ниже чем приоритет текущего, либо передается МП для прерывания текущего запроса, если его приоритет выше.

Передача процессору прерывания происходит след. образом: на выходе INT формируется запрос на прерывание контроллером (сигнал высокого уровня), и поступает на выход INT процессора. Если МП разрешены прерывания, то процессор переходит к контекстному переключению. Второе заключается в следующем: 1) фиксируется наличие внешнего прерывания; 2) производится аппаратно – программная процедура сохранения текущего процесса (если процесс можно прервать). При этом в специальной области памяти – стеке сохраняются основные параметры прерывания процесса и сохраняется адрес возврата к прерванному процессу. После этого формируется сигнал INTA для контроллера. В ответ на сигнал INTA контроллер по ШД передает вектор подпрограммы обработки данного прерывания, т. е. передает адрес подпрограммы, находящийся в памяти системы. Вектор контроллером вычисляется на основе информации, записанной в контроллер с помощью ICW. Вычисленный адрес подпрограммы обслуживания данного прерывания поступает в счетчик команд МП и начинается обработка прерываний.

Организация обмена по // каналу связи.

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

Типовая структура адаптера. КР580ВВ55

Структура включает в себя 3 самостоятельных 8 разрядных программируемых порта ввода/вывода, каждый из которых может быть раздельно настроен либо на ввод/вывод, при этом порт С может рассматриваться как 2 четырехразрядных порта, также раздельно настраиваемых либо на ввод либо на вывод. Настройка осущ-ся загрузкой управляющего слова по шине данных по адресу присвоенному данному адаптеру в системе. Адрес определяется на магистрали адреса (2 младших разряда А0,А1) и сигналом CS(chip select)

CS формируется дешифратором (селектором) адреса из старших разрядов полного адреса микросхемы. При записи управляющего слова блоком центрального процессора формируется сигнал WRITE (либо I/OW,MEMW). С помощью управляющего слова порты настраиваются на 1 и трех управляющих режимов:0, 1, 2.

0- основной режим ввода/вывода - однонаправленный синхронный обмен. В этом режиме адаптер как 3 самостоятельных 8 разрядных порта вывода-ввода. Либо как 2 восьмиразр. и 2 четырехразр.

Режим обмена однонаправленный - либо ввод либо вывод. Если необходимо изменит направленность порта, то требуется загрузить управляющее слово. В режиме 0 дин. сигналов управления не требуется.

1- режим однонаправленного асинхронного обмена по прерыванию (стробируемый ввод/вывод) для передачи данных используется порт А и порт Б. Порт С для формирования сигналов управления асинхронным обменом. Режим однонаправленный т. е. порты работают либо на ввод либо на вывод. Разряды порта С для следующего набора управляющих сигналов.

РС

ввод в порт

вывод в порт

0

INTR B

INTR B

1

IBF B

OBF B

2

STB B

ACK B

3

INTR A

INTR A

4

STB A

5

IBF A

6

ACK A

7

OBF A

при выводе из порта сигнал INTR передается в подсистему прерывания МПС после завершения процесса считывания данных из порта в приемник.

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

OBF – выходной буфер заполнен, формируется портом источника, фактически является сигналом записи в порт-приемник, формируется в ответ на исчезновение сигнала IBF.

STB - запись в порт приемника

ACK – подтверждение, принимается источником интерпретируется как подтверждение приема данных приемником.

Задача: передать данные из системы 1 в систему 2. Интерфейс связи параллельный канал. Характер связи однонаправленный. Вид обмена асинхронный. Размерность канала 8. Интерфейс обеспечивается программируемыми параллельными адаптерами ППА: в системе 1 – функции передатчика, в системе 2 – функция приемника. Обмен происходит следующим образом: НПА настраивает порт 1 на передачу загрузки управляющих слотов. Загрузка осуществляется по шине данных (внутренней) с помощью команд записи в порт (OUT). При этом порт настраивается на режим «1» (однонаправленный асинхронный обмен) в подрежим вывод. Далее порт переходит в состояние ожидания загрузки данных из МП.

МП2 настраивает порт также, как режим «1», но в поддержании ввода в порт. Процесс настройки аналогичен, как в системе 1. После этого порт-приемник переходит в ожидание данных из внешнего канала данных.

Для обращения к портам, МП-ры формируют сигнал адреса, формируется на магистрали адреса. Сигнала формируются селектором адреса. Операции записи/ чтения стробируются сигналами сигналами и .

Обмен протекает следующим образом: МП1 по ШД записывает в порт-передатчик (1) - байт данных, запись производится с помощью команды записи (I/OW) при этом формируется сигнал (см. к системе 1). По сигналу байт данных записывается во внутреннем регистре порта и поступает на выводы порта, т. е. он появляется на входах приемника (порта). Во внутренний регистр порта-приемника данные еще не поступили.

На выводе передатчика формируется сигнал низкого уровня, что означает, что выходной буфер заполнен, этот сигнал поступает на вход -приемника (см к схеме 2).

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

Этот сигнал поступает на вход АСК передатчика (см к сх1) и запрещает возможность формирования сигнала «запрос на прерывание» для МП1 (INTR к МП1). В порту приемника по этому запросу МП1 записывает в передатчик следующий байт данных. Тем самым исключается возможность потери данных в приемнике из-за следующий записи, до того как МП2 считает данные преемника.

На выводе INTR приемника формируется запрос на прерывание на МП2 (см сх2). МП2 начиная (в процессе) обслуживание этого запроса на прерывание, МП2 – команда чтения порта (например IN) считывает данные из регистра приемника. Данные считываются по ШД. При этом формируется сигнал (см сх2). По этому сигналу считывается сигнал и сигнал запроса на прерывание, чтобы не было повторного обслуживания. На этом прием закончен, т. е байт данных в МП поступил. - сигнал с выхода поступает на вход АСК – передатчика, по этому сигналу формируется запрос на прерывание для МП1 (см сх1). По запросу на прерывание МП может повторить цикл записи (передачи) сигнала (если это нужно).

Режим 2 – двунаправленный асинхронный обмен по прерыванию. В этом режиме используется только порт А, порт B в этом режиме работать не может. Обмен происходит практически также как в режиме 1. Его канал связи двунаправленный и используется весь набор управляющих сигналов, как системы 1, так и системы 2.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3