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:

16,32 u. 64 Bit Tabelle

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Andy19312



Anmeldungsdatum: 22.10.2005
Beiträge: 428

BeitragVerfasst am: 30.01.2007, 15:46    Titel: 16,32 u. 64 Bit Tabelle Antworten mit Zitat

Hallo zusammen,
ich wollte bei euch mal Nachfragen, wo ich 16,32 u. 64 Bit Tabellen herbekomme.

Ich meine in etwa so:
http://home.arcor.de/andy.bos/Bin%e4r/Bin%e4rcodetabelle8Bit.html

Diese hatte ich mir für 8 Bit erstellt.


Cu Andy
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
PMedia



Anmeldungsdatum: 14.08.2006
Beiträge: 2847

BeitragVerfasst am: 30.01.2007, 15:50    Titel: Antworten mit Zitat

LOLZ

Für gewöhnlich nehm ich für Umwandlungen von Binär<->Dezimal den Windows Rechner im Erweitert-Modus... geht auch Hexadezimal.
Warum baust dir net ein FreeBasic-Programm dafür?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 30.01.2007, 16:22    Titel: Antworten mit Zitat

Früher auf dem Commodore 64 gehörte so etwas noch zum Kopfrechentraining (man war viel schneller, als ständig in einer Tabelle suchen müssen), wenn man Sprites und eigene Zeichensätze auf kariertem Schreibblock mit Bleistift entworfen hatte und das Ganze als DATA-Zeilen für die FOR/READ/POKE-Schleife im Rechner eingegeben hatte...

Rechenfehler fielen dann jeweils als entsprechende Verstümmelungen im dargestellten Sprite auf...
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Andy19312



Anmeldungsdatum: 22.10.2005
Beiträge: 428

BeitragVerfasst am: 30.01.2007, 16:28    Titel: Antworten mit Zitat

FOR i = 1 TO 32768
OPEN "Adressen.txt" FOR APPEND AS #i
WRITE #i, BIN(i)
CLOSE #i
NEXT

sleep


Diesen Quelltext habe ich gerade laufen, jedoch hängt sich das Programm nach 250 Zeilen auf.

Hoffe ihr könnt mir helfen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Stormy



Anmeldungsdatum: 10.09.2004
Beiträge: 567
Wohnort: Sachsen - wo die schönen Frauen wachsen ;)

BeitragVerfasst am: 30.01.2007, 16:34    Titel: Antworten mit Zitat

Du schreibst mit deinem Code 32768-Mal die Datei neu mit genau einer Zeile. Ist nicht ganz der Sinn der Sache ! zwinkern

Hier meine Korrektur:
Code:
OPEN "Adressen.txt" FOR APPEND AS #1
FOR i = 1 TO 32768
WRITE #1, BIN(i)
NEXT
CLOSE #1

_________________
+++ QB-City +++ Die virtuelle Stadt für jeden Freelancer - Join the community!
Projekte: QB-City,MysticWorld (RPG), 2D-OpenGL-Tutorial
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 30.01.2007, 16:38    Titel: Antworten mit Zitat

Vor allem kann FreeBASIC, und ich denke auch QBASIC als Datei-"Index" maximal 255 haben, also wenn du 'Open "bla" For Output as #256' schreibst, dann geht es nicht mehr. zwinkern
_________________
Code:
#include "signatur.bi"
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
SpionAtom



Anmeldungsdatum: 10.01.2005
Beiträge: 395

BeitragVerfasst am: 30.01.2007, 21:44    Titel: Antworten mit Zitat

Oder man errechnet sich selbst eine:
Geht leider nur bis 4 Bits, da das LOCATE sonst meckert, aber wenn man statt auf den Bildschirm zu schreiben in eine Datei schreibt, dann kann man viel mehr Bits pro Zahl angeben...
Greetz

Code:
'Dualzahlen-Tabelle
'von Thomas Decker
'Januar 2007

1 CLS
INPUT "Anzahl der Bits? ", bits%
IF bits% < 1 OR bits% > 4 THEN END
tiefe% = 2 ^ (bits%)

        CLS
        p% = 5
        LOCATE 1, 1: PRINT " #)  "
        FOR i% = 1 TO bits%
                LOCATE 1, i% * p%: PRINT 2 ^ (bits% - i%)
        NEXT
        LOCATE 2, 1: PRINT STRING$(bits% * p% + 5, "Ä")

        k% = 0
        FOR bit% = 0 TO bits% - 1
        b% = 1
                FOR z% = 1 TO tiefe%
                        k% = k% + 1
                        IF ((z% - 1) MOD (2 ^ bit%)) = 0 THEN b% = (b% + 1) MOD 2: SLEEP
                        LOCATE 3 + z%, (bits% - bit%) * p%
                        PRINT b%;
                NEXT
        NEXT

_________________
Inzwischen gehöre ich auch zu den BlitzBasicern. Also verzeiht mir, wenn mir mal ein LOCATE 100, 100 oder dergleichen rausrutscht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Andy19312



Anmeldungsdatum: 22.10.2005
Beiträge: 428

BeitragVerfasst am: 02.02.2007, 01:03    Titel: Hier die verschiedenen Architekturen Antworten mit Zitat

4 Bit Architektur:
http://home.arcor.de/andy.bos/Bin%e4r/Bin%e4rcodetabelle4Bit.html

8 Bit Architektur:
http://home.arcor.de/andy.bos/Bin%e4r/Bin%e4rcodetabelle8Bit.html

16 Bit Architektur:
http://home.arcor.de/andy.bos/Bin%e4r/Bin%e4rcodetabelle16Bit.html
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 07.02.2007, 02:11    Titel: Re: 16,32 u. 64 Bit Tabelle Antworten mit Zitat

Hallo

Andy19312 hat Folgendes geschrieben:
Hallo zusammen,
ich wollte bei euch mal Nachfragen, wo ich 16,32 u. 64 Bit Tabellen herbekomme.


Mal ein kleines Rechenbeispiel. Eine 64-Bit-Tabelle hätte 2^64, also 184467440739551616 Einträge, kurz gesagt 184 Billiarden. Nur die 64 Einsen und Nullen und die dazugehörigen Dezimalzahlen ohne Leerstellen etc. wären als Text gespeichert eine Datenmenge von 1,2 Milliarden Terabyte oder auf alle 6 Milliarden Menschen aufgeteilt für jeden knapp 210 Gigabyte.

Mal abgesehen von die Kosten für Webspace und Traffic und ganz zu schweigen von der Ladezeit einer solchen Tabelle - nehmen wir mal an, du lässt dir auf einem Bildschirmfenster auf 30cm Höhe je 100 Zeilen der Tabelle anzeigen, was schon sehr klein ist, müsstest du fast 6 Jahre lang mit Lichtgeschwindigkeit runterscrollen, um an ihr Ende zu kommen.

Ausgedruckt ergäbe das einen Papierstapel von ca. 9 Milliarden Kilometern Höhe, was der 60-fachen Entfernug Erde-Sonne entspricht. Die Spitze dieses Stapels wäre damit weiter entfernt, als der Pluto.

Ausgebreitet könntest du mit dieser Papiermenge die ganz Erde elf mal komplett abdecken und wenn du 2,5 Sekunden brauchst, um eine Seite zu lesen und umzudrehen, hättest du schon beim Urknall damit anfangen müssen, um jetzt damit fertig zu sein.

Ich denke, es wäre effektiver, wenn du dich mal ein Bisschen mit der Umrechnung vom bzw. ins Binärsystem beschäftigst. Im Prinzip brauchst du nur eine Tabelle mit Zweierpotenzen und die dann jeweils abziehen oder addieren. Die Potenzen bis 2^10 z.B. kennst du schnell auswendig, wenn du das ein paar mal gemacht hast.

Gruß
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Michael712
aka anfänger, programmierer


