Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Einsteigerfragen ^^
Gehe zu Seite 1, 2  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
csde_rats



Anmeldungsdatum: 07.01.2007
Beiträge: 2292
Wohnort: Zwischen Sessel und Tastatur

BeitragVerfasst am: 21.02.2007, 16:24    Titel: Einsteigerfragen ^^ Antworten mit Zitat

Hi Leute,
Ich habe da so ein paar fragen:
1) Wieviel Quelltext kann der FB 0.16 Compiler verarbeiten?
2) Wie ist das mit DATA, RESTORE, READ bei FB 0.16?
3) Was ist beim schreiben aus DATA zeilen -> Dateien z beachten?
4) Sind wie bei QB auch Kommentarzeilen in DATA-Zeilen tödlich?
Ich währe für eine Antwort sehr dankbar lachen
_________________
If hilfreicher_Beitrag then klick(location.here)

Klick
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 21.02.2007, 16:59    Titel: Antworten mit Zitat

Zu 1.: mehr als QB
Zu 2.: s. BefehlsReferenz
Zu 3. u. 4.:
Code:
Option Explicit
Const Esc=Chr(27)
Dim As String y
Dim As Long i
?"e=english"
?"d=deutsch"
?"Was'n:";
Do
  y=lcase(Inkey$)
  Sleep 1
Loop Until Instr("ed" &Esc, y)
?y
If y="e" Then Restore english Else Restore deutsch
For i=1 To 3
  Read y
  ?y
Next WasImmerDuWillst

english:
Data "One", "Two", "Three" 'So gehz mit Kommentaren
deutsch:
Data "Eins", "Zwei", "Drei" 'Hier gehz auch..
Sleep
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
csde_rats



Anmeldungsdatum: 07.01.2007
Beiträge: 2292
Wohnort: Zwischen Sessel und Tastatur

BeitragVerfasst am: 21.02.2007, 17:01    Titel: Antworten mit Zitat

jo danke... aber kann der COmpiler auch mehr als 16 MB verarbeiten?
_________________
If hilfreicher_Beitrag then klick(location.here)

Klick
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 21.02.2007, 17:07    Titel: Antworten mit Zitat

Das läßt sich leicht ausprobieren:
Du schreibst eben mal schnell mehr als 16MB Quellcode und rufst dann fbc auf..
vor lachen auf dem Boden rollen
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 21.02.2007, 17:08    Titel: Antworten mit Zitat

Frage zu DATA, 16mb....

Ähm, du hast aber nicht 16MB Daten mit DATA im Programm eingebaut? durchgeknallt
Schonmal was von Dateien gehört? Zunge rausstrecken
Es würde gehen, aber ich rate davon schleunigst ab...
_________________
Code:
#include "signatur.bi"
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
csde_rats



Anmeldungsdatum: 07.01.2007
Beiträge: 2292
Wohnort: Zwischen Sessel und Tastatur

BeitragVerfasst am: 21.02.2007, 17:17    Titel: Antworten mit Zitat

ich frag nur so blöd weil ich einen (klitzekleinen) intstaller proggen möchte, der ohne andere dateien auskommmen soll. durchgeknallt
_________________
If hilfreicher_Beitrag then klick(location.here)

Klick
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 21.02.2007, 17:27    Titel: Antworten mit Zitat

csderats hat Folgendes geschrieben:

ich frag nur so blöd weil ich einen (klitzekleinen) intstaller proggen möchte

Was soll denn man das?
Weißt du nicht, was selbstentpackende Archive sind?
Bei 16MB Daten(!!) würde ich diesen 'intstaller' nicht benutzen..
..tuts nicht auch ein 'ShortIntStaller' lachen
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 21.02.2007, 18:32    Titel: Antworten mit Zitat

Der Code, den der fbc auf einem 32Bit-System verarbeiten kann ist auf 2GB unter 9x/ME begrenzt und imho auf 3GB unter NT-Systemen sowie aktuellen Linux-Kerneln.
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
croco97



Anmeldungsdatum: 04.11.2005
Beiträge: 260

BeitragVerfasst am: 21.02.2007, 18:52    Titel: Antworten mit Zitat

@Mao: Nee, nicht so ganz zwinkern)

By default sind alle Tasks unter Win32 auf 2 GB begrenzt - also auch der maximale Quellcodespeicher. Das kann man aufweichen, bei XP Professional und den Win2000 und 2003-Serverversionen durch einen speziellen Boot-Switch. Aber selbst dann muss das .exe nochmal speziell behandelt werden mit so einer LargeAdressAware-Option, was normalerweise der Compiler macht - FBC hat da wohl noch keine Features zu bieten zwinkern Das mit dem 3 GB-Switch gilt übrigens auch für Linux.

Viele Grüsse!

Croco
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
csde_rats



Anmeldungsdatum: 07.01.2007
Beiträge: 2292
Wohnort: Zwischen Sessel und Tastatur

BeitragVerfasst am: 21.02.2007, 19:08    Titel: Antworten mit Zitat

