![]() |
fehler bei glkGereons baseToBase unit
Liste der Anhänge anzeigen (Anzahl: 1)
wollte gestern mal eine liste mit in binär codierten zahlen erzeugen.
und habe dafür glkgereon's code hergenommen, was nicht funktioniert. test-szenario:
Delphi-Quellcode:
output der unit UbaseToBase [falsch] [edit=alcaeus](siehe Anhang)[/edit]
uses ..., ubasetobase;
function mathop(z1,z2:dword;op:dword):dword; begin case op of 0 : result := z1 and z2; 1 : result := z1 or z2; 2 : result := z1 xor z2; 3 : result := z1 shr z2; 4 : result := z1 shl z2; else result := 0 end; end; function dw2system(d,base:dword;strlen:byte):string; // converts d in a system based on base // like dw2system(255,2,8) = '11111111' // or dw2system(255,16,2) = 'FF' // by retnyg const cypher = '0123456789ABCDEF'; var i : dword; begin setlength(result,strlen); fillchar(pointer(result)^,strlen,48); while (d > 0) and (strlen > 0) do begin i := d mod base; result[strlen] := cypher[i+1]; dec(d,i); dec(strlen); d:=d div base; end; end; function dectobin(z:dword):string; var s: string;l:dword; begin result := dw2system(z,2,8); // my code - works // result:= dectobase(z,2); // glkgereon's code - not work end; function outstr(n:dword):string; begin result :=dectobin(n); result:=inttostr(n)+':'+result; end; procedure TForm1.Button4Click(Sender: TObject); const ca=';'; var i,j,z2 : integer; append: boolean; s:string; f:textfile; begin z2:=7; append := false; assignfile(f,'out.csv'); rewrite(f); writeln(f,'number1;number2;AND;OR;XOR;SHR;SHL'); for i := 0 to 255 do begin s := outstr(i) + ca + outstr(z2); for j := 0 to 4 do s := s + ca + outstr(mathop(i,z2,j)); writeln(f,s); end; closefile(f); sendmessage(handle,wm_close,0,0); end; output meines codes [richtig]:
Code:
@admin : diesmal bitte ned wieder reinpfuschen :evil:
number1;number2;AND;OR;XOR;SHR;SHL
0:00000000;7:00000111;0:00000000;7:00000111;7:00000111;0:00000000;0:00000000 1:00000001;7:00000111;1:00000001;7:00000111;6:00000110;0:00000000;128:10000000 2:00000010;7:00000111;2:00000010;7:00000111;5:00000101;0:00000000;256:00000000 3:00000011;7:00000111;3:00000011;7:00000111;4:00000100;0:00000000;384:10000000 4:00000100;7:00000111;4:00000100;7:00000111;3:00000011;0:00000000;512:00000000 5:00000101;7:00000111;5:00000101;7:00000111;2:00000010;0:00000000;640:10000000 6:00000110;7:00000111;6:00000110;7:00000111;1:00000001;0:00000000;768:00000000 7:00000111;7:00000111;7:00000111;7:00000111;0:00000000;0:00000000;896:10000000 8:00001000;7:00000111;0:00000000;15:00001111;15:00001111;0:00000000;1024:00000000 9:00001001;7:00000111;1:00000001;15:00001111;14:00001110;0:00000000;1152:10000000 10:00001010;7:00000111;2:00000010;15:00001111;13:00001101;0:00000000;1280:00000000 11:00001011;7:00000111;3:00000011;15:00001111;12:00001100;0:00000000;1408:10000000 12:00001100;7:00000111;4:00000100;15:00001111;11:00001011;0:00000000;1536:00000000 13:00001101;7:00000111;5:00000101;15:00001111;10:00001010;0:00000000;1664:10000000 14:00001110;7:00000111;6:00000110;15:00001111;9:00001001;0:00000000;1792:00000000 15:00001111;7:00000111;7:00000111;15:00001111;8:00001000;0:00000000;1920:10000000 16:00010000;7:00000111;0:00000000;23:00010111;23:00010111;0:00000000;2048:00000000 17:00010001;7:00000111;1:00000001;23:00010111;22:00010110;0:00000000;2176:10000000 18:00010010;7:00000111;2:00000010;23:00010111;21:00010101;0:00000000;2304:00000000 19:00010011;7:00000111;3:00000011;23:00010111;20:00010100;0:00000000;2432:10000000 20:00010100;7:00000111;4:00000100;23:00010111;19:00010011;0:00000000;2560:00000000 21:00010101;7:00000111;5:00000101;23:00010111;18:00010010;0:00000000;2688:10000000 22:00010110;7:00000111;6:00000110;23:00010111;17:00010001;0:00000000;2816:00000000 23:00010111;7:00000111;7:00000111;23:00010111;16:00010000;0:00000000;2944:10000000 24:00011000;7:00000111;0:00000000;31:00011111;31:00011111;0:00000000;3072:00000000 25:00011001;7:00000111;1:00000001;31:00011111;30:00011110;0:00000000;3200:10000000 26:00011010;7:00000111;2:00000010;31:00011111;29:00011101;0:00000000;3328:00000000 27:00011011;7:00000111;3:00000011;31:00011111;28:00011100;0:00000000;3456:10000000 28:00011100;7:00000111;4:00000100;31:00011111;27:00011011;0:00000000;3584:00000000 29:00011101;7:00000111;5:00000101;31:00011111;26:00011010;0:00000000;3712:10000000 30:00011110;7:00000111;6:00000110;31:00011111;25:00011001;0:00000000;3840:00000000 31:00011111;7:00000111;7:00000111;31:00011111;24:00011000;0:00000000;3968:10000000 32:00100000;7:00000111;0:00000000;39:00100111;39:00100111;0:00000000;4096:00000000 33:00100001;7:00000111;1:00000001;39:00100111;38:00100110;0:00000000;4224:10000000 34:00100010;7:00000111;2:00000010;39:00100111;37:00100101;0:00000000;4352:00000000 35:00100011;7:00000111;3:00000011;39:00100111;36:00100100;0:00000000;4480:10000000 36:00100100;7:00000111;4:00000100;39:00100111;35:00100011;0:00000000;4608:00000000 37:00100101;7:00000111;5:00000101;39:00100111;34:00100010;0:00000000;4736:10000000 38:00100110;7:00000111;6:00000110;39:00100111;33:00100001;0:00000000;4864:00000000 39:00100111;7:00000111;7:00000111;39:00100111;32:00100000;0:00000000;4992:10000000 40:00101000;7:00000111;0:00000000;47:00101111;47:00101111;0:00000000;5120:00000000 41:00101001;7:00000111;1:00000001;47:00101111;46:00101110;0:00000000;5248:10000000 42:00101010;7:00000111;2:00000010;47:00101111;45:00101101;0:00000000;5376:00000000 43:00101011;7:00000111;3:00000011;47:00101111;44:00101100;0:00000000;5504:10000000 44:00101100;7:00000111;4:00000100;47:00101111;43:00101011;0:00000000;5632:00000000 45:00101101;7:00000111;5:00000101;47:00101111;42:00101010;0:00000000;5760:10000000 46:00101110;7:00000111;6:00000110;47:00101111;41:00101001;0:00000000;5888:00000000 47:00101111;7:00000111;7:00000111;47:00101111;40:00101000;0:00000000;6016:10000000 48:00110000;7:00000111;0:00000000;55:00110111;55:00110111;0:00000000;6144:00000000 49:00110001;7:00000111;1:00000001;55:00110111;54:00110110;0:00000000;6272:10000000 50:00110010;7:00000111;2:00000010;55:00110111;53:00110101;0:00000000;6400:00000000 51:00110011;7:00000111;3:00000011;55:00110111;52:00110100;0:00000000;6528:10000000 52:00110100;7:00000111;4:00000100;55:00110111;51:00110011;0:00000000;6656:00000000 53:00110101;7:00000111;5:00000101;55:00110111;50:00110010;0:00000000;6784:10000000 54:00110110;7:00000111;6:00000110;55:00110111;49:00110001;0:00000000;6912:00000000 55:00110111;7:00000111;7:00000111;55:00110111;48:00110000;0:00000000;7040:10000000 56:00111000;7:00000111;0:00000000;63:00111111;63:00111111;0:00000000;7168:00000000 57:00111001;7:00000111;1:00000001;63:00111111;62:00111110;0:00000000;7296:10000000 58:00111010;7:00000111;2:00000010;63:00111111;61:00111101;0:00000000;7424:00000000 59:00111011;7:00000111;3:00000011;63:00111111;60:00111100;0:00000000;7552:10000000 60:00111100;7:00000111;4:00000100;63:00111111;59:00111011;0:00000000;7680:00000000 61:00111101;7:00000111;5:00000101;63:00111111;58:00111010;0:00000000;7808:10000000 62:00111110;7:00000111;6:00000110;63:00111111;57:00111001;0:00000000;7936:00000000 63:00111111;7:00000111;7:00000111;63:00111111;56:00111000;0:00000000;8064:10000000 64:01000000;7:00000111;0:00000000;71:01000111;71:01000111;0:00000000;8192:00000000 65:01000001;7:00000111;1:00000001;71:01000111;70:01000110;0:00000000;8320:10000000 66:01000010;7:00000111;2:00000010;71:01000111;69:01000101;0:00000000;8448:00000000 67:01000011;7:00000111;3:00000011;71:01000111;68:01000100;0:00000000;8576:10000000 68:01000100;7:00000111;4:00000100;71:01000111;67:01000011;0:00000000;8704:00000000 69:01000101;7:00000111;5:00000101;71:01000111;66:01000010;0:00000000;8832:10000000 70:01000110;7:00000111;6:00000110;71:01000111;65:01000001;0:00000000;8960:00000000 71:01000111;7:00000111;7:00000111;71:01000111;64:01000000;0:00000000;9088:10000000 72:01001000;7:00000111;0:00000000;79:01001111;79:01001111;0:00000000;9216:00000000 73:01001001;7:00000111;1:00000001;79:01001111;78:01001110;0:00000000;9344:10000000 74:01001010;7:00000111;2:00000010;79:01001111;77:01001101;0:00000000;9472:00000000 75:01001011;7:00000111;3:00000011;79:01001111;76:01001100;0:00000000;9600:10000000 76:01001100;7:00000111;4:00000100;79:01001111;75:01001011;0:00000000;9728:00000000 77:01001101;7:00000111;5:00000101;79:01001111;74:01001010;0:00000000;9856:10000000 78:01001110;7:00000111;6:00000110;79:01001111;73:01001001;0:00000000;9984:00000000 79:01001111;7:00000111;7:00000111;79:01001111;72:01001000;0:00000000;10112:10000000 80:01010000;7:00000111;0:00000000;87:01010111;87:01010111;0:00000000;10240:00000000 81:01010001;7:00000111;1:00000001;87:01010111;86:01010110;0:00000000;10368:10000000 82:01010010;7:00000111;2:00000010;87:01010111;85:01010101;0:00000000;10496:00000000 83:01010011;7:00000111;3:00000011;87:01010111;84:01010100;0:00000000;10624:10000000 ... usw [edit=alcaeus]Auch wenn der Beitrag nicht so oft gelesen wird, hab ich mal den falschen Output als Anhang eingefuegt. Die Scrollbars waren gewaltig :roll: Mfg, alcaeus[/edit] |
Re: fehler bei glkGereons baseToBase unit
also, du meinst der weg Dec2Bin funzt nicht richtig?
kann ich kaum glauben, muss ich erstmal nachprüfen.... *Schluck* sch** was hab ich denn da gemacht??? also er hat völlig recht, mein code erzeugt völligen schwachfug...werds ausbessern....hoffentlich |
Re: fehler bei glkGereons baseToBase unit
Liste der Anhänge anzeigen (Anzahl: 2)
Ich hab den Fehler!!!
meine procedure GetChar ist sollte zwar richtig sein, gibt aber offensichtlich falsche werte zurück....ist Ascii/Ansii auf manchen maschinen anders implementiert? wobei das nicht der einzige fehler ist... :( ?????? der behält das vorherige Result im Speicher. mit einem Result:='' vor der Schleife in DecToBase funzt es. IST DER DUMM???? Edit: Im Anhang die korrigierte Fassung... @Chakotay1308: Bitte in meinen UrsprungsPost rein, ich kanns ja nicht mehr...thx |
Re: fehler bei glkGereons baseToBase unit
Hi,
okay, habe die Anhänge geupdatet. Deine Änderung ist nun also auch in der Code-Library vorhanden. Ich habe aber keine weitere Anmerkung dazu geschrieben. ;) Ich schließe den Beitrag damit und verschiebe einfach mal zurück in die öffentliche DP, da die Diskussion ja jetzt nicht mehr aktuell ist. Falls jedoch doch noch ein Fehler vorhanden sein sollte, entweder per PN oder ![]() Chris |
DP-Maintenance
Dieses Thema wurde von "Chakotay1308" von "Neuen Beitrag zur Code-Library hinzufügen" nach "Sonstige Fragen zu Delphi" verschoben.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz