-
- Есть в текущем R100 "ADD DPTR,A" - но учтем на заметку. Константу 8-битную? 16-битную? Если 8, то signed? unsigned? - SM(17.05.2005 15:46, )
- Константу unsigned. Ввчитать с помощью ADD думаю все умеют - Маниту(17.05.2005 15:56, )
- Я про signed/unsigned если 8-битная. Расширять ее до 16-ци нулями или знаком... - SM(17.05.2005 15:59, )
- Знаком, конечно - тогда автоматически и декремент образуется - AVR(17.05.2005 16:11, )
- Еще не хватает CJNE A,Ri, offset - Маниту(17.05.2005 16:22, )
- Еще есть вариант CJE A,#data,offset (с учетом префиксов автоматом и CJE Rx,#data и CJE dir,#data получатся) - SM(17.05.2005 16:28, )
- Еще тут у нас идея возникла - MOVC A, @A+PC+#data - SM(17.05.2005 16:50, )
- Тогда уж не PC, а DPTR - получится отличный XLAT с офсетом - AVR(17.05.2005 16:52, )
- Именно PC, чтобы таблицы можно было не трогая DPTR адресовать. А то вечный гемор при 256-байтной таблице. - SM(17.05.2005 16:54, )
- А зачем тогда еще PC плюсовать? Так ли уж нужен позиционно-независимый код? Достаточно будет MOVC A, @A+#TABLE - vmp(17.05.2005 17:32, )
- Обычно из Code Memory не один байт доставать надо, а строку/массив. Индексный указатель не помешал бы - хоть Rx - AVR(17.05.2005 18:06, )
- Дык. DPTR! - SM(17.05.2005 18:09, )
- Дык без константы! - AVR(17.05.2005 18:11, )
- Так база в DPTR, а смещение в ACC. С учетом 16-битного режима получается довольно много. - SM(17.05.2005 18:14, )
- Тогда, конечно, гуд. Чисса канкретна XLAT от х86 в натуре! :) - AVR(17.05.2005 18:19, )
- Докучи через префиксы никто не мешает написать MOVC Rx, @(ACC+DPTR) или MOVC direct,@(ACC+DPTR). ACC который к DPTR прибавляется префиксами не переназначается. - SM(17.05.2005 18:23, )
- Это уже прямо немецкий язык получается - Massenkommunikationsdienstleistungsunternehmen :) - AVR(17.05.2005 18:34, , ссылка)
- Не понял сравнения... А префиксы подмены аккумулятора фунциклируют и сейчас в R100 - SM(17.05.2005 18:36, )
- Ну, там слово иногда легче с конца читать, а те, что перед ключевым - как бы префиксы :) - AVR(17.05.2005 18:40, )
- Не понял сравнения... А префиксы подмены аккумулятора фунциклируют и сейчас в R100 - SM(17.05.2005 18:36, )
- Это уже прямо немецкий язык получается - Massenkommunikationsdienstleistungsunternehmen :) - AVR(17.05.2005 18:34, , ссылка)
- Докучи через префиксы никто не мешает написать MOVC Rx, @(ACC+DPTR) или MOVC direct,@(ACC+DPTR). ACC который к DPTR прибавляется префиксами не переназначается. - SM(17.05.2005 18:23, )
- Тогда, конечно, гуд. Чисса канкретна XLAT от х86 в натуре! :) - AVR(17.05.2005 18:19, )
- Так база в DPTR, а смещение в ACC. С учетом 16-битного режима получается довольно много. - SM(17.05.2005 18:14, )
- Дык без константы! - AVR(17.05.2005 18:11, )
- Дык. DPTR! - SM(17.05.2005 18:09, )
- Хотя... Если с PC, то #data 8-битная возможно будет.. А это всего один байт - один такт. - SM(17.05.2005 17:45, )
- О! Идея! - SM(17.05.2005 17:41, )
- Обычно из Code Memory не один байт доставать надо, а строку/массив. Индексный указатель не помешал бы - хоть Rx - AVR(17.05.2005 18:06, )
- А разве в R100 этих DPTR-ов не как грязи? - AVR(17.05.2005 16:55, )
- на данный момент всего один. - SM(17.05.2005 17:00, )
- ((( - AVR(17.05.2005 17:12, )
- В виду отсутствия внешней RAM это и не особо актуально, - SM(17.05.2005 17:14, )
- ((( - AVR(17.05.2005 17:12, )
- на данный момент всего один. - SM(17.05.2005 17:00, )
- А зачем тогда еще PC плюсовать? Так ли уж нужен позиционно-независимый код? Достаточно будет MOVC A, @A+#TABLE - vmp(17.05.2005 17:32, )
- Именно PC, чтобы таблицы можно было не трогая DPTR адресовать. А то вечный гемор при 256-байтной таблице. - SM(17.05.2005 16:54, )
- Тогда уж не PC, а DPTR - получится отличный XLAT с офсетом - AVR(17.05.2005 16:52, )
- Еще тут у нас идея возникла - MOVC A, @A+PC+#data - SM(17.05.2005 16:50, )
- Еще есть вариант CJE A,#data,offset (с учетом префиксов автоматом и CJE Rx,#data и CJE dir,#data получатся) - SM(17.05.2005 16:28, )
- Еще не хватает CJNE A,Ri, offset - Маниту(17.05.2005 16:22, )
- Знаком, конечно - тогда автоматически и декремент образуется - AVR(17.05.2005 16:11, )
- Я про signed/unsigned если 8-битная. Расширять ее до 16-ци нулями или знаком... - SM(17.05.2005 15:59, )
- Луччи конечно 16 битную если по тактам одинаково. Тем более 8 уже как бы у Вас есть. Код команды конечно удлиннится... Но зато с DPTR арихметикой проблем не будет. Маниту(150 знак., 17.05.2005 15:53, )
- Ответ: SM(403 знак., 17.05.2005 15:58, )
- Ну соотв. есть и ADD DPTR, Rx и ADD DPTR,dir - так как есть префиксы подмены аккумулятора на dir или Rx - SM(17.05.2005 15:48, )
- Константу unsigned. Ввчитать с помощью ADD думаю все умеют - Маниту(17.05.2005 15:56, )
- Есть в текущем R100 "ADD DPTR,A" - но учтем на заметку. Константу 8-битную? 16-битную? Если 8, то signed? unsigned? - SM(17.05.2005 15:46, )