das reicht ja allemale! vor Freude klatschen danke leute das ihr mir geholfen habt
_________________
If hilfreicher_Beitrag then klick(location.here)

Klick
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 21.02.2007, 20:33    Titel: Antworten mit Zitat

@croco97:
Ich sagte ja: _bis_ zu 3 GB. lächeln
Und eigentlich meinte ich nicht direkt die Größe der Executable, sondern die Größe des Sources - hängt zwar indirekt mit zusammen, aber viel Code kann kleine EXE erzeugen. neutral
Vllt. unklar ausgedrückt gewesen...
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1876
Wohnort: D59192

BeitragVerfasst am: 22.02.2007, 12:28    Titel: Antworten mit Zitat

Hi,
erst habe ich auf die Frage von csderats auch so wie programmierer reagiert (wozu gibt es Dateien?)
aber als bei einem Projekt in FB ein paar zusätzliche Fonts einzubinden waren fand ich die Idee,
die Fontdaten in den Quelltext zu setzen, nicht übel.
Den Umweg über die DATA - Zeilen wollte ich aber nicht machen.
Warum nicht gleich ein Array dimensionieren und mit den Fontdaten füllen:
Code:
Dim as UInteger Fnt_VAR6X8(0 to 266) = {663208,0,0,0,504102912,1056964615,1792,67371008,_
...._
67109888,0,663306,252972549}

Diese Arrays packe ich mit in eine bi-Datei.
Es spart den Code der Datei oder Data-Zeilen erst einzulesen.
Die Dimensionierung als 'UIntegert' (4 Byte) erwies sich als praktisch,
da der Quelltext "nur" doppelt so groß wie die Ursprungsdatei wurde
(bei einem Byte Array kann er 3 bis 4x so lang werden!).
_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 22.02.2007, 17:32    Titel: Antworten mit Zitat

Hi volta,
äähhmm,
volta hat Folgendes geschrieben:
Warum nicht gleich ein Array dimensionieren und mit den Fontdaten füllen:
Code:
Dim as UInteger Fnt_VAR6X8(0 to 266) = {663208,0,0,0,504102912,1056964615,1792,67371008,_
...._
67109888,0,663306,252972549}
16MB-Arrays??
Geht das denn(ob das Sinn machen würde, ist eine andere Frage..)?
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
PMedia



Anmeldungsdatum: 14.08.2006
Beiträge: 2847

BeitragVerfasst am: 22.02.2007, 21:42    Titel: Antworten mit Zitat

Ytwinky, ich weiß, es gehen sogar 512-MB-Arrays, weil ich schon mit diesen gearbeitet habe.
Jedoch habe ich festgestellt, dass DIM bei ca ~2 MB Daten schluss macht. Dann empfielt sich REDIM.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 22.02.2007, 21:50    Titel: Antworten mit Zitat

Es geht nur bis ungefähr 2MB, da dann der Stack zu ende ist, man kann das allerdings beim compilieren angeben, wie groß der sein soll, glaube ich. Ich würde aber Redim verwenden, denn dann kommt das nicht im Stack, sondern im RAM (und man kann auch später die größe ändern).
_________________
Code:
#include "signatur.bi"
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
PMedia



Anmeldungsdatum: 14.08.2006
Beiträge: 2847

BeitragVerfasst am: 22.02.2007, 21:51    Titel: Antworten mit Zitat

PMedia's Post == Programmierer's Post
durchgeknallt durchgeknallt durchgeknallt durchgeknallt
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 22.02.2007, 22:33    Titel: Antworten mit Zitat

Mit der Ausnahme, dass programmierer noch mehr Hintergrund-Info's geliefert hat. zwinkern
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
PMedia



Anmeldungsdatum: 14.08.2006
Beiträge: 2847

BeitragVerfasst am: 22.02.2007, 22:51    Titel: Antworten mit Zitat

Was kümmert dem Programmierer schon der Stack... happy

Dim über Stack is sowieso doof, dann kann man weniger Rücksprungadressen per GoSub etc nehmen... happy

ReDim rulez! xD
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 22.02.2007, 22:53    Titel: Antworten mit Zitat

Assembler-, C- und C++-Programmierer müssen sich besonders kritische Gedanken über den Stack machen. zwinkern
Bei Assembler wegen der Hardwarenahen Programmierung; bei C(++) wg. Buffer-Overflows.
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
PMedia



Anmeldungsdatum: 14.08.2006
Beiträge: 2847

BeitragVerfasst am: 22.02.2007, 22:54    Titel: Antworten mit Zitat

Das is mir bekannt. Guck ma oben links, da is so ein Blaues Logo....... happy

Bei ASM musst ich mich auch schon mit dem Stack auseinandersetzen...
mit den Augen rollen mit den Augen rollen mit den Augen rollen mit den Augen rollen
hm, naja, ASM is schon etwas "älter" bei mir, als ich noch unbedingt mein OS proggern wollt happy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz