Vergleichen und Wert herausfinden

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

JPD

Betreff: Vergleichen und Wert herausfinden

BeitragSo, Nov 07, 2004 0:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,

ich habe einen codierten Text mit 128 Zeichen. Jedes zeichen stellt eine Zahl dar, z.B. A = 10 B = 23 C = 40

Ich suche daher eine Schnelle Routine, welche mir sagen kann, bei A ist der Wert 10.

Mit If CODE$ = "A" Then Ausgabe = 10 ... ist zu langsam ...

Was könnte man da machen? X$(Y) ...


Bin über jede Hilfe wieder dankbar Wink ... mfg JPD
 

David

BeitragSo, Nov 07, 2004 1:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Mit einem Lookuptable z.B.! Smile

grüße
http://bl4ckd0g.funpic.de

JPD

BeitragSo, Nov 07, 2004 1:12
Antworten mit Zitat
Benutzer-Profile anzeigen
LookUpTable?

leider kenn ich das noch nicht ... Rolling Eyes ... ich habe es so gemacht:Ich habe einen String mit 128 Zeichen generiert, welcher an der Position 10 den jeweiligen Buchstaben / zeichen liefert. Nun habe ich eine Schleife die solange im String sucht bis die Zeichen stimmen. Bei übereinstimung wird der aktuelle Schleifenwert ausgewertet. Es funktioniert zwar so, ist aber bei Daten bei 1 Meg zu langsam ...

Lookuptabel ... kann ich mich da wo informieren?

mg JPD
 

David

BeitragSo, Nov 07, 2004 1:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Ein einfacher Array?

Ein simples Beispiel:
Code: [AUSKLAPPEN]

Graphics 800, 600, 32

Dim LookUp( 255 )

Init()
Print Encode( "Hallo" )
WaitKey

Function Init()
   For i = 0 To 255
      LookUp( i ) = i * 100 ; simpel ;)
   Next
End Function

Function Encode$( msg$ )
   res$ = ""
   
   For i = 1 To Len( msg )
      res$ = res$ + Str( LookUp( Asc( Mid( msg, i, 1 ) ) ) ) + " "
   Next
   
   Return res$
End Function


grüße
http://bl4ckd0g.funpic.de

JPD

BeitragSo, Nov 07, 2004 1:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja genau nach der Art kodier ich meinen Text. Es geht ums dekodieren. also müsste ich ja nur voher sagen bei A, also 65 ... verwende 20 oder so ...

mensch, dass ich da selber ned draufgekommen bin ... Rolling Eyes

danke nochmal ... 8) mfg JPD
 

morszeck

BeitragSo, Nov 07, 2004 1:20
Antworten mit Zitat
Benutzer-Profile anzeigen
DIM CHARS(256)

CHARS(65) = 10
CHARS(66) = 23
CHARS(67) = 40

char$ = "A"

Print CHARS(ASC(char$))

schneller gehts nicht mehr...
WinXpProf&SP2, B3D V1.88, B+ V1.40, BMax101Beta, AMD TB1.4GHz, DDR266/768MB, GeForce3@64MB

JPD

BeitragSo, Nov 07, 2004 1:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok ... dann versuch ichs so mal ... schneller gehts wirklich nimmer Very Happy ...

danke, mfg JPD
 

David

BeitragSo, Nov 07, 2004 1:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!

Ist das nicht genau das was mein Code oben auch macht??? Rolling Eyes

grüße
http://bl4ckd0g.funpic.de

JPD

BeitragSo, Nov 07, 2004 1:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Doch schon ... ich hab nur niocht auf die Usernamen geschaut Shocked ... dachte ich schreib immer mit dem gleichen ... passiert einem halt, wenn man gerade was proggt und soooo vertieft ist Wink

also danke nochmal, mfg JPD

TheShadow

Moderator

BeitragSo, Nov 07, 2004 13:45
Antworten mit Zitat
Benutzer-Profile anzeigen
soll wohl für verschlüsselung sein - ne?

Solche Verschlüsselungen sind auf dem untersten Sicherheits-Level = Cäsar-Verschlüsselung und wurden schon damals geknackt glaub ich Smile
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2

JPD

BeitragSo, Nov 07, 2004 14:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Ne, nicht direkt Verschlüsselung, aber ich versuch gerade nen schnellen Code für ne Base64-Codierung zu entwerfen. Codieren geht, aber wieder zurück dauert bis jetzt noch laaange ... Wink

Ich weiß, es gibt schon irgendwo nen Code dafür, aber ich will mal selber draufkommen, da man da ja bekanntlich am meißten lernt ...

mfg JPD

TheShadow

Moderator

BeitragSo, Nov 07, 2004 14:19
Antworten mit Zitat
Benutzer-Profile anzeigen
man kann eigene Verschlüsselungen ausdenken...
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2

Triton

BeitragSo, Nov 07, 2004 19:09
Antworten mit Zitat
Benutzer-Profile anzeigen
-> siehe Codearchiv Wink Rolling Eyes
Coding: silizium-net.de | Portfolio: Triton.ch.vu

JPD

BeitragSo, Nov 07, 2004 19:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Lol ... mach ich grad mal, mein Code ist echt irgendwie langsam ... ich brach für 100 kB ca. 20 Sekunden!! Shocked Shocked Shocked Shocked Shocked lol ... ohne DebugMode ...

mfg JPD Wink

JPD

BeitragSo, Nov 07, 2004 19:19
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe gerade nachgeschaut ... der Code ist ungefähr gleich schnell wie meiner, da er nach dem gleichen Prinzip arbeitet.

mfg JPD

TheShadow

Moderator

BeitragSo, Nov 07, 2004 21:00
Antworten mit Zitat
Benutzer-Profile anzeigen
hm also meine codes waren konnten 5MB (weiß nicht genau) Pro sek. lesen und in 2. datei entschlüsseln...
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2

JPD

BeitragSo, Nov 07, 2004 21:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Mit Base64 ???

Mal ne Frage dazu. Ich wandel in meiner Funktion die 3 Bytes erst in 24 Bit um. Danach les ich 4 mal 6 Bit und häng 2 Bit vorne dran. Das ganze mit MID$ und RIGHT$ und BIN$ und IF-Befehle ... Es muss doch ne andre Möglichkeit geben? Natürlich sind Texte mit 100 Zeichen in Echtzeit convertiert, aber ne Bitmap von 1 MB dauert da schon gleich mal 30 Sekunden!

mfG JPD

TheShadow

Moderator

BeitragSo, Nov 07, 2004 22:24
Antworten mit Zitat
Benutzer-Profile anzeigen
eigene verschlüsselung natürlich... mit strings sollte man da gar nicht arbeiten... ich hab immer 4 byte aufeinmal per Integer auf einen rutsch konvertiert Smile
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2

JPD

BeitragSo, Nov 07, 2004 22:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Naja, ok. Ich muss das dann glaub alleine voll fertig bringen. Vielleicht schaffe ich es ja irgendwie ... thx ... jpd

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group