Wenn du in asm Programmierst bist du auf jeden Fall besser sein als mit 32 Bit -- vorausgesetzt, du programmierst gut

Für C-Compiler sieht das aber wieder anders aus. Wenn du den als Schnittstelle verwendest, um 3-Byte-Werte zu lesen/speichern, wird's evtl ineffizient. Mach dir doch mal ein uint24_t und guck nach, was der Compiler draus bastelt.

Code:
#include <inttypes.h>

typedef struct
{
   uint8_t byte[3];
} uint24_t;
Es ist ja auch die Frage, was du Optimieren willst: Laufzeit, SRAM oder Flash-Verbrauch.