Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: CCBASIC-Programm in Maschinensprache umwandeln Kategorie: Verschiedenes (von Dietmar, Homepage - 19.01.2005 17:41)
 Als Antwort auf Re: CCBASIC-Programm in Maschinensprache umwandeln von Stefan Tappertzhofen - 19.01.2005 11:27

Hallo Stefan.

> Der CCBAS-Compiler anderseits ist ein _Compiler_ und jeder Compiler erzeugt in der Praxis Codesegemente, die nicht effizient sind

Es spielt doch überhaupt keine Rolle, ob der Code effizient ist oder nicht. Michael benötigt für seine Geschwindigkeitsmessung einfach nur eine ausreichend hohe Auflösung. Wenn die sogar ein Interpreter liefert, kann man selbst interpretiert messen. Auch bei einem Interpreter weiß man, wieviel Zeit für einen Schleifendurchlauf benötigt wird. Zum Hochzählen der Variablen sollte man aber sinnvollerweise FOR..NEXT-Schleifen benutzen. Gegebenenfalls muß man darüber nachdenken, das Interruptsystem vor der Messung auszuschalten.

Ich persönlich würde für diese Aufgabe ebenfalls Assembler benutzen. Aber nicht, weil es schneller ist, sondern weil man in Assembler den Timer Input Capture-Interrupt aktivieren kann und auf diese Weise einfach und sehr präzis die Zeit zwischen zwei Flanken ermitteln lassen kann. Dieser Interrupt wird im Betriebssystem zur Auswertung des DCF-77-Signals benutzt.

> ...andererseits ruft der die C-Control Betriebssystemroutinen auf, weißt Du wieviele Takte die zum Ablaufen brauchen?

Der Compiler CCBAS2MC führt eine Reihe von Optimierungen durch. FOR..NEXT-Schleifen und viele Operationen mit Byte-Variablen kommen ohne Rechenstack und ohne den Aufruf von Betriebssystemroutinen aus. Davon abgesehen weiß ich selbstverständlich, viele Takte die verschiedenen Betriebssystemroutinen zum Ablauf benötigen. Das Betriebssystem ist doch ausführlich dokumentiert. Siehe C-Control-ROM-Listing im HTML-Format auf meiner Site.

Die Drachenbücher "Compilerbau 1 & 2" habe ich mir übrigens auch mal gekauft. Allerdings vermute ich, daß Du trotzdem etwas mehr Ahnung vom Compilerbau hast als ich. Bisher habe ich nur den Compiler (genauer: das Compiler-Backend) CCBAS2MC veröffentlich.

Dietmar

Meine Homepage: http://ccintern.dharlos.de

 Antwort schreiben

Bisherige Antworten:

Re: CCBASIC-Programm in Maschinensprache umwandeln (von Stefan Tappertzhofen - 19.01.2005 19:40)
    Re: CCBASIC-Programm in Maschinensprache umwandeln (von Dietmar - 19.01.2005 21:53)
        Re: CCBASIC-Programm in Maschinensprache umwandeln (von Stefan Tappertzhofen - 20.01.2005 9:45)
            Re: CCBASIC-Programm in Maschinensprache umwandeln (von Michael - 25.01.2005 9:45)