Por supuesto que puede programarse en ensamblador, pero NO directamente desde el entorno Arduino. Usa por ejemplo el AVR Studio 4 o bien un editor de texto + toolchain (avr-as, avr-gcc, make, etc) que viene en el directorio C:\arduino-0009\tools y... ¡a currar! El micro es el ATmega168.
Pero antes de ponerte a ello piensa si realmente merece la pena escribir en ensamblador. Desde C tienes acceso total al hardware del micro: interrupciones, periféricos, todo. Los micros AVR, además, fueron diseñados para ejecutar de forma eficiente programas escritos en C.
Escribir el software en ensamblador realmente no merece la pena a no ser que necesites "contar los ciclos de reloj" que consume cada parte del código, es necesario por ejemplo si tu aplicación es de tiempo real y tiene unas restricciones temporales muy fuertes. Para todo lo demás... C.

Yo personalmente escribo casi todo el software en C, uso Emacs, avr-gcc y avrdude para programar el ATmega168, invoco a todas las herramientas desde un Makefile.