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

 
 
> Помогите с циклом для С8051F005
Scorpline
сообщение Oct 25 2007, 23:55
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 18
Регистрация: 25-10-07
Пользователь №: 31 737



Я начинающий в ассемблере... Может кто поможет написать код цикла для сравнения двух однобайтных значений... то есть есть два числа(допустим #10h и #3Fh). Они сравниваются с другими значениями которые прокручиваются в цикле(и постоянно изменяются)... и если эти значение меньше 10h то выполняется вызов какойто подпрограммы и соответственно значение больше 3Fh то вызов другой подпрограммы.... (вообщем как в ассемблере зделать знаки <>) help.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
msn
сообщение Oct 26 2007, 10:38
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 126
Регистрация: 1-01-06
Из: Украина, Киев
Пользователь №: 12 759



Цитата(Scorpline @ Oct 26 2007, 02:55) *
Я начинающий в ассемблере... Может кто поможет написать код цикла для сравнения двух однобайтных значений... то есть есть два числа(допустим #10h и #3Fh). Они сравниваются с другими значениями которые прокручиваются в цикле(и постоянно изменяются)... и если эти значение меньше 10h то выполняется вызов какойто подпрограммы и соответственно значение больше 3Fh то вызов другой подпрограммы.... (вообщем как в ассемблере зделать знаки <>) help.gif

Код
MOV      A,Rx               ; Определили значение переменной цикла, A = VAR
CLR      C                  
SUBB     A,#0x10            ; A  = VAR – 0x10
JNC      LabelNext          ; Если VAR – 0x10 >= 0 :: VAR >= 0x10 то переходим на LabelNext
CALL     FunLoss            ; Если VAR – 0x10  < 0 :: VAR  < 0x10 то вызываем FunLoss            
JMP      LabelEnd

LabelNext:
MOV      A,Rx               ; Определили значение переменной цикла, A = VAR
SETB     C                  
SUBB     A,#0x3F            ; A  = VAR – 0x3f
JC       LabelMore          ; Если VAR – 0x3f <= 0 :: VAR <= 0x3f то переходим на LabelEnd
CALL     FunMore            ; Если VAR – 0x3f  > 0 :: VAR  > 0x3f то вызываем FunMore            

LabelEnd:
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 28th July 2025 - 18:18
Рейтинг@Mail.ru


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