Warum wird heutzutage kaum noch in Assembler programmiert?
Damals, als ich noch jung war und wir jeden Tag zur Schule laufen mussten - 20 km bergauf in beide Richtungen durch 2 m hohen Schnee, Sommers wie Winters - also damals, da waren Prozessoren noch 8 bit und haben irgendwas in der Größenordnung von 500000 Befehlen/Sekunde ausgeführt. Und maximal 64 kByte Speicher war auch nicht gerade üppig. Also damals war es durchaus sinnvoll, in Assembler zu programmieren, um die maximale Geschwindigkeit bei minimalem Speicherbedarf zu erreichen.
Und genau das ist die Nische, in der auch heute noch in Assembler programmiert wird. Nimm z.B. den PIC10F200 - Platz für 256 Befehle und 16 Byte RAM mit einem 4 Megahertz Takt. Da nimmt man mit, was man kriegen kann. Aber wenn die Stückzahl klein ist und der Stückpreis des Prozessors keine Rolle spielt, dann nimmt man vlelleicht dann doch den PIC10F322 mit Platz für 512 Befehle, 64 Byte RAM und 16 MHz Takt und Programmiert in C.
Das Problem ist, das Software erstellen teuer ist und Hardware billig. Und Assembler programmieren dauert länger und kostet einfach mehr, als das gleiche Program in einer höheren Programmiersprache zu erstellen. Da überwiegen dann für ein Projekt leicht schon mal die Kosten für die Software die für die Hardware und da rechnet es sich einfach nicht, das Doppelte oder mehr in die Software zu stecken, nur um ein paar Cent für die Hardware zu sparen. Das lohnt erst, wenn die Stückzahlen in die Millionen gehen.