Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
41
Добавлен:
23.02.2015
Размер:
1.68 Mб
Скачать

РЕГИСТР КОДА УСЛОВИЯ 1/3

Bit 3 = I (Interrupt mask) используется для управления разрешением ( I= 0) и запрещением (I = 1) прерывания. Bit I устанавливается (I = 1)

аппаратными или программными средствами, запрещая все прерывания кроме программного прерывания по команде TRAP. Бит I очищается программно. Этим битом управляют команды RIM, SIM и IRET и тестируют его команды JRM и JRNM.

Bit 4 = H (Half carry). Этот бит устанавливается аппаратными средствами в течении, когда ALU выполняет команды ADD или ADC и при этом происходит перенос между битами 3 и 4. Этот бит проверяется командами передачи управления JRH или

JRNH. Бит H используется в подпрограммах BCD арифметики.

РЕГИСТР КОДА УСЛОВИЯ 2/3

Bit 2 = N (Negative) устанавливается и очищается аппаратными средствами и определяет знак результата выполнения последней арифметической, логической операции или манипуляции данных. Бит N является копией 7-ого бита результата.

N = 0: результат операции положителен или нуль.

N = 1: Результат последней операции отрицателен.

К этому биту получают доступ команды JRMI и JRPL.

Bit 1 = Z (Zero) устанавливается и очищается аппаратными средствами, указывает, равен или не равен нулю результат последней арифметической,

логической операции или манипуляции данными. Z = 0: результат операции не равен нулю. Z = 1: результат операции - ноль.

Этот бит проверяют команды передачи управления

JRNE и JREQ.

РЕГИСТР КОДА УСЛОВИЯ3/3

Bit 0 = С (Carry/borrow), устанавливается и очищается аппаратными средствами и ПО, указывает перенос из старшего разряда или заем в старший разряд, в последней арифметической операции.

С = 0: Нет переноса или нет заёма.

С = 1: Выход за пределы старшего разряда (перенос) или заем в старший разряд.

Этот бит устанавливается командой SCF, очищается командой RCF и проверяется командами передачи управления JRC и JRNC.

Он также эффективно используется в операциях над битами, операциях сдвига и вращения.

СИСТЕМА КОМАНД ST7

Символы, используемые при описании команд

{…} означает: содержимое регистра или ячейки памяти.

$ означает: шестнадцатеричное число.

# означает: непосредственный операнд

СПОСОБЫ АДРЕСАЦИИ

Ядро ST7 обеспечивает 17 различных способов адресации, которые могут быть разделены на семь

основных групп (см. табл):

Неявная (Inhern)

nop

Непосредственная

Ld A,#$45

(Immediate)

Пример команды

Способ адресации

Прямая (Direct)

Ld A,$36

Индексная (Indexed)

Ld A,($58,X)

Непрямая, косвенная

Ld A,([$72],X)

(Indirect)

 

Способ адресации

Пример команды

Относительная (Relative)

Битовых

операций

Jrne loop

Bset byte,#7

СПОСОБЫ АДРЕСАЦИИ

команд ST7 разработаны c учетом минимизации их формата. Основные способы адресации разделяются на длинные и короткие:

•Длинный способ использует 64-кб. адресное пространство, но требует большего числа байт и числа циклов CPU.

•Короткий способ адресации более компактный, более быстрый, но получает доступ только к странице 0 памяти (0000h – 00FFh).

Только короткий способ адресации используется в командах CLR, CPL, NEG. BSET, BRES, BTJT, BTJF, INC, DEC, RLC, SLL, SRL,

SRA, SWAP.

 

 

 

Syntax

Destination/

Pointer

Pointer

Length

Mode (Способ

 

Sourse

Address

Size

(Bytes)

адресации)

 

 

 

(Hex.)

(Hex.)

 

Inherent

 

 

nop

 

 

 

+ 0

Immediate

 

 

Ld A,#$77

 

 

 

+ 1

Short

Direct

 

Ld A,$12

00…FF

 

 

+ 1

Long

Direct

 

Ld A,$1204

0000…FFFF

 

 

+ 2

No Offset

Direct

Indexed

Ld A,(X)

00...FF

 

 

+ 0(c X reg.)

 

 

 

 

 

 

 

+ 1(c Y reg.)

Short

Direct

Indexed

Ld A,($12,X)

00…1FE

 

 

+ 1

Long

Direct

Indexed

Ld A,($1000,X)

0000…FFFF

 

 

+ 2

Short

Indirect

 

Ld A,[$10]

00…FF

00…FF

byte

+ 1

Long

Indirect

 

Ld A,[$10.w]

0000…FFFF

00…FF

word

+ 2

Short

Indirect

Indexed

Ld A,([$10],X)

00…1FE

00…FF

byte

+ 2

 

 

Syntax

Destination Pointer

Pointer

Length

Mode (Способ

/

Addres

Size

(Bytes)

адресации)

 

Sourse

s

(Hex.)

 

 

 

 

 

(Hex.)

 

 

Inherent

 

nop

 

 

 

+ 0

Immedia

 

Ld A,#$77

 

 

 

+ 1

te

 

 

 

 

 

 

Short

Direct

Ld A,$12

00…FF

 

 

+ 1

Long

Direct

Ld A,$1204

0000..FFFF

 

 

+ 2

No

Direct Indexed Ld A,(X)

00...FF

 

 

+ 0(c X

Offset

 

 

 

 

 

reg.)

 

 

 

 

 

 

+ 1(c Y

 

 

 

 

 

 

reg.)

Short

Direct Indexed Ld A,($12,X)

00…1FE

 

 

+ 1

Long

Direct Indexed Ld A,

0000…

 

 

+ 2

 

 

($1000,X)

FFFF

 

 

 

Соседние файлы в папке МПСслайды