Форум: "Основная";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];
ВнизАлгоритм - как выделить число Найти похожие ветки
← →
uny © (2004-11-22 10:15) [0]имеется 16 битное BCD число, в котором дата (4 цифры) = месяц и число месяца. как можно преобразовать данное число в виду = число месяца и месяц. т.е. поменять местами байты в BCD числе.
проблема в том, что сделать это нужно используя только умножение и сложение, и только один раз -
т.е. (данное число BCD)*(коэффициент постоянный)+(какое то число постоянное) = (нужное число BCD)
можно хотя бы по частям - отдельно получить месяц и отдельно число месяца
← →
MBo © (2004-11-22 10:18) [1]функция Swap не уcтроит?
← →
uny © (2004-11-22 10:43) [2][1] MBo © (22.11.04 10:18)
нет. такой функции нет. есть только как описано - умножить можно и прибавить(это не комп). числа BCD разные, а коэффициенты определяются один раз...
← →
MBo © (2004-11-22 10:57) [3]> умножить можно и прибавить
Использованием только этих операций,кажется, нельзя обойтись.
Битовые операции есть? (and,or, shl/r)
>(это не комп).
Уточни. возможно, есть операция обмена регистров?
← →
uny © (2004-11-22 11:18) [4][5] MBo © (22.11.04 10:57)
это панель, она отображает, больше ничего нет. сейчас "готовлю" для неё дату, хотелось поэкономить память контроллера и сделать силами панели
← →
uny © (2004-11-22 15:53) [5]up
← →
TUser © (2004-11-22 16:07) [6]Так?
C*(A*x+B)+D=A+B*x =>
B=A*C V A=B+D =>
A=A*C+D =>
D=A*(1-C)
← →
MBo © (2004-11-22 16:07) [7]>up
Ну и зачем этот ап без дополнительной информации?
← →
uny © (2004-11-23 08:06) [8]TUser © (22.11.04 16:07) [6]
честно говоря я не смог разобраться в выкладках -
вторая строчка это Вы приравниваете значения при "x"?
но тогда "A=B+D" почему не "A=B*С+D"
Ваше решение поддерживает вариант что коэффициенты забиваются один раз - просто как числа и действуют на все любые числа BCD?
← →
TUser © (2004-11-23 10:36) [9]
> но тогда "A=B+D" почему не "A=B*С+D"
Согласен, ошибсяC*(A*x+B)+D=A+B*x =>
B=A*C V A=B*С+D =>
A=A*C^2+D =>
D=A*(1-C^2)=A*(1-C)*(1+C)
> Ваше решение поддерживает вариант что коэффициенты забиваются
> один раз - просто как числа и действуют на все любые числа
> BCD?
Для каждого C можно найти D, такое, что преобразование, затребованное в [0] будет выполняться.
PS. По причине ламеризма своего, я, если честно, не в курсе, что такое числа BCD. Будет интересно узнать, с чем их едят.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.037 c