[an error occurred while processing this directive]
[an error occurred while processing this directive]
Подскажите алгоритм
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
[an error occurred while processing this directive]
[an error occurred while processing this directive]
[an error occurred while processing this directive]
Некая переменная в программе должна принимать следующие значения:
1
2
5
10
20
50
100
и так далее до
500000
Всего 18 значений. Требуется написать функции “Up” и “Down”, которые должны изменять переменную вверх и вниз по этому закону. Переменная занимает 3 байта, поэтому таблица значений займёт 54 байта. Как сократить ее размер (вот бы вовсе отказаться от таблицы!), естественно, не сильно увеличивая размер кода? Всё это ваяется на asm для AVR.
Спасибо.
Составить ответ
|||
Конференция
|||
Архив
Ответы
- А если все-таки — Тумблер (06.02.2002 12:10, 111 байт)
- Всем спасибо! — Леонид Иванович (05.02.2002 01:16, 569 байт)
- Хранить по байту на элемент: одна тетрада - число, другая - порядок. — VT (04.02.2002 23:29, пустое)
- Не уверен, что получится меньше, но ... — Kuka (04.02.2002 21:51, 492 байт)
- Если сделать размер элементов переменным, можно сократить таблицу до 39 байт. — Пионер (04.02.2002 15:32, пустое)
- Ответ: — Vit (04.02.2002 15:17, 235 байт)
- Берите 1,2,5 из таблицы , а нули справа подставляйте по вкусу. (+) — Хрыч (04.02.2002 15:10, 93 байт)
- кто быстрее :) — yes (04.02.2002 14:20, 146 байт)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru