В общем-то, у него *байтов* регистров даже больше, чем у AVR, у MSP430 столько же (и больше, чем у PDP-11). При проектировании AVR попытались запастись "достаточным" количеством именно байтов, чтобы повозиться с тремя 32-битными переменными (программное деление и умножение) 16 байт уже на грани - 12 байт плюс счётчик, стековый кадр - приплыли. Придётся какой-нибудь указатель на рабоиче данные уже сохранть/восстанавливать.
Но, согласен с предыдущими ораторами, 16 байтов для более-менее нормальной работы хватило бы, а по 64-битным - так очень большой вопрос, стоило ли на это закладываться.
8-битнику 32 байта регистров таки как-то непонятно зачем.
Тогда уже аккумулятор + 256 :-), как в разных вариациях получается у PIC16 и у 6502/6800/ST5_или_ST6_не_помню/STM8 при короткой адресации.
Освободившиеся биты КОП - так это же счастье в том, что увеличивается число указательных пар, в том числе для адресации со смещением.
В командах регистр-регистр можно было бы освободившийся бит использовать для словных операций - не только movw, но и addw, addcw, subw, ... Скорость поменялась бы мало, при 8-битном АЛУ всё равно по два такта шло бы, но размер кода - сильно.
(кстати, с этими словным операциями - как только вводишь бит "словная" - тут же освобождается бит в номере регистра, словные операции вполне логично ограничить парами, начинающимися с чётного регистра).
Ну и при 16-ти регистрах просто просятся команды pushm/popm со вторым словом - маской регистров :-) Тоже скорости не добавит, но код часто ужмёт.