Dot 0 16 октября, 2005 Опубликовано 16 октября, 2005 · Жалоба Ну чтобы на пальцах и все доступно? <{POST_SNAPBACK}> The Insider's Guide (~6MB): http://www.hitex.co.uk/arm/lpc2000book/index.html (либо сразу по http://www.hitex.co.uk/arm/lpc2000book/lpc-ARM-book_srn.pdf) Я на эту книжку наткнулся уже после того, как изучил даташиты :( Кстати, где-то тут выкладывали ее принтабельный вариант. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
slabnoff 0 16 октября, 2005 Опубликовано 16 октября, 2005 · Жалоба Кстати, где-то тут выкладывали ее принтабельный вариант. Если кому надо - зашлю - 4.4 мега в зипе. Но это по филипсовским ARM-ам, правда многие вещи безотносительно филипса. В принципе есть еще arm7tdmi.pdf (1.15 мега в зипе) - описание ядра от фирмы ARM с описанием режимов, ассемблера и растактовки, что называется must have - могу прислать, можно также легко найти в Инете. С уважением, Андрей Слабнов. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andy_Mozzhevilov 0 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба И что, для этого есть необходимость, действительно реальная и суровая ? Представьте себе, бывает. Например, при работе с графикой/звуком или тяжелой периферией (типа fast ethernet). Я не призываю все писать на ASM, но без знания оного даже писание на Ц получается неполноценным. <{POST_SNAPBACK}> Так это уже 2 большие разницы. Сравните - писание проекта на асме целиком vs писание на асме только критических мест. Хотя даже второе лучше писать на С (если оно успевает), хотя бы с точки зрения сопровождаемости кода. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Так это уже 2 большие разницы. Сравните - писание проекта на асме целиком vs писание на асме только критических мест. Хотя даже второе лучше писать на С (если оно успевает), хотя бы с точки зрения сопровождаемости кода. <{POST_SNAPBACK}> Интересно, а на LPC2101 тоже на C будем писать? Вообще-то изначально человек высказался в том смысле, что на АСМ'е здесь вообще никто и ничего не пишет, что не есть правда. А "сопровождаемость" кода вовсе не зависит от того, на каком языке он написан, скорее, это зависит от качества документации и сопровождающего. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andy_Mozzhevilov 0 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Так это уже 2 большие разницы. Сравните - писание проекта на асме целиком vs писание на асме только критических мест. Хотя даже второе лучше писать на С (если оно успевает), хотя бы с точки зрения сопровождаемости кода. <{POST_SNAPBACK}> Интересно, а на LPC2101 тоже на C будем писать? Если уж на всякие x51, AVR и младшие пики код прекрасно пишется на Ц, не вижу сколько-нибудь значимых причин, не дающих писать для 2101 на том же Ц. А "сопровождаемость" кода вовсе не зависит от того, на каком языке он написан, скорее, это зависит от качества документации и сопровождающего. <{POST_SNAPBACK}> При прочих равных код на ЯВУ сопровождается лучше, код на ЯВУ под ОС, еще лучше. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Если уж на всякие x51, AVR и младшие пики код прекрасно пишется на Ц, не вижу сколько-нибудь значимых причин, не дающих писать для 2101 на том же Ц. <{POST_SNAPBACK}> Может быть и прекрасно, да только уж на мелких восьмибитниках ASM сам доктор прописал использовать (я не беру в расчет уродцев с 128к флеш). Ладно, надо завязывать, а то дискуссия планомерно скатывается в оффтоп и религиозную войну... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andy_Mozzhevilov 0 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Если уж на всякие x51, AVR и младшие пики код прекрасно пишется на Ц, не вижу сколько-нибудь значимых причин, не дающих писать для 2101 на том же Ц. <{POST_SNAPBACK}> Может быть и прекрасно, да только уж на мелких восьмибитниках ASM сам доктор прописал использовать (я не беру в расчет уродцев с 128к флеш). Какая разница, сколько там флэш. Эмпирическая оценка разбухания кода Си по сравнениею с асм 1,3-1,5 раз. Быстродействия примерно столько же. Кочечно, есть и частные случаи. Ладно, надо завязывать, а то дискуссия планомерно скатывается в оффтоп и религиозную войну... <{POST_SNAPBACK}> Ну вот, так всегда, только найдешь тему где можно эмоций да постов понабрать :-))) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jasper 0 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Интересно, а про ARM-ы книжки на русском в природе встречаются? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Какая разница, сколько там флэш. Эмпирическая оценка разбухания кода Си по сравнениею с асм 1,3-1,5 раз. Быстродействия примерно столько же. Кочечно, есть и частные случаи. <{POST_SNAPBACK}> Так жизнь состоит сплошь из частных случаев :) А Ваша оценка в 1,3-1,5 кажется мне несколько заниженной даже для самых общих случаев (раза в 2). Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andy_Mozzhevilov 0 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Какая разница, сколько там флэш. Эмпирическая оценка разбухания кода Си по сравнениею с асм 1,3-1,5 раз. Быстродействия примерно столько же. Кочечно, есть и частные случаи. <{POST_SNAPBACK}> Так жизнь состоит сплошь из частных случаев :) А Ваша оценка в 1,3-1,5 кажется мне несколько заниженной даже для самых общих случаев (раза в 2). <{POST_SNAPBACK}> Давайте сделаем тест. Вы предлагаете какой-либо общий случай, например реализация кольцевого буфера FIFO для передатчика UART (вполне себе общая типовая задача для embedded), приводите реализацию на асм для ARM. Я делаю то же самое на Ц. Результаты cравниваем, вычисляем оверхед Ц. Если он больше 1.5 раз, я ставлю ящик пива или перевожу вам деньги для его приобретения. Ы? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Давайте сделаем тест. Вы предлагаете какой-либо общий случай, например реализация кольцевого буфера FIFO для передатчика UART (вполне себе общая типовая задача для embedded), приводите реализацию на асм для ARM. Я делаю то же самое на Ц. Результаты cравниваем, вычисляем оверхед Ц. Если он больше 1.5 раз, я ставлю ящик пива или перевожу вам деньги для его приобретения. Ы? <{POST_SNAPBACK}> Будете смеяться, но FIFO буферы я тоже пишу на Ц :) Но если взять другой общий случай, например копирование/заполнение массива, то оверхед будет просто немеренный. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
NickS 0 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Какая разница, сколько там флэш. Эмпирическая оценка разбухания кода Си по сравнениею с асм 1,3-1,5 раз. Быстродействия примерно столько же. Кочечно, есть и частные случаи. Внесу и я свое замечание на 5 копеек. Вообще-то как я замечал оценка разбухания кода и соответственно быстродействие оличается в 3-4 раза. Только сравнивать надо не отдельные функции, а модуль целиком, содержащий большое количество функций. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andy_Mozzhevilov 0 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Давайте сделаем тест. Вы предлагаете какой-либо общий случай, например реализация кольцевого буфера FIFO для передатчика UART (вполне себе общая типовая задача для embedded), приводите реализацию на асм для ARM. Я делаю то же самое на Ц. Результаты cравниваем, вычисляем оверхед Ц. Если он больше 1.5 раз, я ставлю ящик пива или перевожу вам деньги для его приобретения. Ы? <{POST_SNAPBACK}> Будете смеяться, но FIFO буферы я тоже пишу на Ц :) Но если взять другой общий случай, например копирование/заполнение массива, то оверхед будет просто немеренный. <{POST_SNAPBACK}> Огласите цифры. Давайте пример на асм и описание алгоритма, который нужно реализовать. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Andy_Mozzhevilov 0 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Какая разница, сколько там флэш. Эмпирическая оценка разбухания кода Си по сравнениею с асм 1,3-1,5 раз. Быстродействия примерно столько же. Кочечно, есть и частные случаи. Внесу и я свое замечание на 5 копеек. Вообще-то как я замечал оценка разбухания кода и соответственно быстродействие оличается в 3-4 раза. Это, мягко говоря, неправда. Только сравнивать надо не отдельные функции, а модуль целиком, содержащий большое количество функций. <{POST_SNAPBACK}> При увеличении количества функций все лишь нивелируется, стремясь к среднему значению. Если можно еще найти отдельные локальные места, где на асм можно выиграть 3-4 раза объема или быстродействия по сравнению с Ц, то в большом проекте эти места утонут в море среднестатистических показателей. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 17 октября, 2005 Опубликовано 17 октября, 2005 · Жалоба Огласите цифры. Давайте пример на асм и описание алгоритма, который нужно реализовать. <{POST_SNAPBACK}> Да пожалуйста: скопируем массив объемом 8K из пункта А в пункт Б. На АСМе получается огромный выйгрыш за счет использования LDM/STM. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться