Склад команд арифметичних і логічних операцій, страница 3

Алгоритм: (A) : =(A)-(C)-(direct);

(C):=X, (AC):=X, (OV):=X, где Х=(0 или 1)

Пример: ;(A)=97H, (B)=25H, (C)=9

SUBB A,B ;(A)=72H, (B)=25H, (C)=0,

;(AC)-0, (OV)=1

3.

Ассемблер: SUBB A@Ri; где i=0,1

Код: 1 0 0 1 0 1 1 i

Время: 1 цикл

Алгоритм: (A) : = (A)-(C)-((Ri));

(C):=X, (AC):=X, (OV):=X, где Х=(0 или 1)

Пример: ;(A)=49H, (C)=1, (R0)=33H,

;(ОЗУ[33])=68H

SUBB A,@R0 ;(A)=E0H, (C)=1, (AC)=0, (OV)=0

4.

Ассемблер: SUBB A,#data

Код: 1 0 0 1 0 1 0 0 #data8

Время: 1 цикл

Алгоритм: (A):=(A)-(C)-(#data8);

(C):=X, (AC):=X, (OV):=X, где Х=(0 или 1)

Пример: ;(A)=0BEH, (C)=0

SUBB A,#3FH ;(A)=7FH, (C)-0, (AC)=1, (OV)=1

Команда SUBB A, <байт источника>

Команда вираховує вказану змінну разом з прапором переносу із вмісту

акумулятора, спрямовуючи результат в акумулятор. Ця команда встановлює

прапор переносу якщо при вирахуванні для бита 7 необхідний заєм, в іншому

випадку прапор переносу скидається . Якщо прапор переносу встановлений

перед виконанням цієї команди, то це вказує на те, що зайом необхідний при

вирахуванні з підвищеною точністю на попередньому u1082 кроці, тому прапор

переносу вираховується із вмісту акумулятора разом з операндомджерела.

(АС) встановлюється, якщо заєм неохідний для біта 3 і скидається в іншому

випадку. Прапор переповнення (OV) встановлється, якщо заєм необхідний

для біта 6, але його нема для біта 7, або є для біта 7, але нема для біта 6.

При вирахування цілих чисел зі знаком (OV) вказує на негативне число

яке визначається при вирахуванні негативної величини з позитивній, або

позитивне число, яке визначається при вирахуванні позитивного числа із

негативного.

Операнд джерела допускає чотири режими адресації:

1. регістровий;

2. прямий;

3. косвено-регістровий;

4. безпосередній (до константи).

1.

Асемблер: SUBB A, Rn; де n=0-7

Код: 1 0 0 1 1 rrr де r=000-111

Час: 1 цикл

Алгоритм: (A) : = (A)-(C)-(Rn);

(C):=X, (AC):=X, (OV):=X, де X=(0 або 1)

Приклад: ;(A)=C9H, (R2)=54H, (C)=1

SUBB A,R2 ;(A)=74H, (R2)=54H, (C)=0

;(AC)=0, (OV)=1

2.

Асемблер: SUBB A, <data address>

Код: 1 0 0 1 0 1 0 1 data address

Время: 1 цикл

Алгоритм: (A) : =(A)-(C)-(data address);

(C):=X, (AC):=X, (OV):=X, де Х=(0 або 1)

Пример: ;(A)=97H, (B)=25H, (C)=9

SUBB A,B ;(A)=72H, (B)=25H, (C)=0,

;(AC)-0, (OV)=1

3.

Асемблер: SUBB A, @Ri; де i=0,1

Код: 1 0 0 1 0 1 1 i

Время: 1 цикл

Алгоритм: (A) : = (A)-(C)-((Ri));

(C):=X, (AC):=X, (OV):=X, де Х=(0 або 1)

Приклад: ;(A)=49H, (C)=1, (R0)=33H,

;(ОЗУ[33])=68H

SUBB A,@R0 ;(A)=E0H, (C)=1, (AC)=0, (OV)=0

4.

Асемблер: SUBB A, #data

Код: 1 0 0 1 0 1 0 0 #data8

Час: 1 цикл

Алгоритм: (A):=(A)-(C)-(#data8);

(C):=X, (AC):=X, (OV):=X, де Х=(0 або 1)

Приклад: ;(A)=0BEH, (C)=0

SUBB A,#3FH ;(A)=7FH, (C)-0, (AC)=1, (OV)=1

Основні команди логічних операцій

Команда ANL <байт-призначення>, <байт-джерела>

Команда "логічне "І" для змінних-байтів" виконує операцію логічного "І"

над бітами вказаних змінних і поміщує результат в байт-призначення. Ця

операція не впливає на станпрапорів.

Для операнда забезпечуютьсянаступні комбінації шести режимів адресації:

• байтом призначення є акумулятор (А):

2. регістровий

3. прямий

4. косвено-регістровий

5. безпосередній

• байтом призначення є пряма адреса (data address):

6. прямий акумуляторний

7. безпосередній (байт-джерело дорівнює константі)

1.

Асемблер: ANL A, Rn ; де n=0-7

Код: 0 1 0 1 1 rrr , де rrr=000-111

Час: 1 цикл

Алгоритм: (A) : = (A) AND (Rn)

Приклад: ;(A)=FEH, (R2)=C5H

ANL A,R2 ;(A)=C4H, (R2)=C5H

2.

Асемблер: ANL A,<data address>

Код: 0 1 0 1 0 1 0 1 data address

Час: 1 цикл

Алгоритм: (A) : =(A) AND (data)

Приклад: ;(A)=A3H, (PSW)=86H

ANL A,PSW ;(A)=82H, (PSW)=86H

3.

Асемблер: ANL A, @Ri ; де i=0,1

Код: 0 1 0 1 0 1 1 i , де i=0,1

Час: 1 цикл

Алгоритм: (A) : =(A) AND (Ri)

Приклад: ;(A)=BCH, (ОЗУ [35])=47H, (R0)=35H,

ANL A,@R0 ;(A)=04H, (ОЗУ [35])=47H

4.

Асемблер: ANL A, #data

Код: 0 1 0 1 0 1 0 0 #data8

Час: 1 цикл

Алгоритм: (A) : = (A)AND #data

Приклад: ;(A)=36H

ANL A,#0DDH ;(A)=14H

5.

Асемблер: ANL <data address>, A

Код: 0 1 0 1 0 0 1 0 data address

Час: 1 цикл

Алгоритм: (data address) : = (data address) AND (A)

Приклад_________: ;(A)=55H, (P2)=AAH

ANL P2,A ;(P2)=00H, (A)=55H

6.

Асемблер: ANL <data address>, #data

Код: 0 1 0 1 0 0 1 1 data address #data8

час: 2 циклa

Алгоритм: (data address) : = (data address) AND #data

Приклад: ;(P1)=FFH

ANL P1,#73H ;(P1)=73H

Команда ANL <байт-призначення>, <байт-джерела >

Команда "логічне "І" для змінних-байтів" виконує операцію логічного "І"

над бітами вказаних змінних і поміщає результат в байт-призначення. Ця

операція не впливає на стан прапорів.

Для операнда мають місце наступні комбінації шести режимів адресації:

• байтом призначення є акумулятор (А):

2. регістровий

3. прямий

4. косвено-регістровий

5. безпосередній

• байтом призначення є пряма адреса (data address):

6. прямий акумуляторний

7. безпосередній (байт-джерело дорівнює константі)

1.

Асемблер: ANL A, Rn ; де n=0-7

Код: 0 1 0 1 1 rrr , де rrr=000-111

Час: 1 цикл

Алгоритм: (A) : = (A) AND (Rn)

Приклад: ;(A)=FEH, (R2)=C5H