Свежие обсуждения
Микроконтроллеры

Преобразовать HEX в DEC за минимальное число тактов

1 2

Пока не считал - у меня отпуск с сего дня начался Только успел проверить работоспособность. Через 7 часов сажусь в поезд, а в воскресенье уже надеюсь добраться до Тбилиси.

 

GM: И сколько мин-мах тактов
Wladimir_TS: Пока не считал

я тут тряхнул ... получается на сдвигах и коррекциях (с вышеобозначенными регистрами): 33 при 33 задействованных командах, 39 при 22, ну и - вплоть до 81 на 11 машинных словах

т.ч. умножение 18/15 (первоисточник) - вне конкуренции, но с особенностями
(спасибо, Vlad_Petr ! таблица отдыхает)

условие Wladimir_TS: и желательно независящее от числа
выполняется во всех этих вариантах

 

Что-то не то вы посчитали. Там тело цикла выполняется за 16 тактов, всего 8 циклов, т.е. должно быть не менее 128 тактов.

 

то, то: я не считал, я симулировал - тряхнул вот стариной и (что следует из контекста) насооружал всяких сходных вариантов, затем отобрал три наиболее интересных/показательных да резюмировал их количественную оценку

 

Ну а я посчитал: тело цикла - 16 тактов. В регистре r22 счётчик циклов на 8. Сколько всего тактов получается? 128.

 

Все это, конечно, так; все это верно, да. Бумага написана правильно, все хорошо. Только с одной стороны. Но есть и другая сторона медали. (с) ... Вот Wladimir_TS отдохнёт, наберётся сил, да как-нибудь заглянет сюда к нам и - пожалуется: шта в тини мула - ан нетути. А что в заголовке написано? За минимальное число тактов. И тогда даст он знать: то ли 128+ ему оставляй, то ли 33/39/81 скорей подавай, да сколько памяти при том не жаль -- надо ж дать...

 

Да уж, батоно Владимир скажет

 

Пока я отдыхаю - всем привет из Стамбула. Тут не жарко а ооооооочень жарко - думается с трудом

 

Самый компактный код, это будет код, написанный под свои нужды.Нарыл как то кучу примеров, и всё равно пришлось самому писать. Сэкономил на том, что мне нужно было гашение незначащего нуля только в первом разряде, во втором не нужно было.

 

Коляй: Самый компактный код, это будет код, написанный под свои нужды.
Именно так. Но для этого надо самому потрудиться.

 
1 2