Умеет делать unaligned access??? Есло бы он умел, то изначально
исключения (в чём собственно баг) при попытке этого самого access
не возникал бы! Чтоб оно так работало надо сбросить битик
UNALIGN_TRP в CCR, а компилятор ни сном, ни духом про SFR регистры
и их значения. Это программист их правильно поставить должен
вначале. Ну там ещё есть такая мелочь, что невыравненный доступ
доступен не для всех инструкций... что тянет за собой отдельную
реализацию всех библиотек собранных в таком режиме (и с гарантией, что в ручном ассемблере такое не встретится). И разумеется эффективность кода в таком режиме сильно ниже (нет части инструкций, сами инструкции выполняются до двух раз медленее, т.к. нужно чтение двух слов за два цикла шины).