WWW.REFERATCENTRAL.ORG.UA - Я ТУТ НАВЧАЮСЬ

... відкритий, безкоштовний архів рефератів, курсових, дипломних робіт

ГоловнаІнформатика, Компютерні науки → Мікропроцесор Z-80 - Курсова робота

Мікропроцесор Z-80 - Курсова робота

сложения, когда к числу прибавляется 1;
" команда ADC. Значение флага переноса прибавляется к результату. Флаг переноса -это один из битов регистров флагов, который используется для сигнализации о том, было ли при выполнении последней арифметической операции переполнение регистра или байта памяти.
Команды ADD и ADC меняют флаг переноса, а INC-не меняет.
Подгруппа A. Команды ADD.
Мнемоника 16-ный код
ADD A,+DD C6 DD
ADD A,A 87
ADD A,H 84
ADD A,L 85
ADD A,B 80
ADD A,C 81
ADD A,D 82
ADD HL,HL 29
ADD HL,BC 09
ADD HL,DE 19
ADD HL,SP 39
ADD IX,IX DD 29
ADD IX,BC DD 09
ADD IX,DE DD 19
ADD A,E 83
ADD A,(HL) 86
ADD A,(IX +D) DD 86 D
Для команд использующих IY регистр, надо поменять IX на IY и DD на FD.
Подгруппа В. Команды INC.
Команды этой группы позволяют прибавить 1 к регистру, ячейке памяти или паре регистров. Во всех случаях флаг переноса не изменяется.
Мнемоника 16-ный код
INC A 3C
INC H 24
INC L 2C
INC B 04
INC C 0C
INC D 14
INC E 1C
INC (HL) 34
INC (IX+D) DD 34 D
INC HL 23
INC BC 03
INC DE 13
INC SP 33
INC IX DD 23
INC IY FD 23
Подгруппа С. Команды ADC.
Мнемоника 16-ный код
ADC A,+DD CE DD
ADC A,A 8F
ADC A,H 8C
ADC A,L 8D
ADC A,B 88
ADC A,C 89
ADC A,D 8A
ADC A,E 8B
ADC A,(HL) 8E
ADC A,(IX+D) DD 8E
ADC A,(IY+D) FD 8E
ADC HL,HL ED 6A
ADC HL,BC ED 4A
ADC HL,DE ED 5A
ADC HL,SP ED 7A
Команды этой группы позволяют сложить два числа вместе с текущим значением флага переноса. Все команды этой группы меняют флаг переноса. Он сбрасывается, если операция ADC не даёт переполнения, и устанавливается если даёт.
Группа 7.Команды вычитания.
Команды вычитания позволяют вычисть заданное число из одинарного регистра, пары регистров или индексного адреса памяти. Команды этой группы полезно разделить на три группы, каждая из которых имеет свою мнемонику:
" команда SUB;
" команда DEC. Специальный случай вычитания, когда из числа вычитается 1;
" команда SBC. Значение флага переноса вычитается из результата. Все команды SUB и SBC изменяют флаг переноса в зависимости от того, требовался ли двоичный заём. Команда DEC оставляет флаг переноса без изменения.
Группа 8.Команды сравнения.
Команды этой группы используют очень часто во всех программах. Они позволяют программисту сравнить значение, находящееся в регистре A, с константой, значением в регистрах и области памяти. Команды выполняют операцию вычитание без переноса, без запоминания результата вычитания и только устанавливают флаги в регистре флагов. Первоначальное значение в регистре А не изменяется. Флаг переноса устанавливается, как при операциях вычитания. Сравнение, которое >=,сбрасывает флаг переноса, а < устанавливает. Команды этой группы -команда одинарного сравнения.
Мнемоника 16-ный код
CP +DD FE DD
CP A BF
CP H BC
CP L BD
CP B B8
CP C B9
CP D BA
CP E BB
CP (HL) BE
CP (IX) +D DD BED
CP (IY) +D FD BED
Группа 9.Команды логики.
Это команды AND, OR, XOR .Они переменяются к регистру А и другой заданной переменной. Операция выполняется побитно, и 8-битовый результат возвращается в регистр А.
Подгруппа А. Команда AND.
Логическая операция выполняется над двумя двоичными цифрами и результат равен 1,только если оба тестируемых биты установлены. В противном случае результирующий бит равен 0.Командой AND удобно сбрасывать биты 0-7 регистра А. Этот процесс называется демаскированием и позволяет проверять определённые биты байта данных.
Мнемоника 16-ный код
AND +DD E6
Подгруппа B. Команда OR.
Логическая операция "или" выполняется над двумя двоичными цифрами, и результат равен 1,если одна или обе цифры установлены. В противном случае бит результата сброшен.
Мнемоника 16-ный код
OR +DD E6 DD
Подгруппа C. Команда XOR.
При работе команды проверяются два разряда. Если хотя бы один из них, но не вместе, установлен в единицу, то результирующий бит устанавливается также в 1,иначе результирующий бит сбрасывается.
Группа 10.Команда DJNZ.
Единственная команда в этой группе является одной из самых полезных и самой широко используемой в Z80.Работа этой команды может быть уподоблена циклу FOR-NEXT программы бэйсик следующего вида: FOR B=X TO 0 STEP-1:NEXT B
в этом цикле переменной "B" присваивается значение X. Затем с каждым проходом цикла она уменьшается до тех пор, пока не достигнет значения 0.Команда DJNZ используется подобным же образом.
Группа 12. Команда стека.
В большинстве программ машинных кодов осуществляется активное использование машинного стека: программистом в качестве места где можно хранить данные, микропроцессором- для сохранения адресов возврата. Команда, которые образуют эту группу, можно разделить на две подгруппы для пользователя и три подгруппы для микропроцессора.
Подгруппа А.PUSH и POP
Эти команды позволяют программисту по PUSH сохранить 2 байта данных в машинном стеке, а по POP-копировать 2 байта из машинного стека. Эти 2 байта данных должны копироваться в строго определенную пару регистров, но важно знать, что не
Loading...

 
 

Цікаве