Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпоры Микропроцессоры.docx
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
63.02 Кб
Скачать

18 Команды обмена данными с сопроцессором (ldc,stc)

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

Пример:

LDC p1,c2,table ; Загрузить регистр с2 сопроцессора #1 из ячейки

; памяти по адресу "table",

; используя адрес, относительно содержимого PC.

STCEQL p2,c3,[R5,#24]! ; Условно записать содержимое c3 сопроцессора #2

; в ячейку памяти по адресу R5+24.

; После чего записать в R5 значение R5+24

; и применить длинную передачу

; (возможно, блочную запись данных).

19 Ввод - вывод в порт

Ввод-вывод через порты (англ. I/O ports) — схемотехническое решение, организующее взаимодействие процессора и устройств ввода-вывода. Противоположность вводу-выводу через память.

Во многих моделях процессоров ввод-вывод организуется теми же функциями, что и чтение-запись в память — так называемый «ввод-вывод через память». Соответственно, схемотехнически устройства ввода-вывода располагаются на шине памяти, и часть адресов памяти направляются на ввод-вывод. В процессорах Intel, микроконтроллерах AVR и некоторых других существуют отдельные команды для ввода-вывода — IN и OUT — и, соответственно, отдельное адресное пространство: в процессорах Intel — от 000016 до FFFF16.

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

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

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

21 Безусловные переход

Безусловный переход — это переход, который выполняется всегда. Безусловный переход осуществляется с помощью команды JMP. У этой команды один операнд, который может быть непосредственным адресом (меткой), регистром или ячейкой памяти, содержащей адрес. Существует два вида команд безусловной передачи управления - команды переходов и вызовов.

jmp метка – безусловный переход на метку. Например: jmp @exit; Используется очень часто. По сути выполняет то же самое действие, что и goto в Паскале

jmp metka ;Переход на метку

jmp bx ;Переход по адресу в BX

jmp word[bx] ;Переход по адресу, содержащемуся в памяти по адресу в BX