Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Int 4 in Turbo Pascal? (https://www.delphipraxis.net/25102-int-4-turbo-pascal.html)

glkgereon 1. Jul 2004 08:26


Int 4 in Turbo Pascal?
 
hi wie kann ich mir einen neuen int-typ machen, der über die grenzen der vorhandenen hinausgeht??

ich hab lediglich longint, also 2,1... Milliarden

ich will praktisvch einen int64 haben

neolithos 1. Jul 2004 09:42

Re: Int 4 in Turbo Pascal?
 
Definier ihn als Array [0..7] of Byte.

Und der rest ist Assembler in vielen funktionen.

glkgereon 1. Jul 2004 10:33

Re: Int 4 in Turbo Pascal?
 
das problem ist, ich ahb keinen dunst von assembler

ich brauch einfach nur einen quelltext....

noch besser wär es wenn ich den int64 nicht von -´sonstwieviel bis sonstwieviel-1 habe sondern von 0 bis sonstwieviel*2-1

ich haffe ihr versateht was ich meine, so wie word und integer...

Dax 1. Jul 2004 11:28

Re: Int 4 in Turbo Pascal?
 
Probiers mal mit Hagens DEC-Math in Diesem Thread.

sakura 1. Jul 2004 11:31

Re: Int 4 in Turbo Pascal?
 
Warum nutzt Du nicht einfach Int64 :gruebel:

...:cat:...

Dax 1. Jul 2004 11:33

Re: Int 4 in Turbo Pascal?
 
Ja. Gute Frage, aber vielleicht ist ihm Int64 doch noch nicht genug, sondern nur für Berechnungen mit kleinen(?) Zahlen groß genug. Hagens DEC ist aber zu empfehlen.

glkgereon 1. Jul 2004 11:34

Re: Int 4 in Turbo Pascal?
 
weil es int64 in Turbo Pascal nicht gibt, is sch***

sakura 1. Jul 2004 11:35

Re: Int 4 in Turbo Pascal?
 
Zitat:

Zitat von glkbkk
weil es int64 in Turbo Pascal nicht gibt, is sch***

Du hättest ja wenigstens erwähnen können, daß es um TP geht ;) Hm, da wird wohl nur Handarbeit übrig bleiben, da Hagens DEC da auch nicht geht :D

...:cat:...

P.S.: :oops: Im Titel stehts ja :roll:

Dax 1. Jul 2004 11:36

Re: Int 4 in Turbo Pascal?
 
Zitat:

Titel: Int 4 in Turbo Pascal?
:wall:

glkgereon 1. Jul 2004 11:38

Re: Int 4 in Turbo Pascal?
 
áber es muss ja gehen, wie hat borland das denn gemacht?

bei delphi muss das ja auch deklariert sein, oder???

Chewie 1. Jul 2004 11:39

Re: Int 4 in Turbo Pascal?
 
Klar geht das. Bei Delphi ist das aber in den Compiler integriert und dürfte recht komplex sein.

Dax 1. Jul 2004 11:40

Re: Int 4 in Turbo Pascal?
 
Borland hat das in den Compiler integriert, der erzeugt automatisch Instructions, die aus 2 Int32 einen Int64 machen. In TP müsste man das mit ASM auch machen können.

glkgereon 1. Jul 2004 11:52

Re: Int 4 in Turbo Pascal?
 
dassis jetzt dumm, da ich ka von assembler hab...

geht es denn, das ich miur einen typ mache, der einfach nur die zahlenspanne von longint im positivenb bereich umfasst?

würd zur not reichen

sakura 1. Jul 2004 11:55

Re: Int 4 in Turbo Pascal?
 
In Turbo Pascal ist das nicht so einfach. In Turbo Pascal gab es Integer (16 Bit) und LongInt (32 Bit, genauer 2x16 Bit).

Seit Delphi 2 und damit 32-Bit Delphi-Pascal ist Integer 32 Bit per Standard und Int64 sind 64 Bit (genau, 2x32 Bit ;))

In Turbo Pascal wird das mit Assembler sehr umständlich, da die "Komposit-Integer" von der CPU unterstützt werden, aber nur für das doppelte des eigentlich vorhandenen. TP ist 16 Bit und Int64 ist damit 4 mal so groß wie eigentlich möglich und dadurch solltest Du, wenn überhaupt das ganze über Arrays und reinem Pascal lösen - aber das wird ein riesen Aufwand...

...:cat:...

glkgereon 2. Jul 2004 12:21

Re: Int 4 in Turbo Pascal?
 
also gibt es keine lösung die ich ma eben in info da in tp reintun könnte, wie?

naja, schade, aber auch egal...

Dax 5. Jul 2004 12:14

Re: Int 4 in Turbo Pascal?
 
DER COMP-Typ!

Zitat:

Zitat von TP-Hilfe
Anmerkung: Comp ist ein 64 Bit großer Integer.

Und es geht doch..

glkgereon 5. Jul 2004 12:57

Re: Int 4 in Turbo Pascal?
 
gibt es comp in borland turbo Pascal?
hab ich in der hilfe nix von gesehen

mirage228 5. Jul 2004 13:02

Re: Int 4 in Turbo Pascal?
 
Zitat:

Zitat von Dax
DER COMP-Typ!

Zitat:

Zitat von TP-Hilfe
Anmerkung: Comp ist ein 64 Bit großer Integer.

Und es geht doch..

Hi,

da bin ich jetzt aber ein wenig ratlos... das steht tatsächlich auch so in meiner TP7 Hilfe.

Aber, irgendwas war da noch mit Comp...


mfG
mirage228

Dax 6. Jul 2004 06:16

Re: Int 4 in Turbo Pascal?
 
Ja, Comp gilt in TP wie in Delphi als Real-Typ, nicht als Integer, obwohl es ein 64Bit-Integer ist.

glkgereon 6. Jul 2004 07:02

Re: Int 4 in Turbo Pascal?
 
stimmt....

kann ich den denn als "normalen" integer nutzen?
er steht ja bei den integern nicht drin, sondern (nur!) bei den Fliesskommazahlen

aber den gibts...


PS:
zieht euch dass ma rein: anmerkung: Comp ist ein 64Bit großen Integer :-)
bitte kein ot...

Dax 7. Jul 2004 12:24

Re: Int 4 in Turbo Pascal?
 
Zitat:

Zitat von glkbkk
PS:
zieht euch dass ma rein: anmerkung: Comp ist ein 64Bit großen Integer :)

Hab' ich doch schon gesagt!

Zitat:

Zitat von glkbkk
kann ich den denn als "normalen" integer nutzen?
er steht ja bei den integern nicht drin, sondern (nur!) bei den Fliesskommazahlen

Zitat:

Zitat von Dax
Ja, Comp gilt in TP wie in Delphi als Real-Typ, nicht als Integer, obwohl es ein 64Bit-Integer ist.

Du wiederholst nur andere!

BtW: Du kannst ihn NICHT als normalen Int-Typ nutzen, weil TP nur mit 16Bit rechnet, 32 kann die CPU noch emulieren, aber für die 64Bit in TP brauchst du Fließkommarithmetik mit Mantissen und so.
Aber alle Funnktionen, die man auf Integer anwenden kann, lassen sich zu Float-Funktionen umschreiben, Beispiel:

Delphi-Quellcode:
procedure Inc(var i: integer); assembler;
asm
  inc i, 1
end;

procedure IncF(var f: Comp);
begin
  f := f + 1;
end;
Und wenn du alle genutzen Prozeduren und Funktionen so umschreibst, gehts.

ABER: Du kannst keine for-Schleifen benutzen, das musst du mit while oder repeat machen.

glkgereon 7. Jul 2004 12:51

Re: Int 4 in Turbo Pascal?
 
hat sich erledigt, um meinen plan umzusetzen und irgendwie 64 Bit-ints zu nehmen muss ich erst ma die ide manipulieren: max. stack grösse höchstens 64 KB

das reicht so gerade

neolithos 7. Jul 2004 12:59

Re: Int 4 in Turbo Pascal?
 
Zitat:

Zitat von glkbkk
hat sich erledigt, um meinen plan umzusetzen und irgendwie 64 Bit-ints zu nehmen muss ich erst ma die ide manipulieren: max. stack grösse höchstens 64 KB

das reicht so gerade

Mehr kann aber TP nicht! Da der 8086 bzw. 286 auch nicht mehr konnte!


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:46 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