В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

 
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации





Главная страница > Обзоры по типам > Микроконтроллеры > MCS-51 > Команды
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации


Команда ORL <байт-назначения>,
<байт-источникa>

Команда "логическое "ИЛИ" для переменных байтов" выполняет операцию логического "ИЛИ" над битами указанных переменных, записывая результат в байт назначения. Эта команда на флаги не влияет. Допускается шесть комбинаций режимов адресации:

    • если байтом назначения является аккумулятор :
  1. регистровый
  2. прямой
  3. косвенно-регистровый
  4. непосредственный
    • если байтом назначения является прямой адрес :
  5. к аккумулятору
  6. к константе

Рассмотрим их.


  1. Ассемблер: ORL A,Rn ; где n=0-7
    Код:
    0 1 0 0 1 rrr
    , где rrr=000-111
    Время: 1 цикл
    Алгоритм: (A) : = (A) OR (Rn),
    где OR - операция логического "ИЛИ"
    Пример:
               ;(A)=15H, (R5)=6CH
    ORL  A,R5  ;(A)=7DH, (R5)=6CH
               



  2. Ассемблер: ORL A,<direct>
    Код:
    0 1 0 0 0 1 0 1
    direct address
    Время: 1 цикл
    Алгоритм: (A) : =(A) OR (direct)
    Пример:
               ;(A)=84H, (PSW)=C2H
    ORL  A,PSW ;(A)=C6H, (PSW)=C2H
    		   



  3. Ассемблер: ORL A,@Ri ; где i=0,1
    Код:
    0 1 0 0 0 1 1 i
    Время: 1 цикл
    Алгоритм: (A) : =(A) OR ((Ri))
    Пример:
                ;(A)=52H,  (R0)=6DH, (ОЗУ [6D])=49H 
    ORL  A,@R0  ;(A)=58H, (ОЗУ [6D])=49H
    



  4. Ассемблер: ORL A, #data
    Код:
    0 1 0 0 0 1 0 0
    #data8
    Время: 1 цикл
    Алгоритм: (A) : = (A) OR #data
    Пример:
                 ;(A)=FOH
    ORL  A,#0AH  ;(A)=FAH
    			 



  5. Ассемблер: ORL <direct>, A
    Код:
    0 1 0 0 0 0 1 0
    direct address
    Время: 1 цикл
    Алгоритм: (direct) : = (direct) OR (A)
    Пример:
               ;(A)=34H, (IP)=23H
    ORL  IP,A  ;(IP)=37H, (A)=34H
    		   



  6. Ассемблер: ORL (direct), #<data>
    Код:
    0 1 0 0 0 0 1 1
    direct address
    #data8
    Время: 2 циклa
    Алгоритм: (direct) : = (direct) OR #<data>
    Пример:
                 ;(P1)=00H
    ORL P1,#0C4H ;(P1)=11000100B (C4H)
    		   

Примечание. Если команда используется для работы с портом, величина, используемая в качестве исходных данных порта, считывается из "защелки" порта, а не с выводов БИС.