Программирование на Ассемблере
5-7 Не используются
8-10 I0,I1,I2 Маска прерываний. Задает уровень
прерываний (от 0 до 7, причем значение
7 задает наивысший приоритет).
11,12 Не используются
13 S, Supervisor (режим) Режим процессора (0 - пользовательский
1 - режим супервизора).
14 Не используется
15 T, Trace (трассировка) Установлен, если процессор работает в
режиме трассировки (пошагового
выполнения команд). Регистр статуса можно представить так: бит : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
название : T -- S -- -- I2 I1 I0 -- -- -- X N Z V C В следующих версиях процессоров набор управляющих регистров расширен. Более
подробно об этом мы расскажем в разделе 9 и в приложении. 2.2. Адресация памяти. В стандартной конфигурации модели Amiga 500 и Amiga 1000 содержат 512
килобайт оперативной памяти, а Amiga 2000 - 1 мегабайт (512 килобайт chip-
памяти и столько же fast-памяти). Каким же образом процессор работает с памятью?
При программировании на BASIC\'е Вам не нужно заботиться о распределении
данных в памяти. Можно просто написать MARKER%=1 и интерпретатор сам
разместит это значение в оперативной памяти.
При программировании на ассемблере существует два способа хранения данных:
1) в одном из регистров данных (или адреса);
2) непосредственно в оперативной памяти. Забегая немного вперед, рассмотрим машинную команду MOVE, которая, по всей
видимости, является наиболее часто используемой в программировании на
ассемблере. Команда MOVE служит для пересылки (копирования) данных и имеет
два аргумента: источник (откуда копировать) и приемник (куда копировать).
При использовании MOVE приведенный выше пример из BASIC\'а перепишется так:
MOVE #1,D0
Команда MOVE в такой записи копирует число 1 в регистр D0.
|