Die Syntax bei gcc ist som weil da AT verwendet wird;) Es geht nicht darum ob der Compiler mit Headern kann sondern dass gewünscht wird sonstwas in den Headern mitzuliefern;) Als Lowlevelsprache brauch man den Registerzugriff aber, wenn man zum Beispiel die Segmentregister ändern will oder für Übergaben bei Interrupten. Ausserdem gibts damit lediglich die möglichkeit das zu verwenden! Wer damit das Programm zerhaut ist selbst schuld, nur ich finde je mehr möglichkeiten man hat desto besser, auch wenns damit komplizierter wird!
Und auch wenns schon sowas in der Richtung gibt, ich mach das in erster Linie für die Programmiererfahrung, die ist sicherlich immer von nutzten.
Ein Superassembler könnte man draus machen, aber das liegt dann(wie bei jeder Programmiersprache) bei der Kunst des Programmierers.
Für Befehle wie Int, die die Sprache bisher nicht kann, ist es jetzt so das man die ,in nasm syntax, in ~ eingeschlossen eingibt, das wird dann direkt so in das Compilat eingefügt, also problemloses mischen von ASM und SCPL(so heist se).