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

 
 
 
Reply to this topicStart new topic
> TMS320C6202 и ассемблер
new6666
сообщение Feb 8 2005, 15:30
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 22
Регистрация: 15-10-04
Пользователь №: 885



Имеются следующие куски кода на Асме для TMS320C6202:

[A1] ADD .D1 A0, 1, A0
|| [A2] STW .D2 A6, *B4++
|| ZERO .L1 A2
|| ADD .S2 B5, B6, B9
|| ZERO .L2 B2
|| [B0] B .S1 S1


И

[A1] STW .D2 A9, *B4++
|| [!A1] ZERO .S1 A0
|| [!A1] CMPGT .L1 A0, 0, A2
|| CMPGT .L2 B9, A3, B1
|| LDH .D1 *A4++[2], B5

Хотелось бы понять: как будут влиять друг на друга инструкции, выполняющие операции с одними и теми же регистрами и работающие параллельно а именно:
|| [A2] STW .D2 A6, *B4++
|| ZERO .L1 A2
они работают одновременно с A2 и
|| [!A1] ZERO .S1 A0
|| [!A1] CMPGT .L1 A0, 0, A2
они работают одновременно с A0. В отладчике все пучком, но в жизни пока чего-то не очень.
Go to the top of the page
 
+Quote Post
Harbour
сообщение Feb 11 2005, 06:33
Сообщение #2


Местами Гуру
*****

Группа: Validating
Сообщений: 1 103
Регистрация: 5-12-04
Пользователь №: 1 323



Это все штучки assembler оптимизера - у меня были такие же сомнения когда я первый раз увидел во что он превратил мой стройный линейный asm.
Самый верный способ - написание тестовых кусочков на которых нужно проверять код (в любом случае пригодится)
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 15th June 2025 - 16:07
Рейтинг@Mail.ru


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