Проще говоря,
Получаю с АЦП число.
Мне нада его вывести на LCD.
Таблица кодов есть, как проще (быстрее)
Разложить на сотые, десятые... чтоб подставить под таблику кодов и вывести на дисплей.
Какбы форами и ифами, довольно долго.
Нет ли какогонибыдь оператора или функции(пример) похожая на результат маски для битов?
Но LCD от nokia 3410, и таблица кодов самодельная. И "драйвер" тоже.
У меня есть число (пусть - байт) какбы мне его так разложить на сотые, десятые и единицы, чтоб подготовить к последовательному (по разрядному) подставлению с моей таблицей символов.
т.е:
если это число 5 = массив 10
если это число 23 = ???
Как мне "десятый" разряд убрать? (понятно, что делишь пока флаг отрицательный не вылезет, но может чтото есть по проще)
Но LCD от nokia 3410, и таблица кодов самодельная. И "драйвер" тоже.
У меня есть число (пусть - байт) какбы мне его так разложить на сотые, десятые и единицы, чтоб подготовить к последовательному (по разрядному) подставлению с моей таблицей символов.
т.е:
если это число 5 = массив 10
если это число 23 = ???
Как мне "десятый" разряд убрать? (понятно, что делишь пока флаг отрицательный не вылезет, но может чтото есть по проще)
Есть в С такая мегаоперация - называется "%". Вместе с "/" получается аццкий тандем
товарищи модеры администраторы... может быть сделать специальную ветку по программированию?... и разделить на две ветки на ну как вы сами понимаете на Си и АСМ...
если после прочитанной книги что-то в голове осталось, радуйся. Голова работает на тебя!!!
ну да быстрее... единственно что внутри эти переменные NUM1 NUM2 NUM3 не очень нужны... можно просто глобальную digits[3] увеличивать... к примеру ++digits[0]; и код сократится... вот вам и оптимизация... если digits не глобальная тогда ссылками орудуем...
из курсов
""
1) Строка где переменная стоит слева от = но через знак &
PORTB & = 0x23;
на Си означает - прочитать содержимое переменной PORTB, затем выполнить "поразрядное (побитное) логическое И" между прочитанным значением и числом 0x23 и поместить (записать, присвоить) результат в переменную PORTB
""
А может оно так выглядеть?
Переместить содержание регистра PORTB в стек (допустим), переместить число (с права) в следующию "строку"(регистр стека) стека, провести операцию логическкого И (АЛУ уходит в себя...) и выдаёт(выставляет) результат в регистр PORTB.
Ну фиг его знает, зачем вообще тогда нада инт, чары какая нафиг разница!
Умня МС виснет!
-> alex2103
Пасиб! Но всёравно проц виснет и молчит!
Последний раз редактировалось MetEl Вт ноя 20, 2007 22:06:43, всего редактировалось 1 раз.