PasstScho hats schon angedeutet:
Der Suchraum ist viel zu groß.

Beispiel:
Ein einfacher PIC hat 12 (oder 14?) bit Befehlslänge. Das sind zwar nur 35 Befehle, aber die Operanden müssen ja auch probiert werden. Das sind also schon mal 2^12 Möglichkeiten nur um einen einzigen Befehl abzuarbeiten. Soll das ganze jetzt aber den ganzen Speicher füllen, dann sind das (Anzahl_Befehle)^(Programmspeicher). Angenommen unser PIC hat 2kByte Speicher. Dann müssten wir also (2^12)^2048 verschiedene Programme testen.

Mal zum Vergleich:
Ein RSA-Schlüssel der im Moment als sicher gilt, hat 2048 bit. Dieser gilt als sicher, da man 2^2048 Möglichkeiten ausprobieren müssten um ihn zu knacken. Diese 2^2048 Möglichkeiten sind um _Größenordnungen_ kleiner als die Zahl oben.

Dann bleibt noch das Problem, das entstehende Programm zu überprüfen. Das ist leider auch nur mit starken Einschränkungen möglich (maximale Laufzeitbeschränkung) und braucht auch wieder viel Rechenpower.

Mal abgesehen davon
- wie willst du die Ausgangs/Zielbedinungen definieren ?
- wie willst du die Programme simulieren ?
- wenn du nur kleine Codesequenzen generieren willst, warum schreibst du die nicht einfach selber ?

Fazit:
So wie du dir das vorstellt kann es leider nicht gehen. Rechne dir nur mal aus wieviele Möglichkeiten du ausprobieren musst, um dein 3-Byte Programm oben zu berechnen.

Georg