реклама на сайте
подробности

 
 
> T бит в SREGе, Зачем?
muravei
сообщение Mar 27 2006, 10:40
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 538
Регистрация: 13-08-05
Пользователь №: 7 591



Подскажите(с примером) как можно использовать T бит в SREGе, а то вдруг мне это надо , а я не знаю sad.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
defunct
сообщение Mar 27 2006, 14:50
Сообщение #2


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Есть команда (bst) загрузки любого бита любого регистра во флаг T, и команда(bld) выгрузки флага T в любой бит любого регистра, а также есть команды(brts/brtc) перехода по значению флага T.

Т.о. этот флаг упрощает работу там где требуется манипуляция с битами.

Пример:
Пусть имеется какой-то регистр в котором хряняться какие-то флаги, которые предполагается использовать в программе.

Код
.def AL = r24
.def AH = r25
.def Flags = R15 ; Пользовательский регистр флагов
.equ Flag0 = 0  
.equ Flag1 = 1
.equ Flag2 = 2
.equ Flag3 = 3
...
.equ Flag7 = 7

прочитать порт B и поместить значение пина PB5 во флаг Flag0:

  in  AL, PinB
  bst AL, PB5
  bld  Flags, Flag0

проверить Flag4 и если он установлен перейти на подпрограмму Proc1

  bst  Flags, Flag4
  brts Proc1
  ...
Proc1:


Сообщение отредактировал defunct - Mar 27 2006, 14:56
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 12:49
Рейтинг@Mail.ru


Страница сгенерированна за 0.01379 секунд с 7
ELECTRONIX ©2004-2016