Сконвертировать 16bit - 8 bit

Ответить
and909
Сообщения: 858
Зарегистрирован: 28 май 2013, 13:20

Сконвертировать 16bit - 8 bit

Сообщение and909 »

Приветствую!

Для формирования телеграммы нужно записать число, к примеру 1А2В hex в 2 соседних регистра: 1А и 2В

Что-то не получается, подскажите, пожалуйста, как сделать.

Ryzhij
Сообщения: 1026
Зарегистрирован: 26 авг 2012, 19:25
Откуда: Россия Рязань

Re: Сконвертировать 16bit - 8 bit

Сообщение Ryzhij »

Не совсем понял, что именно Вам нужно.
О каких соседних регистрах речь?
У Delta все регистры 16-разрядные.
Думаю, что Вам помогут АPI-26 WAND для маскирования при пересылке в регистр назначения и API-147 SWAP для обмена содержимым между младшим и старшим байтами регистра.

Например, изначально в D0 лежит "Н1A2B".
Нам надо в D7 поместить старший байт из D0 "1A" ("H001A"), а в регистр D8 отправить младший байт D0 "2B" ("H002B")

WAND D0, HFF00, D7 // в D7 "H1A00"
SWAP D7 // в D7 "H001A"
WAND D0, H00FF, D8 // в D8 "H002B"

Для движения по массивам "исходных данных" и "результатов" удобно использовать индексную адресацию элементов в массивах.
__________________________
Помощь - понятие растяжимое, всяк трактует его в меру своего эгоизма...

and909
Сообщения: 858
Зарегистрирован: 28 май 2013, 13:20

Re: Сконвертировать 16bit - 8 bit

Сообщение and909 »

Похоже, это то, что нужно, завтра проверю, спасибо.

tvent
Сообщения: 1019
Зарегистрирован: 11 янв 2011, 17:02

Re: Сконвертировать 16bit - 8 bit

Сообщение tvent »

Если в D0 H1A2B, то после выполнения команды
DTM D0 D7 K2 K1
В регистрах D7 и D8 будет H001A и H002B соответственно.

Ryzhij
Сообщения: 1026
Зарегистрирован: 26 авг 2012, 19:25
Откуда: Россия Рязань

Re: Сконвертировать 16bit - 8 bit

Сообщение Ryzhij »

К сожалению не факт, что в старших байтах регистров результата D7 и D8 после DTM D0 D7 K2 K1 будут нули.
Бывало, старший байт повторял младший.
От версии зависит, что ли... Не знаю...
__________________________
Помощь - понятие растяжимое, всяк трактует его в меру своего эгоизма...

and909
Сообщения: 858
Зарегистрирован: 28 май 2013, 13:20

Re: Сконвертировать 16bit - 8 bit

Сообщение and909 »

Оба способа рабочие, посмотрим, как покажет себя в эксплуатации:
DTM.png
DTM.png (21.74 КБ) 1685 просмотров

Ответить