Возьми Кернигана и Ритчи - "Программирование на языке Си" и сразу же приступай к поставленной задаче (то, для чего учишь си). Постарайся просто потихоньку делать дело подглядывая в книгу чтобы понять как это делается в си. Конечно такой подход годится для не очень сложных задач, но важнее всего что у тебя уже есть навыки программирования.
если знаешь Perl, то врядли будет что-то сложное. Опять же только если указатели. Возьми K&R, открой на середине и читай. И возьми какие-нить сорцы для примера. Я почти так же ассемблер в своё время учил. Только книжка была другая и в качестве примера использовал сорцы ядра. :)))
> Вообще я не понимаю, что в указателях сложного...
На самом деле есть люди, которые не понимают указателей. Т.е. на бумажке они понимают, что куда указывает, могут даже научиться использовать указатели первого уровня, если долго будут писать, но что то сложное вызывает у них ступор мозга. Причём вполне нормальные люди.
А я указатели так до конца и не осилил. Нет, в чужом коде разбираюсь с указателями хорошо, но когда дело доходит до решения сложных актуальных задач -- лажа. :(