Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin

Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> Sonstiges
Autor
Nachricht
KleinesVoodoo
Coder
Coder

Anmeldedatum: 17.04.2008
Beiträge: 78

FreeBasic Array
Verfasst am: 22.07.2008, 19:33

Ich übersetze grad eine Funktion von FreeBasic nach VB6. Nun bin ich bei einem kompliziert aussehedem Array angekommen. Hier blick ich ja noch durch:

Visual Basic: [code]Static As Integer PC2(1 To 4Cool = _
{ 14, 17, 11, 24, 1, 5, _
3, 28, 15, 6, 21, 10, _
23, 19, 12, 4, 26, 8, _
16, 7, 27, 20, 13, 2, _
41, 52, 31, 37, 47, 55, _
30, 40, 51, 45, 33, 48, _
44, 49, 39, 56, 34, 53, _
46, 42, 50, 36, 29, 32 }[/code]
Die Elemente 1 bis 48 bekommen der Reihe nach einen Wert zugewiesen.
Aber hier verstehe ich die Welt nicht mehr (Array mit 3 Dimensionen):

Visual Basic: [code]Static As Uinteger SBox(1 To 8, 0 To 15, 0 To 3) = _
{ { { 14, 0, 4, 15 }, { 4, 15, 1, 12 }, { 13, 7, 14, 8 }, { 1, 4, 8, 2 }, { 2, 14, 13, 4 }, { 15, 2, 6, 9 }, { 11, 13, 2, 1 }, { 8, 1, 11, 7 }, { 3, 10, 15, 5 }, { 10, 6, 12, 11 }, { 6, 12, 9, 3 }, { 12, 11, 7, 14 }, { 5, 9, 3, 10 }, { 9, 5, 10, 0 }, { 0, 3, 5, 6 }, { 7, 8, 0, 13 } }, _
{ { 15, 3, 0, 13 }, { 1, 13, 14, 8 }, { 8, 4, 7, 10 }, { 14, 7, 11, 1 }, { 6, 15, 10, 3 }, { 11, 2, 4, 15 }, { 3, 8, 13, 4 }, { 4, 14, 1, 2 }, { 9, 12, 5, 11 }, { 7, 0, 8, 6 }, { 2, 1, 12, 7 }, { 13, 10, 6, 12 }, { 12, 6, 9, 0 }, { 0, 9, 3, 5 }, { 5, 11, 2, 14 }, { 10, 5, 15, 9 } }, _
{ { 10, 13, 13, 1 }, { 0, 7, 6, 10 }, { 9, 0, 4, 13 }, { 14, 9, 9, 0 }, { 6, 3, 8, 6 }, { 3, 4, 15, 9 }, { 15, 6, 3, 8 }, { 5, 10, 0, 7 }, { 1, 2, 11, 4 }, { 13, 8, 1, 15 }, { 12, 5, 2, 14 }, { 7, 14, 12, 3 }, { 11, 12, 5, 11 }, { 4, 11, 10, 5 }, { 2, 15, 14, 2 }, { 8, 1, 7, 12 } }, _
{ { 7, 13, 10, 3 }, { 13, 8, 6, 15 }, { 14, 11, 9, 0 }, { 3, 5, 0, 6 }, { 0, 6, 12, 10 }, { 6, 15, 11, 1 }, { 9, 0, 7, 13 }, { 10, 3, 13, 8 }, { 1, 4, 15, 9 }, { 2, 7, 1, 4 }, { 8, 2, 3, 5 }, { 5, 12, 14, 11 }, { 11, 1, 5, 12 }, { 12, 10, 2, 7 }, { 4, 14, 8, 2 }, { 15, 9, 4, 14 } }, _
{ { 2, 14, 4, 11 }, { 12, 11, 2, 8 }, { 4, 2, 1, 12 }, { 1, 12, 11, 7 }, { 7, 4, 10, 1 }, { 10, 7, 13, 14 }, { 11, 13, 7, 2 }, { 6, 1, 8, 13 }, { 8, 5, 15, 6 }, { 5, 0, 9, 15 }, { 3, 15, 12, 0 }, { 15, 10, 5, 9 }, { 13, 3, 6, 10 }, { 0, 9, 3, 4 }, { 14, 8, 0, 5 }, { 9, 6, 14, 3 } }, _
{ { 12, 10, 9, 4 }, { 1, 15, 14, 3 }, { 10, 4, 15, 2 }, { 15, 2, 5, 12 }, { 9, 7, 2, 9 }, { 2, 12, 8, 5 }, { 6, 9, 12, 15 }, { 8, 5, 3, 10 }, { 0, 6, 7, 11 }, { 13, 1, 0, 14 }, { 3, 13, 4, 1 }, { 4, 14, 10, 7 }, { 14, 0, 1, 6 }, { 7, 11, 13, 0 }, { 5, 3, 11, 8 }, { 11, 8, 6, 13 } }, _
{ { 4, 13, 1, 6 }, { 11, 0, 4, 11 }, { 2, 11, 11, 13 }, { 14, 7, 13, 8 }, { 15, 4, 12, 1 }, { 0, 9, 3, 4 }, { 8, 1, 7, 10 }, { 13, 10, 14, 7 }, { 3, 14, 10, 9 }, { 12, 3, 15, 5 }, { 9, 5, 6, 0 }, { 7, 12, 8, 15 }, { 5, 2, 0, 14 }, { 10, 15, 5, 2 }, { 6, 8, 9, 3 }, { 1, 6, 2, 12 } }, _
{ { 13, 1, 7, 2 }, { 2, 15, 11, 1 }, { 8, 13, 4, 14 }, { 4, 8, 1, 7 }, { 6, 10, 9, 4 }, { 15, 3, 12, 10 }, { 11, 7, 14, 8 }, { 1, 4, 2, 13 }, { 10, 12, 0, 15 }, { 9, 5, 6, 12 }, { 3, 6, 10, 9 }, { 14, 11, 13, 0 }, { 5, 0, 15, 3 }, { 0, 14, 3, 5 }, { 12, 9, 5, 6 }, { 7, 2, 8, 11 } } }[/code]
Kann wer helfen? Very Happy
_________________
 
ZiG
Überflieger
Überflieger

Anmeldedatum: 16.04.2008
Beiträge: 421


Verfasst am: 22.07.2008, 21:08

Was genau willst du denn wissen?

In dem Code werden jeweils in einer Klammer dem Array vier Werte zugeteilt, da ", 0 to 3".

Und das ganze 128 mal da 8 mal 16. (1 to 8, 0 to 15)
Vorstellen kannst du dir das ganze so: Ich versuchs mal darzustellen^^
Code:
[1 to 8]<br />1--------------[0 to 15]---0------------[0 to 3]-0-1-2-3<br />2                      |---1<br />3                      |---usw.<br />4<br />5<br />6<br />7<br />8
 
KleinesVoodoo
Coder
Coder

Anmeldedatum: 17.04.2008
Beiträge: 78


Verfasst am: 23.07.2008, 10:21

Danke, ich hab's mir mal anders aufgeschrieben (Klick). Ist das so richtig?
Muss ich in Visual Basic nun 4 * 16 * 8 = 128 * 4 = 400 + 80 + 32 = 512 Einzelzuweisungen schreiben. Surprised

Und, damit ich es wirklich richtig verstehe:

Visual Basic: [code] 0, 1, 2, 3

{ 14, 0, 4, 15 } 0
{ 4, 15, 1, 12 } 1 1
{ 13, 7, 14, 8 } 2

'...[/code]
Wird zu:

Visual Basic: [code]Static SBox(1 To 8, 0 To 15, 0 To 3) As Long

SBox(1, 0, 0) = 14
SBox(1, 0, 1) = 0
SBox(1, 0, 2) = 4
SBox(1, 0, 3) = 15

'...[/code]
Richtig? Smile

// Edit:

Wenn ja, dann hab ich das Array nun passend formatiert (Klick).
Prozedur dazu: Klick
_________________


 
ZiG
Überflieger
Überflieger

Anmeldedatum: 16.04.2008
Beiträge: 421


Verfasst am: 23.07.2008, 13:40


Ja sollte stimmen.
Außer es gibt ne einfachere Methode die Zuweisungen in VB6 ähnlich wie in Freebasic zu machen.
Kenne aber keine.

Aber wenn ich mir das so ansehe, würde ich nur ein 2 Dimensionales Array machen. Man könnte die Daten auch per For Schleife von einem anderen Array an dieses dann übergeben.
Außer ich steh jetzt irgendwie auf dem Schlauch.

Also: (1 to 128, 1 to 4)
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> Sonstiges

Tags: visual basic, array, dimensionen, code

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Problem mit always on top funktion 1038 30.10.2009, 11:26
Keine neuen Beiträge IntStr()funktion 1176 11.10.2007, 08:49
Keine neuen Beiträge TopMost Funktion unter DirectX 921 27.07.2007, 10:48
Keine neuen Beiträge Wie Funktion nutzen ? 1098 29.06.2007, 20:59
Keine neuen Beiträge update funktion einbauen 1341 28.01.2007, 23:11
 



[ Time: 0.3712s ][ Queries: 93 (0.1889s) ][ GZIP on - Debug on ]