реклама на сайте
подробности

 
 
> Операция с битами 3 бинарных чисел.
zheka
сообщение Dec 10 2009, 10:34
Сообщение #1


Гуру
******

Группа: Участник
Сообщений: 2 072
Регистрация: 14-01-06
Пользователь №: 13 164



Коллеги, подскажите наиболее рациональный в плане быстродействия способ решения задачи в CodeVision:
Есть такакя шняжка

const unsigned char LINE[] ={0b0000001,0b00000001,0b00000001};

А еще есть 0,1 и 2 линии порта A. Необходимо за 8 циклов передать содержимое LINE побитно - 0-й элемент в 0-ю линию, 1-й элемент в 1-ю линии, побитно - значит, за первый цикл, первый бит элементов массива и так далее..
Спасибо.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
zheka
сообщение Dec 11 2009, 09:26
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 2 072
Регистрация: 14-01-06
Пользователь №: 13 164



1. Автор прекрасно понимает чего хочет.
2. У автора получилось вот так PORTA = (PORTA & 0xF) | (LINE[jj]<<4) ;

А посоветуйте где накопать информации и примеров по битовым хитростям. То есть я в принципе знаю что дают операции &| << >>, но вот практическое их применение типа - вычислить значение бита №n, расположить биты в обратном порядке, заменить биты там-то и там-то...

Сообщение отредактировал zheka - Dec 11 2009, 09:26
Go to the top of the page
 
+Quote Post
sergeeff
сообщение Dec 11 2009, 10:16
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 481
Регистрация: 10-04-05
Пользователь №: 4 007



Цитата(zheka @ Dec 11 2009, 13:26) *
1. Автор прекрасно понимает чего хочет.
2. У автора получилось вот так PORTA = (PORTA & 0xF) | (LINE[jj]<<4) ;

А посоветуйте где накопать информации и примеров по битовым хитростям. То есть я в принципе знаю что дают операции &| << >>, но вот практическое их применение типа - вычислить значение бита №n, расположить биты в обратном порядке, заменить биты там-то и там-то...


Ну раз вы все знаете... Массив LINE у вас вроде как const. Так кто мешает туда сразу записать сигнатуру, сдвинутую влево на 4 бита и не заниматься этим всякий раз.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- zheka   Операция с битами 3 бинарных чисел.   Dec 10 2009, 10:34
- - =GM=   Ну, раз это константы, заведите другие 8 констант ...   Dec 10 2009, 10:49
- - zheka   Это пока константы, потому как данные мне пока пол...   Dec 10 2009, 11:04
|- - =GM=   Цитата(zheka @ Dec 10 2009, 10:54) Это по...   Dec 10 2009, 11:04
- - zheka   Ну хорошо, если с const вам непонятно, если так по...   Dec 10 2009, 12:23
|- - =GM=   byte=byte>>1; bit=byte&0x01;   Dec 10 2009, 12:33
|- - _Pasha   Цитата(zheka @ Dec 10 2009, 16:23) СЛишко...   Dec 10 2009, 12:35
- - zheka   Спасибо, что-то вроде этого я и ожидал увидеть. Ха...   Dec 10 2009, 13:28
- - zheka   В общем ТЗ окончательно сформировалось и выглядит ...   Dec 10 2009, 18:10
|- - IJAR   Цитата(zheka @ Dec 10 2009, 21:10) В обще...   Dec 10 2009, 19:31
||- - SasaVitebsk   Цитата(IJAR @ Dec 10 2009, 23:31) Попробу...   Dec 10 2009, 19:58
|||- - IJAR   Цитата(SasaVitebsk @ Dec 10 2009, 22:58) ...   Dec 10 2009, 20:07
||- - des333   Цитата(IJAR @ Dec 10 2009, 22:31) Попробу...   Dec 10 2009, 21:28
|- - Vlad219i   Цитата(zheka @ Dec 10 2009, 21:10) В обще...   Dec 11 2009, 12:13
|- - Vlad219i   Цитата(zheka @ Dec 10 2009, 21:10) имеетс...   Dec 11 2009, 14:26
|- - des333   Автор (который все знает), Вроде, в окончательно ...   Dec 12 2009, 11:10
- - sergeeff   Сделай то, не знаю что. Автору каждый день будут Т...   Dec 10 2009, 20:58
|- - =GM=   Цитата(zheka @ Dec 11 2009, 09:26) 2. У а...   Dec 11 2009, 10:40
- - M_Andrey   { union char_by_bit { struct { unsign...   Dec 11 2009, 10:06
- - zheka   ЦитатаНу и где здесь у автора "передача за 8 ...   Dec 11 2009, 11:46
- - zheka   ЦитатаОбязательно С? А то на асме это в несколько ...   Dec 11 2009, 12:44
|- - _Pasha   Цитата(zheka @ Dec 11 2009, 16:44) был бы...   Dec 11 2009, 14:27
- - zheka   Спасибо, только я в асме полный ноль. Мне нужно ас...   Dec 11 2009, 14:33
- - Duhas   используя 10 регистров мона сдвигами сформировать ...   Dec 11 2009, 19:05


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 18:03
Рейтинг@Mail.ru


Страница сгенерированна за 0.01353 секунд с 7
ELECTRONIX ©2004-2016