Anmeldungsdatum: 26.03.2005
Beiträge: 1593

BeitragVerfasst am: 07.02.2007, 15:00    Titel: Antworten mit Zitat

lol durchgeknallt

Das war mal ein cooler Beitrag, Skilltronic grinsen
_________________
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: 08.02.2007, 19:58    Titel: Antworten mit Zitat

Code:

'***************************************************************************
' bin2dec.bas - QBasic-Program for converting binary into decimal numbers
' =========================================================================
'
'
'   \             Downloaded from
'    \ /\
'    ( )            http://www.antonis.de 
'  .( o ).
'                     ----==== Hottest QBasic Stuff on Earth !!! ====----
'
'***************************************************************************

DO
  INPUT "Gib die Bin„rzahl ein"; Binary$
  decimal& = 0: power% = 0
  Binary$ = UCASE$(Binary$)
  FOR i% = LEN(Binary$) TO 1 STEP -1
    digit% = ASC(MID$(Binary$, i%, 1)) - 48
    IF digit% < 0 OR digit% > 1 THEN decimal& = 0: EXIT FOR
    decimal& = decimal& + digit% * 2 ^ (power%)
    power% = power% + 1
  NEXT i%
PRINT decimal&
LOOP



Code:

'***************************************************************************
' dec2bib.bas - QBasic-Program for converting decimal into binary numbers
' =========================================================================
'
'
'   \             Downloaded from
'    \ /\
'    ( )            http://www.antonis.de   
'  .( o ).
'                     ----==== Hottest QBasic Stuff on Earth !!! ====----
'
'***************************************************************************


DO
  INPUT "Gib die Dezimalzahl ein"; decimal&
  Bin$ = ""
  h$ = HEX$(decimal&)
  FOR i% = 1 TO LEN(h$)
    digit% = INSTR("0123456789ABCDEF", MID$(h$, i%, 1)) - 1
    IF digit% < 0 THEN Bin$ = "": EXIT FOR
    j% = 8: k% = 4
    DO
      Bin$ = Bin$ + RIGHT$(STR$((digit% \ j%) MOD 2), 1)
      j% = j% - (j% \ 2): k% = k% - 1
      IF k% = 0 THEN EXIT DO
    LOOP WHILE j%
  NEXT i%
PRINT Bin$
LOOP

_________________
If hilfreicher_Beitrag then klick(location.here)

Klick


Zuletzt bearbeitet von csde_rats am 09.02.2007, 15:47, insgesamt 2-mal bearbeitet
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: 08.02.2007, 23:27    Titel: Re: 16,32 u. 64 Bit Tabelle Antworten mit Zitat

Andy19312 hat Folgendes geschrieben:
ich wollte bei euch mal Nachfragen, wo ich 16,32 u. 64 Bit Tabellen herbekomme
..wie csderats 'ohne worte' die gewünschten Werte darstellen will ist mir unklar(bei Werten>16Bit)..
Die 32-Bit-Werte liefert QB sowohl positiv als auch negativ(Bit 32 gesetzt)
Das entspricht aber nicht der dargestellten Tabellenform(nur positive Dezimalzahlen)
Hier sind also erklärende Worte erforderlich..
..und erst recht bei der 64-Bit-Variante, ich freue mich schon auf das zugehörige Programm..
..aber der Beitrag von csderats übertrifft längst nicht den wohldurchdachten Beitrag von Skilltronic,
der sich offensichtlich vor dem Posten mehr Gedanken gemacht hat!
Hut ab, Skilltronic zwinkern
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: 09.02.2007, 15:49    Titel: Antworten mit Zitat

programmierer hat Folgendes geschrieben:
lol

Das war mal ein cooler Beitrag, Skilltronic


Dem Stimme ich bei happy

Die beiden Progs habe ich auch nur auf die schnelle rausgesucht Zunge rausstrecken
_________________
If hilfreicher_Beitrag then klick(location.here)

Klick
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
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