Amiga. Вычислительная техника
Меню сайта
Главная
Amiga
Amiga Corporation
Модельный ряд
История развития
Аппаратная платформа
Операционные системы
Эмуляция
AMIGA # 1
Программирование на Ассемблере
Организация процессоров
Методы защиты информации
Компьютерные новеллы
Боятся ли компьютеры адского пламени?
Виртуальная реальность
Корпоративные сети
Телекоммуникационные сети
Архитектура ЭВМ
ЕС ЭВМ
Рождение ЭВМ
Компьютер
Гарвардская архитектура
Современные высокопроизводительные компьютеры
Дорога в будущее
Vista
Инфоpматика
ЭВМ
Операционные системы
Linux
Windows
Освой компьютер
Макинтош
Набор текста
Поколения
Компьютерная грамотность
Устройство компьютера
Железо
Графика
Звук
Ремонт
Сети
Программирование
Информационные технологии
Криптография
Микроэлектроника
Истории
 
 

Программирование на Ассемблере


Если же используется команда BLE, то
ветвление будет корректно работать и для отрицательных чисел.
Команды BEQ и BNE могут применяться не только при сравнениях. Используя их
можно, например, определять состояния некоторого набора битов заданного
слова:

...
AND.B #%00001111,D1 ;проверяет биты по маске

BEQ SMALLER ;ветвление, если ни один из четырех

;младших битов не установлен

CMP.B #%00001111,D1

BEQ ALL

;ветвление, если младшие четыре бита

;установлены
Команда AND выполняет побитовое сравнение операндов по следующей схеме:
если в какой-либо позиции биты обоих операндов установлены, то в
соответствующий бит результата записывается 1, в противном случае - 0.
Результат записывается на место второго операнда (в нашем примере D1),
старое содержимое которого теряется. Таким образом, результат команды AND в
нашем примере будет содержать в младших четырех битах копию соответствующих
битов регистра D1, а в старших битах - нули.
Такая техника называется маскированием (наложением маски). В приведенном
нами примере команда AND выполняет маскирование младших четырех битов
регистра D1. Конечно, Вы можете использовать любые другие битовые
комбинации.
Если все биты результата команды AND нулевые, то устанавливается флаг нуля
(Z-flag) и срабатывает ветвление BEQ. Иначе, по команде CMP производится
сравнение этого результата с числом %00001111, и если имеет место равенство
(а это означает, что младшие 4 бита исходного содержимого D1 были
установлены), то выполняется второе ветвление BEQ.
Другие коды условий тоже могут использоваться для разных целей.
Забегая вперед скажем, что помимо использования с CMP, условия CC и CS
могут служить для определения содержимого бита, \"вытолкнутого\" командами
сдвига (ROL, ROR итд.).
Прежде чем перейти к описанию набора команд процессора MC68000, дадим еще
одну полезную рекомендацию:
С помощью пакета ассемблер + отладчик (например, Devpac или AssemPro) можно
легко исследовать влияние команд на флаги.

 

 

© 2010 Amigo. All Rights Reserved
Создание сайтов ЕкатеринбургШаблоны сайтовПоиск товаров - справочник цен, каталог магазинов, прайс-листыБесплатные шаблоны дизайна компьютерных сайтов
Hosted by uCoz