Пауль Хоровиц - Искусство схемотехники. Том 3 [Изд.4-е]
- Название:Искусство схемотехники. Том 3 [Изд.4-е]
- Автор:
- Жанр:
- Издательство:Мир
- Год:1993
- Город:Москва
- ISBN:5-03-002954-0 (русск.); 5-03-002336-4; 0-521-37095-7 (англ.)
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Пауль Хоровиц - Искусство схемотехники. Том 3 [Изд.4-е] краткое содержание
Широко известная читателю по предыдущим изданиям монография известных американских специалистов посвящена быстро развивающимся областям электроники. В ней приведены наиболее интересные технические решения, а также анализируются ошибки разработчиков аппаратуры: внимание читателя сосредотачивается на тонких аспектах проектирования и применения электронных схем.
На русском языке издается в трех томах. Том 3 содержит сведения о микропроцессорах, радиотехнических схемах, методах измерения и обработки сигналов, принципах конструирования аппаратуры и проектирования маломощных устройств, а также обширные приложения.
Для специалистов в области электроники, автоматики, вычислительной техники, а также студентов соответствующих специальностей вузов и техникумов.
Искусство схемотехники. Том 3 [Изд.4-е] - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Адресные регистры используются как указатели памяти или пространства ввода-вывода в 5 из 12 возможных для МП 68000 способов адресации; в адресных регистрах допустимо выполнение лишь нескольких арифметических операций (сложение, вычитание, сравнение, пересылка). Сегменты, как и сегментные регистры, отсутствуют; в микропроцессорах семейства 68000 всегда возможен доступ ко всему адресному пространству (1 или 4 Мбайт для МП 68008 в DIP — или четырехстороннем корпусе, 16 Мбайт для 68000, 4 Гбайт для 68020/30).
В микропроцессоре также имеются: указатель стека (фактически их два, но в каждый данный момент активен только один), программный счетчик PC (именуемый в МП 8086/8 «указатель команд») и регистр состояния SP. Последний содержит флаги (нуля, переноса, переполнения и др.), а также маску прерываний и биты режима.
Память и ввод-вывод.В отличие от МП 8086/8 в процессорах 68000 не предусмотрены отдельные сигналы магистрали ввода-вывода и в их системе команд отсутствуют команды ввода-вывода типа IN и OUT. Ввод-вывод осуществляется так же, как и обращение к памяти, с использованием адресов полной длины и стробирующих сигналов. Для подключения порта ввода-вывода вам следует декодировать адресные линии и сделать так, чтобы регистры ваших портов выглядели, как несуществующая память. Такой метод называется отображением ввода-вывода на пространство памяти ; он используется во многих микропроцессорах. (Впрочем, даже в случае самостоятельного протокола ввода-вывода МП 8086 всегда можно отобразить ввод-вывод на пространство памяти с помощью стробирующих сигналов MEMR ' и MEMW ' .)
Преимущество отображения ввода-вывода на пространство памяти заключается в том, что для операций над регистрами портов можно использовать все команды, предназначенные для работы с памятью. Специальные команды IN/OUT МП 8086/8 заменяет команда MOVE; кроме этого, непосредственно над содержимым портов можно выполнять операции арифметические (сложения, вычитания, циклического сдвига, сравнения, проверки), логические (И, ИЛИ), а также над битами (установка бит, проверка бит). Единственный недостаток отображения ввода-вывода на пространство памяти заключается в необходимости декодировать много адресных линий; практически здесь не возникает трудностей, поскольку при большом адресном пространстве и малом числе портов ввода-вывода нет необходимости декодировать полный адрес (примеры см. ниже).
В табл. 11.1 приведен полный набор команд МП 68000. Чтобы образовать правильный оператор (команду) языка ассемблера, следует указать операнды (с помощью одного из 12 режимов адресации) и тип данных (байтов, слово или длинное слово). На языке ассемблера фирмы Motorola оператор выглядит следующим образом:
ОПЕРАЦИЯ. размер источник, приемник
Здесь ОПЕРАЦИЯ берется из табл. 11.1, размер есть В, W или L (байт, слово или длинное слово соответственно), а источник и приемник могут представлять регистры, непосредственные константы или ячейки памяти. Ниже приведено несколько примеров с указанием способов адресации.
Таблица 11.1. Набор команд МП 68000/8
Операция · Описание
Арифметические
ABCDСложение упакованных двоично-десятичных чисел
ADDСложение
ASLАрифметический сдвиг влево
ASRАрифметический сдвиг вправо
CLRОчистка операнда
DIVSДеление (знаковое)
DIVUДеление (беззнаковое)
EXTРасширение знака
LSLЛогический сдвиг влево
LSRЛогический сдвиг вправо
MOVEПересылка
MULSУмножение (знаковое)
MULUУмножение (беззнаковое)
NBCDОтрицание упакованного двоично-десятичного числа
NEGОтрицание
SBCDВычитание упакованного двоично-десятичного числа
SUB Вычитание
Логические
ANDЛогическое И
BCHGПроверка и изменение бита
BCLRПроверка и очистка бита
BSETПроверка и установка бита
BTSTПроверка бита
CHKПроверка регистра на границы
CMPСравнение
EORИсключающее ИЛИ
EXGОбмен регистров
NOTПобитовое дополнение
ORЛогическое ИЛИ
RESETВозбуждение линии RESET
ROL Циклический сдвиг влево без расширения
RORЦиклический сдвиг вправо без расширения
ROXLЦиклический сдвиг влево с расширением
ROXRЦиклический сдвиг вправо с расширением
Scc 1)Установить байт по условию
SWAPОбмен половин регистра
TASПроверка и установка операнда
TSTПроверка операнда и установка флагов
Управления
Всс 1)Условный переход
BRAБезусловный переход (относительный)
BSRПереход на подпрограмму (относительный)
DBcc 1)Проверка, декремент и переход
JMPБезусловный переход (7 режимов)
JSRПереход на подпрограмму (7 режимов)
LEAЗагрузка эффективного адреса
LINKПодсоединение стека
NOPХолостая команда
PEAЗагрузка в стек эффективного адреса
RTEВозврат из исключения
RTRВозврат, восстановление кодов условий
RTSВозврат из подпрограммы
STOPОстанов
TRAPЛовушка (векторизованное исключение)
TRAPVЛовушка по переполнению
UNLK Отсоединение стека
Коды условий ("сс")
ССПеренос сброшен
CSПеренос установлен
EQРавенство нулю
FНикогда не истина 2)
GEБольше или равно нулю
GTБольше нуля
HIВыше
LEМеньше или равно нулю
LSНиже или равно
LTМеньше нуля
MIМинус
NEНе равно нулю
PLПлюс
TВсегда истина 2)
VCПереполнение сброшено
VSПереполнение установлено
____
1) См. «Коды условий».
2) Не используется в командах Вcс; вместо « ВТ» используйте BRA.
MOVE.W (непосредственная,
# $FFFF,D0 регистровая)
MOVE.B (А0), (А1) (косвенная, косвенная)
ADD.L D5, (А2) + (прямая, косвенная с постинкрементом)
BTST.B #2$C0000 (непосредственная, абсолютная длинная)
В первом примере устанавливаются в 1 все 16 бит регистра D0 (символ «$» обозначает «шестнадцатиричное», а «#» указывает на «непосредственную» константу); вторая команда копирует байт из ячейки памяти, адрес которой находится в А0, в ячейку памяти, адрес которой находится в А1; третья прибавляет 32-разрядное знаковое целое к 4-байтовому («длинному») целому, которое начинается в памяти с байта, адресуемого через А2, после чего содержимое А2 увеличивается на 4; последняя команда проверяет бит 2 в ячейке памяти С0000Н, устанавливая соответствующим образом флаг нуля Z (для последующей команды условного перехода). Заметьте, что операнды cледуют в порядке — источник, приемник, что противоположно нотации МП 8086.
Читать дальшеИнтервал:
Закладка: