• Games
  • TMNT
  • Игры
  • Игры
Главная
Всё для геймера: Обзоры игр, Игровые новости, Читы, Советы и пр.
Всё о компьютерных и консольных играх.
Приветствую Вас Гость
Меню геймера
Разделы каталога
Общие игровые статьи [160]
Игровая аналитика, обзоры серий игр с разных платформ, анализ игр, игровой индустрии и т.д.
Онлайн игры [231]
Статьи и обзоры онлайновых клиентских и браузерных игр
Флэш игры/Flash [11]
2D/3D игры любого жанра на технологии Adobe Flash для игры в плеере или в браузере.
Браузерные онлайн-игры [72]
Браузере игры разных жанров и типов, индивидуальные, а также для социальных сетей и пр.
Разработка игр [102]
Создание игр, программирование, игровые движки, Языки программирования
Моддинг [8]
Модификация игр, перевод, локализация, русификация, ромхакинг
Эмуляция [7]
Эмуляторы и эмуляция компьютеров, консолей, игровых автоматов и прочих систем
Игровые фанфики [2]
Художественная игровая литература, творчество поклонников игр, игровых систем и платформ.
Настольные игры и игрушки [32]
Настольные игры, карточные игры, игрушки и сувениры
Опрос геймеров
Сколько часов в сутки вы играете в игры?
Всего ответов: 17050
Главная » Статьи » Игровые статьи » Разработка игр

Система команд микропроцессора Z80, используемого в игровых приставках SEGA
1.3. Система команд микропроцессора Z80, используемого в игровых приставках SEGA































































































Мнемоника Операнды Описание Изменяемые флаги
LD r1,r2r1 - А, В, C, D, E, H, L
r2-A,B,C,D, E, H,L,(HL), (|X+i8), (|Y+i8)
Загрузка байта из регистра r1 8 r2
LD r1,d8r1 -A,B,C,D, E, H, L, (HL), (|X+i8), (|Y+iB)Загрузка байта d8 в r1
LD HL,ss-A,B,C,D, E, H,LЗапись s в ячейку, адресуемую порой HL
LD A,ss-(BC),(DE),(a16)Загрузка байта из s в аккумулятор
LD d,Ad-(BC),(DE),(a16)Запись байта из аккумулятора в d
LD A,I
Загрузка байта из регистра 1 в аккумуляторZ, P/V, S, N, Н
LD A,R
Загрузка байта из регистра R в аккумуляторZ, P/V, S, N, Н
LD I,A
Запись байта из аккумулятора в регистр IZ, P/V, S, N, Н
LD R,A
Запись байта из аккумулятора в регистр RZ, P/V, S, N, Н
LD r16,d16r16-BC,DE,HL,SP,IX,IYЗагрузить в регистровую пару r1 6 16-разрядное число d 16
LD r16,(a16)r16-BC,DE,HL,SP,IX,IYЗагрузка в регистровую пару r1 6 16-разрядного числа, расположенного в памяти по адресу a16
LD (a16),r16r16-BC,DE, HL, SP, IX, IYЗапись 16-разряднога числа из регистровой пары r16 в память по адресу а 16
LD SP,r16r16-HL,IX,IYКопирование содержимого регистра r16 в указатель стека
PUSH r16r16-BC,DE,HL,AF,IX,IYСохранение регистра r16 в стеке. Указатель стека уменьшается на 2
POP r16r16-BC,DE, HL, AF, IX, IYИзвлечение верхнего элемента стека в регистр r16. Указатель стека увеличивается на 2
EX DX,HL
Обмен содержимого регистровых пар HL и DE
EX SP,r16r16-HL,IX,IYОбмен содержимого регистра r16 и вершины стека. Указатель стека остается прежним
EX AF,AF
Переключение регистров А и F на альтернативный наборВсе
EXX
Переключение активного набора регистров (ВС, DE, HL)
LDI
Копирование байто из ячейки, адресуемой регистровой парой HL, в ячейку, адресуемую регистровой парой DE, увеличение HL и DE на 1 и уменьшение ВС на 1P/V, N, Н
LDR
Выполнение команды LDI, пако ВС не станет равно 0P/V, N, Н
LDD
Копирование байта из ячейки, адресуемой регистровой парой HL, в ячейку, адресуемую регистровой парой DE, уменьшение HL, DE и ВС на 1P/V, N, Н
LDDR
Выполнение команды LDD, пока ВС не станет равно 0P/V, N, Н
CPI
Сравнение содержимого ячейки, адресуемой регистровой порой HL, с аккумулятором, увеличение HL на 1 и уменьшение ВС на 1Z, P/V, S, N, H
CPIR
Повторение команды CPI, пока не будет найден байт, равный записанному в аккумуляторе, или ВС не станет равным 0Z, P/V, S, N, H
CPD
Сравнение содержимого ячейки, адресуемой регистровой парой HL, с аккумулятором и уменьшение HL и ВС на 1Z, P/V, S, N, H
CPDR
Повторение команды CPD, пока не будет найден байт, равный записанному в аккумуляторе, или ВС не станет равным 0Z, P/V, S, N, H
ADD A,ss-A,B, C,D,E,H,L,(HL), d8, (IX+i8),(IY+i8)Сложение A = A + sВсе
ADC A,ss-A,B,C,D, E, Н,L,(НL), d8, (IX+i8), (IY+i8)Сложение с учетом переноса A-A + s + CYВсе
SUB ss-A,B,C,D,E,H,L,(HL), d8, (IX+i8), (IY+i8)Вычитание А = A-sВсе
SBC A,ss-A,B,C,D,E, H, L, (HL), d8, (IX+i8), (IY+i8)Вычитание с учетом заема A = A-s-CYВсе
AND ss-A,B,C,D,E,H,L,(HL), d8, (IX+i8), (IY+ i8)Логическое И A = A&sВсе
OR ss-A,B,C,D,E,H,L,(HL), d8,(IX+i8),(IY+i8)Логическое ИЛИ А = А | sВсе
XOR ss-A,B,C,D,E, H, L, (HL), d8, (IX+i8), (IY+i8)Исключающее ИЛИ A=AXORsВсе
CP ss-A,B, C, D, E, H, L, (HL), d8, (IX+i8), (IY+i8)Сравнение. Флаги устанавливаются в соответствии с результатом операции А - s, содержимое регистров не меняетсяВсе
ADD HL,r16r16-BC, DE, HL,SP16-разрядное сложение HL = HL + r16С, N, Н
ADD IX,r16r16-BC, DE, IX, SP16-разрядное сложение с индексным регистром IХ = IХ +r16С, N, Н
ADD IY,r16r16-BC, DE, IX, SP16-разрядное сложение с индексным регистром IY=IY + r16С, N, Н
ADC HL,r16r16-BC, DE, HL, SP16-разрядное сложение с учетом переноса HL = HL+r16 + CYВсе
SBC HL,r16r16-BC, DE, HL,SP16-разрядное вычитание с учетом заемо HL = HL-r16-CYВсе
DAA
Коррекция результата (необходима при роботе с числами в двоично-десятичном коде)С, Z, P/V, S, Н
CPL
Инверсия числа в аккумулятореN, Н
NEG
Преобразование числа в аккумуляторе в дополнительный кодВсе
CCF
Инверсия флага переносаС, N, Н
SCF
Установка флага переносаС, N, Н
INC dd - А, В, C, D, E, H, L, (HL), (IX+i8), (IY+i8)Увеличение на 1
D = d + 1
Z, P/V, S, N, Н
INC r16r16-ВС, DE, HL,SP, IX, IYУвеличение на 1
r16 = r16+ 1

DEC dd - А, В, C, D, E, H, L, (HL), (IX+i8), (IY+i8)Уменьшение на 1
D = d - 1
Z, P/V, S, N, Н
DEC r16r16-BC, DE, HL,SP, IX, IYУменьшение на 1
r16 = r16- 1

RLCA
Циклический сдвиг содержимого аккумулятора влево на один разрядC, N, H
RLA
Циклический сдвиг содержимого аккумулятора влево на один разряд через флаг переносаC, N, H
RRCA
Циклический сдвиг содержимого аккумулятора вправо на один разрядC, N, H
RRA
Циклический сдвиг содержимого аккумулятора вправо на один разряд через флаг переносаC, N, H
RLC ss-A,B, C, D, E, H, L, (HL), (IX+i8), (IY+i8)Циклический сдвиг s влево на один разрядВсе
RL ss - А, В, C, D, E, H, L, (HL), (IX+i8), (IY+i8)Циклический сдвиг s влево но один разряд через флаг переносаВсе
RRC ss - А, В, C, D, E, H, L, (HL), (IX+i8), (IY+i8)Циклический сдвиг s вправо на один разрядВсе
RR ss-A,B, C, D, E, H, L, (HL), (IX+i8), (IY+i8)Циклический сдвиг s вправо но один разряд через флаг переносаВсе
SLA ss-A,B, C, D, E, H, L, (HL), (IX+18), (IY+18)Арифметический сдвиг s влево на один разрядВсе
SRA ss - А, В, C, D, E, H, L, (HL), (IX+i8), (IY+i8)Арифметический сдвиг s вправо на один разрядВсе
SRL ss - А, В, C, D, E, H, L, (HL), (IX+i8), (IY+i8)Логический сдвиг s влево на один разрядВсе
RLD
Циклический перенос влево полубайтов ячейки памяти, адресуемой регистровой парой HL, через младший полубайт аккумулятораZ, P/V, S, N, Н
RRD
Циклический перенос вправо полубайтов ячейки памяти, адресуемой регистровой парой HL, через младший полубайт аккумулятораZ, P/V, S, N, Н
BIT b,d
b-0-7
d - А, В, C, D, E, H, L, (HL), (IX+i8), (IY+i8)
Z, P/V, S, N, Н
SET b,db-0-7
d-A,B,C,D,E, H, L, (HL), (IX+i8), (IY+iB)
Установка бита с номером b в 8-разряднам числе в d
RES b,db-0-7
d-A,B,C,D, E, H, L, (HL), (IX+i8),(IY+iB)
Сброс бита с номером b в 8-разряднам числе в d
NOP
Пустая операция
HALT
Остановка процессора. Рабата возобновляется после поступления запроса на прерывание
DI
Запрет обработки маскируемых прерываний
EI
Разрешение обработки маскируемых прерываний
IM nn-0,1,2Установка режима обработки маскируемых прерываний
CALL a16
Переход к подпрограмме. Адрес следующей команды сохраняется на вершине стека, указатель стека уменьшается на 2
CALL cc,a16cc-NZ,Z,NC,C,PO, PE,P, MВызов подпрограммы, если истинна условие сс
RET
Возврат из подпрограммы. Адрес берется с вершины стека, указатель стека увеличивается на 2
RETcccc-NZ,Z,NC,C,PO, PE,P, MВозврат из подпрограммы, если истина условие сс
RETI
Возврат из подпрограммы обработки маскируемого прерывания. Адрес берется с вершины стека, указатель стека увеличивается на 2, разрешается обработка прерываний
RETN
Возврат из подпрограммы обработки немаскируемого прерывания. Адрес берется с вершины стека, указатель стека увеличивается на 2, разрешается обработка прерываний
RST pp-00h,08h, 10h, 18h, 20h, 28h,30h,38hВызов подпрограммы, расположенной по фиксированному адресу р (программное прерывание). Адрес возврата сохраняется в стеке
JP a16
Переход по адресу а 16
JP cc,a16cc -NZ,Z,NC,C,PO, PE,P, MПереход по адресу а 16, если условие сс истинно
JP i8
Относительный переход. Новый адрес вычисляется как сумма значения из регистра PC и 8-разряднога смещения i8.
Смещение рассматривается как число со знаком

JP cc,i8cc-NZ, Z, NC, CОтносительный переход, если условие сс истинно
JP (r16)r16-HL, IX, IYПереход по адресу, содержащемуся в регистровой паре r16.
DJNZ iB
Из числа в регистре В вычитается 1. Если при этом не получен 0, то осуществляется относительный переход па смещению i8, если же В = 0, выполняется следующая за DJNZ команда
IN A,n8
Ввод байта из парта с адресам n8 и запись его в аккумулятор
IN r,(C)r - A, B, C, D, E, H, LВвод байта из парта, адрес которого задан в регистровой паре ВС, и его запись в регистр rZ,P/V,S,N,H
INI
Ввод байта из парта, адрес которого задан в регистровой паре ВС;
запись введенного байта в ячейку, адресуемую регистровой парой HL, увеличение HL на 1 и уменьшение числа в регистре В на 1
Все
INIR
Выполнение команды INI, пока число в регистре В не станет равным 0Все
IND
Ввод байта из парта, адрес которого задан в регистровой паре ВС;
запись введенного байта в ячейку, адресуемую регистровой парой HL, уменьшение HL на 1 и уменьшение числа в регистре В на 1
Все
INDR
Выполнение команды IND, пока число в регистре В не станет равным 0Все
OUT (n8),A
Вывод байта из аккумулятора в порт с адресом n8
OUT (C),rr-A,B,C,D, E, H,LВывод байта из регистра г в порт, адрес которого задан в регистровой паре ВС
OUTI
Вывод байта из ячейки памяти, адресуемой регистровой парой HL, в порт, адрес которого задан в регистровой поре ВС, увеличение HL на 1 и уменьшение числа в регистре В на 1Все
OTIR
Выполнение команды OUTI, пока число в регистре В не стонет ровным 0Все
OUTD
Вывод байта из ячейки памяти, адресуемой регистровой парой HL, в парт, адрес которого задан в регистровой паре ВС, уменьшение HL на 1 и уменьшение числа в регистре В на 1Все
OTDR
Выполнение команды OUTD, пока число в регистре В не стонет равным 0Все

Условные обозначения:
р - фиксированный адрес рестарта
а16 - 16-разрядный адрес
Ь - номер бита в байте (0-7)
d8 - непосредственный 8-разрядный операнд
d16 - непосредственный 16-разрядный операнд
i8 - 8-разрядное смещение в диапазоне от -128 до 127
r - 8-разрядный внутренний регистр процессора
r16 - 16-разрядный внутренний регистр или регистровая пара
n8 - 8-разрядный адрес порта ввода/вывода
d - приемник данных
s - источник данных

Коды условий:
NZ - не ноль (флаг Z = 0) Z - ноль (флаг Z = 1)
NC - нет переноса (флаг С = 0) С - перенос (флаг С = 1)
РО - нечетное число единиц/нет переполнения (флаг P/V = 0)
РЕ - четное число единиц/переполнение (флаг P/V =1)
Р - положительный результат (флаг S = 0)
М - отрицательный результат (флаг S = 1)

Категория: Разработка игр | Добавил: G-GURU (08.11.2010)
Просмотров: 3902 | Рейтинг: 5.0/1 |
Вы можете отправить сообщение на e-mail друга:

Интересное геймерам:

Смотрите другие материалы по темам: Z80, команд, система, Приставка, SMD, SEGA, микропроцессора, MegaDrive.

Также вам предлагаются схожие с «Система команд микропроцессора Z80, используемого в игровых приставках SEGA» материалы:

Если понравился материал «Система команд микропроцессора Z80, используемого в игровых приставках SEGA» и вы можете обсудить его ниже.

Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Поиск информации
Игровые братья
Создание игр, Конструкторы игр, Игровые движки Перевод консольных игр Разработка игр в СНГ Пранк - телефонные шутки
10 новых описаний
Disney и Epic Games: Слияние Миров и Рождение Новой Эры Развлечений
Oculus Quest2\Pro используется для обучения огнемётчиков на войну
Про Starforce, Cadmus сервер, Браузерные игры
Ставки на спорт: основные и альтернативные площадки MostBet
Будьте в курсе всех требований к монетизации блога в 2024 году
Взгляд на игровые новинки: от бесплатной раздачи в Steam до перемен в PlayStation
Импортозамещение государственных машин процессорами Baikal
Криптовалюта: какую выбрать для вложения и заработка
Онлайн игра World of Sea Battle для настоящих морских волков
Лучшие подкасты для максимальной монетизации вашего блога
Что означает Закон ЕС о цифровых рынках (DMA) для разработчиков игр
Время превратить вашу страсть в прибыль! Монетизируйте свой блог
Как пополнить баланс игрового аккаунта Steam в России
Лучшие настольные игры: Зомбицид, Колонизаторы, Монополия и др.
Премиум-резидент прокси – С неограниченной пропускной способностью
Все права сохранены за сайтом GFAQ.ru © 2024. Games Frequently Asked Questions
Полные прохождения, Секреты, Коды, Пароли, Советы, Уловки, Читы, Описания для Компьютерных и Консольных Игр. Хостинг от uCoz
Обращаем особое внимание на то, что при цитировании и размещении данных текстовых материалов, обязательно прикрепляйте ссылку на официальный сайт "GFAQ.ru".