|
Nicron
#03
17 октября 1996 |
|
Курс обучения ассемблеру - извинения за задержку с выходом второго занятия по нашему учебному курсу.

╔═════════════════════════════════════════════════════════════╗
║ ▒▒░░░░░░░░░░░░░░▒▒ Курс обучения ассемблеру ▒▒░░░░░░░░░░░▒▒ ║
╚═════════════════════════════════════════════════════════════╝
(C) WLODEK BLACK
Здравствуйте, друзья! Первым делом я хочу принести извинения за
задержку с выходом второго занятия по нашему учебному курсу. Ес-
ли программисту вечно не хватает одного байта для размещения
всей программы, то мне не хватило одной (ну, может, двух) мину-
ты для приведения в порядок исходного текста второго урока. Де-
ло в том, что эти тексты писались в свое время под платформу
MSX, которую роднит со Спектрумом главным образом использование
того же процессора. А вот формат текста далек от ZX-Word-овско-
го и представляет из себя 80 символов в строке в кодировке "ЮАБ
ЦДЕФГХ...". И вот на перекодировку и перекомпоновку-то времени
и не хватило! Кстати, и примерчики-то в нем сплошь MSX-овские...
Чтобы не уродовать текст нелепыми исправлениями, я, пожалуй, ос-
тавлю все, как есть, а ссылки на Спектрум выполню в виде допол-
нительных комментариев. :-)
002h. МИКРОПРОЦЕССОР Z80A.
Для программиста процессор - прежде всего набор регистров, в
которые можно помещать данные и производить над ними преобразо-
вания. Вот полный перечень регистров процессора Z80A:
PC - 16-разрядный счетчик команд (program counter). Содержит те-
кущий адрес в памяти, откуда производится выборка кодов ко-
манд. Естественный ход выполнения программы - от младших
адресов к старшим.
A - 8-разрядный регистр-аккумулятор. Является основным при про-
ведении арифметических и логических операций над 8-разряд-
ными данными.
F - регистр флагов (признаков). Отдельные биты этого регистра
несут информацию о результатах арифметических, логических
и некоторых других операций (например, сдвигов) (признаки
нуля, переноса, отрицательного числа и др.). В некоторых
случаях регистры A и F могут рассматриваться как 16-разряд-
ная пара AF.
Группа регистров общего назначения: H,L,D,E,B,C:
Название "регистры общего назначения"означает, что эти регистры
можно использовать просто для хранения данных. Для работы с 16-
разрядными данными они могут объединяться в пары HL, DE, BC.
Как 16-разрядные пары эти регистры имеют более широкое назначе-
ние:
HL - обеспечивает наиболее мощную косвенную адресацию памяти;
используется в качестве 16-разрядного аккумулятора в опера-
циях над 16-разрядными данными. Мнемоника образована от
слов High (верхний) и Low (нижний);
DE - может использоваться для косвенной адресации аккумулятора;
BC - используется для косвенной адресации 64-килобайтного про-
странства устройств ввода-вывода; также может косвенно
адресовать аккумулятор.
Примечания: 1. Особенности регистровых пар упомянуты лишь в са-
мом общем виде;
2. Подробно их использование будет рассмотрено впоследствии, по-
этому пока можно не обращать внимания на непонятные термины.
Группа индексных регистров:
IX и IY - 16-разрядные индексные регистры. Их применение особен-
но удобно при обработке таблиц, списков и т.п.структур, так как
они обеспечивают легкий доступ к данным по принципу: известны
адрес начала массива и номер элемента массива, а получить требу-
ется значение элемента массива.
Другие регистры:
SP - 16-разрядный указатель стека (stack pointer). Стек - это
выделенный в любом месте ОЗУ участок памяти,организованный
по принципу стопки листов бумаги: он заполняется последова-
тельно, как кладутся один на другой листки бумаги. Послед-
ний положенный лист снимается первым.Стек используется для
временного хранения адресов возврата из подпрограмм(аналог
Бейсиковой структуры GOSUB - RETURN) и 16-разрядных значе-
ний любых регистровых пар. SP указывает на последнюю заня-
тую ячейку, как бы готовясь ее немедленно прочитать. Стек
"растет" вниз (от старших адресов к младшим).
I - регистр вектора прерываний; подробная беседа пойдет далее;
R - регистр регенерации ОЗУ. Это вспомогательный регистр, на-
значение которого обусловливается аппаратными особенностя-
ми компьютера. Дело в том, что так называемое"динамическое
ОЗУ" требует периодического к нему обращения, иначе оно
"забывает" хранимую в нем информацию. Но при выполнении ре-
альной программы ко многим ячейкам памяти процессор не
обращается вообще или обращается очень редко. С помощью ре-
гистра R процессор непрерывно, последовательно и незаметно
для исполняемой программы перебирает адреса памяти, обеспе-
чивая поддержание хранения информации. Если бы регистра R
не существовало, пришлось бы усложнять электрическую схему
компьютера, вводя в нее отдельное устройство для регенера-
ции памяти. Регистр R доступен программно; так как он рабо-
тает независимо, его можно использовать для получения слу-
чайных чисел.
Дополнительный набор регистров: A',F',H',L',D',E',B',C':
Эти регистры полностью аналогичны их основным "двойникам", но
доступ возможен только к одному из наборов. С помощью предназна-
ченных для этого команд можно переключиться на другой набор, и
все команды обращения к этим регистрам станут действовать на
вновь подключенный набор. Предыдущий набор станет неактивным,
но данные в его регистрах сохраняются. Оба набора совершенно ра-
вноправны. Программно невозможно установить, какой из них физи-
чески активен. Существующие команды переключения воздействуют
раздельно на AF и на HL,DE,BC.
Кроме команды EX AF,AF',символ "'" не используется в мнемониках
команд. Для других регистров он применяется только в описаниях,
с целью подчеркнуть, что речь идет об альтернативном регистре.
[ Конец текста 2 ].
WLODEK BLACK
Другие статьи номера:
Вступление - Вступление от редакции. |
BBS info - Список работающих B.B.S. с 21 по 27 октября |
Армейские приколы - А вдpуг война или какое дpугое меpопpиятие? |
Только для женщин - Вам нужны удобные тампоны ? |
Картинки - красивая ANSII Графика. |
UFO II - позиции для увеличения техников. |
Курс обучения ассемблеру - извинения за задержку с выходом второго занятия по нашему учебному курсу. |
Реклама - Продается ПК АТМ-ТURBO2+. |
Похожие статьи:
В этот день... 18 ноября