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

Команда and - Виконати логічне “і”

Описання: Виконання логічного “І” між вмістом регістрів Rd і Rr і розміщення результату в регістрі призначення Rd.

Операція:

(i)

Rd < Rd*Rr

Синтаксис

Операнди:

Лічильник програм:

(i)

AND Rd, Rr

0 < Rd < 31,0 < Rr < 31

PC < PC + 1

Булеві вирази регістра статусу (SREG)

I

T

H

S

V

N

Z

C

-

-

-

0

-

Приклад:

.device AT90S1200

.include "1200def.inc"

ser r16 ;всі біти регістра R16 встановлюються в одиницю

out ddrb,r16 ;налаштування порту В на вивід

ldi r17,0b00001111 ; записуємо двійкове число 000011112 в регістр R17

ldi r18,0b00001001 ; записуємо двійкове число 000010012 в регістр R18

and r17,r18 ;побітове логічне “І” над регістрами R17 і R18, результат ;(000010012) записується в регістр R17

out portb,r17 ; вивід значення регістра R17 в порт B

Команда andi - Виконати логічне “і” з константою

Описання: Виконання логічного “І” між вмістом регістра Rd і константою і розміщення результату в регістрі призначення Rd.

Операція:

(i)

Rd < Rd*K

Синтаксис

Операнди:

Лічильник програм:

(i)

ANDI Rd, K

16 < Rd <31, 0 < K <255

PC < PC + 1

Булеві вирази регістра статусу (SREG)

I

T

H

S

V

N

Z

C

-

-

-

0

-

Приклад:

.device AT90S1200

.include "1200def.inc"

ser r16 ;всі біти регістра R16 встановлюються в одиницю

out ddrb,r16 ;налаштування порту В на вивід

ldi r17,0b00001111 ; записуємо двійкове число 000011112 в регістр R17

andі r17,0b00110011 ;побітове логічне “І” над регістром R17 і числом 001100112, ;результат (000000112) записується в регістр R17

out portb,r17 ; вивід значення регістра R17 в порт B

Команда or - Виконати логічне “або”

Описання: Команда виконує логічне “АБО” вмісту регістрів Rd і Rr і розміщує результат в регістрі призначення Rd.

Операція:

(i)

Rd < Rd v Rr

Синтаксис

Операнди:

Лічильник програм:

(i)

OR Rd, Rr

0 < Rd < 31, 0 < Rr <31

PC < PC + 1

Булеві вирази регістра статусу (SREG)

I

T

H

S

V

N

Z

C

-

-

-

0

-

Приклад:

.device AT90S1200

.include "1200def.inc"

ser r16 ;всі біти регістра R16 встановлюються в одиницю

out ddrb,r16 ;налаштування порту В на вивід

ldi r17,0b00001111 ; записуємо двійкове число 000011112 в регістр R17

ldi r18,0b00001001 ; записуємо двійкове число 000010012 в регістр R18

or r17,r18 ;побітове логічне “АБО” над регістрами R17 і R18, результат ;(000011112) записується в регістр R17

out portb,r17 ; вивід значення регістра R17 в порт B

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]