Пожалуйста
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
Отправлено
Elektronik
02 декабря 2002 г. 17:52
В ответ на:
Ответ: Мужики, могу предложить простейшую опреацию для сравнения систем команд AVR и 51.
отправлено Bill 02 декабря 2002 г. 17:46
MOV a,(-1)
cjne a,perem,m1
;равно
jmp m2
m1:
;не равно
m2:
или
Составить ответ
|||
Конференция
|||
Архив
Ответы
аналогично...
—
mse
(02.12.2002 18:00, 79 байт)
Ответ: Забыл уточнить: больше - меньньше.
—
Bill
(02.12.2002 17:58,
пустое
)
Да фигня все это. Ясно же что будет практически одна малина ;)
—
Elektronik
(02.12.2002 18:07, 91 байт)
Ответ: Не спеши. Опять же вопрос: что больше -1 или 1? Как это будет для 51го?
—
Bill
(02.12.2002 18:15,
пустое
)
ну забыл rlc a поставить
—
Elektronik
(02.12.2002 18:22, 96 байт)
Ответ: Вся проблема заключается в том, что для сравнения чисел со знаком у 51го даже 2-х команд недостаточно, ибо у него просто нет соответствующих признаков (флажков). И для корректного анализа результата сравнения потребуется больше 2-х команд.
—
Bill
(02.12.2002 18:37, 300 байт)
Насчет флажков - в 51ом есть и бит переноса, и бит арифметического переполнения и признак нуля. А какого флага интересно Вам не хватает для сравнения со знаком ???
—
SM
(02.12.2002 19:11,
пустое
)
Приведите сравнение за 2 команды для AVR? ;)
—
Elektronik
(02.12.2002 18:47,
пустое
)
Ответ: Попробую, например так
—
Bill
(02.12.2002 18:56, 26 байт)
Хоть и притянуто за уши, но СР, СРС, TST, ASR, ADIW и SBIW - вот те 6 инструкций, которых очень недостает в х51
—
просто так
(02.12.2002 19:50,
пустое
)
Ну и где сравнения и переходы, да и переменные в регистрах никто не держит ? ;) В общем не убедили вы меня в превосходстве вашего процессора. До свидания :)
—
Elektronik
(02.12.2002 19:00,
пустое
)
После второй команды (СРС=сравнение с учетом переноса) все флаги выставлены соответственно 16-битным операндам, тут АВР явно победил.
—
просто так
(02.12.2002 19:55,
пустое
)
А с какого пьяну переменная -1 уже в регистрах находится? Да и сама переменная обычно в памяти данных лежит. Пример за уши притянут.
—
Elektronik
(03.12.2002 10:57,
пустое
)
Ну ты же сам его попросил "привести сравнение за две команды", не оговорив условий.
—
просто так
(03.12.2002 11:19,
пустое
)
Ответ:
—
ВН
(02.12.2002 18:06, 116 байт)
Ответ: До сих пор 1 была больше.
—
ВН
(02.12.2002 18:21,
пустое
)
Ответ: А по твоей программе получается, что -1 > 1 (если допустить, что var=1). Или нет?
—
Bill
(02.12.2002 18:26,
пустое
)
Ответ: Это как это?
—
ВН
(02.12.2002 18:38, 331 байт)
Ответ: Допустим var=1и каков будет результат сравнеия (cjne), куда мы попадём?
—
Bill
(02.12.2002 18:45,
пустое
)
Ответ: Что-то не понял.
—
ВН
(02.12.2002 18:51, 66 байт)
Ответ: Как происходит выполнение операции сравнения (само сравнение это обычно вычитание из A бес сохранения результата, только установка признаков)?
—
Bill
(02.12.2002 19:00,
пустое
)
Ответ:
—
ВН
(02.12.2002 19:13, 446 байт)
Ответ: Встречный вопрос: что больше 1 или -1?
—
Bill
(02.12.2002 18:13,
пустое
)
Ответ: Опять сам себе ответил. Выше Вам.
—
ВН
(02.12.2002 18:22,
пустое
)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru