Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Маскирование при вводе.



Ввести в регистр R7 информацию из линий 0,1,3,4 и 7:

MOV A,P1; Ввод байта из порта 1

ANL A,#10011011B; Маскирование

MOV R7,A; Передача

 

2. Ввести в аккумулятор данные из порта 2 и выделить требуемые биты по маске, находящейся в R0:

MOV A,P2; Ввод из порта 2

ANL A,R0; Маскирование

 

Выполнить логический сдвиг влево двухбайтного слова,

расположенного в (R2) (A):

SHIF: RLC A; Сдвиг младшего байта

XCH A,R2; Обмен аккумулятора и расширителя

RLC A; Сдвиг старшего байта

XCH A,R2; Обмен

 

4. Выполнить арифметический сдвиг двухбайтного слова (R2) (A) вправо:

 

SHIF: SETB C; Установка флага переноса

XCH A,R2; Обмен байтами

B A.7,NO; Если R2.7 не равно 1, то сброс

CLR C; флага переноса

NO: RRCA; Сдвиг флага переноса в расширитель

XCH A,R2; Обмен

RRC A; Сдвиг младшего байта

 

5. Умножить аккумулятор на число 2 в степени Х, где Х – число не более 8, хранящееся в R2. Умножение на 2 заменяется арифметическим сдвигом влево аккумулятора и расширителя R1:

 

MOV R1,#0; Сброс R1

CLR C; Сброс флага переноса

L: RLC A; Арифметический сдвиг влево объединенного

XCH A,R1; 16-битного результата в

RLC A; регистровой паре (R1)(A)

XCH A,R1

DJNZ R2,L

 

6. Определить четность числа единиц в аккумуляторе:

 

CLR F0; Сброс F0

MOV R7,#9; Число повторов

L: RRC A; Пересылка бита А.0 в перенос

JNC N; Пропустить, если бит равен 0

CPL F0; Подсчет паритета


Дата добавления: 2015-07-11; просмотров: 100 | Нарушение авторских прав






mybiblioteka.su - 2015-2024 год. (0.005 сек.)