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

 
 
> Операция с битами 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
Ответов
Duhas
сообщение Dec 11 2009, 19:05
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 227
Регистрация: 13-04-07
Пользователь №: 27 018



используя 10 регистров мона сдвигами сформировать байты для отправки в 2 прогона для первых 8 и вторых 8 байт строки...

что-то вроде
Код
ldi xl, low(line_addr)
ldi xh, high(line_addr)
ld r1, x+
ld r2, x+
ld r3, x+
ld r4, x+
ld r5, x+
ld r6, x+
ld r7, x+
ld r8,x

ldi count, 7
ldi xl, low(temp_place)
ldi xh, high(temp_place)
conv_loop:
rol r1
rol temp
rol r2
rol temp
....
rol r7
rol temp
rol r8
rol temp
st x+, temp
dec count
brcc conv_loop

и еще раз также для оставшихся 8 байт...
потом просто берем по адресу temp_place и отправляем в порт


вот что взбрело в голову XD
мб ужос ? )

Сообщение отредактировал Duhas - Dec 11 2009, 19:06
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
- - zheka   1. Автор прекрасно понимает чего хочет. 2. У автор...   Dec 11 2009, 09:26
|- - sergeeff   Цитата(zheka @ Dec 11 2009, 13:26) 1. Авт...   Dec 11 2009, 10:16
|- - =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


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

 


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


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