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: Frage zum Verständnis Kategorie: C-Control I V1.1 (von Dietmar, Homepage - 14.12.2004 1:23)
 Als Antwort auf Re: Frage zum Verständnis von Henrik - 13.12.2004 23:34

Hallo Henrik,

> Weder ist das alte Produkt besser, noch besitzt Basic++ einen kleineren Funktionsumfang. Ganz im Gegenteil!

Mit eingeschränktem Funktionsumfang meine ich natürlich vor allen Dingen den nicht vorhandenen Emulator, bzw. Simulator. Die Syntax ist zweifelsohne bei den neuen BASIC-Dialekte umfangreicher.

> Wo bitte gibt es denn die Möglichkeit der Parameterübergabe bei Funktionen.

Bis zur Version 1.1 der C-Control ging das zum Beispiel mit Hilfe des Stacks, ganz ohne Variablen. Es gab sogar die Möglichkeit, Funktionswerte auf dem Stack zurückzuliefern. Bei den neuen C-Control-Varianten geht das leider nicht mehr, es wird Platz im User-RAM belegt.

Die Parameterübergabe und Werterückgabe bei Funktionen ist natürlich sehr nützlich, da Programme dadurch übersichtlicher werden und sich der Programmierer um nichts mehr zu kümmern braucht. Aber die zur Parameterübergabe benutzten Variablen belegen Platz im knappen User-RAM. Dieser Platz wird nur einmal genutzt. Lokale Variablen belegen also global Platz. Somit ist das ein zweischneidiges Schwert. Exzessiver Gebrauch ist zu vermeiden.

Das folgende kleine BASIC++-Programm belegt zum Beispiel 8 Byte des User-RAMs. Mit Word-Variablen wären es sogar 14 Byte:


declare function test1(a as byte, b as byte, c as byte)
declare function test2(a as byte, b as byte, c as byte)

print test1(1,2,3)
print test2(4,5,6)

function test1(a as byte, b as byte, c as byte)
return 123
end function

function test2(a as byte, b as byte, c as byte)
return 123
end function


Gruß, Dietmar

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

 Antwort schreiben

Bisherige Antworten:

Re: Frage zum Verständnis (von Stefan Tappertzhofen - 14.12.2004 7:13)
    Re: Frage zum Verständnis (von Dietmar - 14.12.2004 17:16)