Hallo, kann mir jemand sagen, wie ich in Delphi ein Byte addieren kann? Also Variable in Delphi x: Byte und y:Byte. x = 192 (= 1100 0000) + y = 3 (= 0000 0011) = 195 (= 1100 0011) Wie geht das in Delphi? Also ich will die beiden Bytes verknüpfen
Versteht das Problem nicht. a: byte; b: byte; c: byte: a:= 12; b:= 20; c:= a + b;
Naja, ich will eigentlich die Bytes in Binärdarstellung verknüpfen. 1100 0000 +0000 0011 ---------- =1100 0011
Byte schrieb: > Naja, ich will eigentlich die Bytes in Binärdarstellung verknüpfen. was versteht du unter verknüpfen? Oder, Xoder, UND oder doch wieder nur die Addition?
@Byte: Was soll denn bei der Verknüpfung von 10101100 mit 11001010 herauskommen?
Byte schrieb: > Naja, ich will eigentlich die Bytes in Binärdarstellung verknüpfen. > > 1100 0000 > +0000 0011 > ---------- > =1100 0011 Byte schrieb: > Und natürlich. Das wäre aber ODER (OR)
Ich brauch ja von dem einen Byte auch nur den vorderen Teil und von dem anderen den hinteren Teil (also jeweils 4 bits)
Byte schrieb: > Naja, ich will eigentlich die Bytes in Binärdarstellung verknüpfen. Das Programm verknüpft Daten binär. Das siehst du bloss von aussen nicht. Gruss Reinhard
Byte schrieb: > Ich brauch ja von dem einen Byte auch nur den vorderen Teil und von dem > anderen den hinteren Teil (also jeweils 4 bits) Dann musst Du aber die unbenötigten Teile vor der "Verknüpfung" ausmaskieren. x := (a AND 15) OR (b AND 240) 15 ist 0x0F (00001111), 240 ist 0xF0 (11110000), keine Ahnung, wie man in dieser für viele Zwecke ungeeigneten Programmiersprache hexadezimale Konstanten schreibt.
Hi Rufus, das geht ganz einfach: $FF $FFFF $FFFFFFFF $FFFFFFFFFFFFFFFF Die Sprache ist für sehr viele Zwecke super geeignet, mindestens genauso wie C++. So ist Delphi nahezu die einzige Sprache die noch Standalone Exe Dateien auch für Windows 7 64 Bit erzeugt (im einstelligen Megabyte-Bereich), ohne DLL's, ohne .NET Geraffel, ohne das man Installerpackages erzeugen oder verwenden muss. Einfach eine Exe, so wünscht man sich ich das, oder wie war das nochmal mit dem "manifest" ?
Rufus Τ. Firefly schrieb: > 15 ist 0x0F (00001111), 240 ist 0xF0 (11110000), keine Ahnung, wie man > in dieser für viele Zwecke ungeeigneten Programmiersprache hexadezimale > Konstanten schreibt. Also ich finde das völliger Schwachsinn. Jeder behauptet Delphi wäre eine nicht mehr genutze bzw. überflüssige Sprache. Doch mit ihr kann man doch relativ schnell Programme erstellen kann. Vielleicht hier mal eine Liste um zu zeigen was alles mit Delphi erstellt wurde. Dabei auch sehr weit verbreitete bzw. häufig genutzte: http://www.embarcadero.com/rad-in-action/application-showcase
Delphi Liebhaber schrieb: > So ist Delphi nahezu die einzige Sprache die noch Standalone Exe Dateien > auch für Windows 7 64 Bit erzeugt Nö, das geht nach wie vor auch mit einem C- bzw. C++-Compiler, selbst dem, der zum Visual Studio gehört. Mein Seitenhieb auf Pascal bezog sich eher auf die erst mit Spracherweiterungen wie Delphi erlangte Nutzbarkeit und auf die meiner Ansicht nach sehr ... "logische" Syntax (wann exakt werden Zeilen mit Semikolon terminiert und wann nicht?).
Rufus Τ. Firefly schrieb: > (wann exakt werden Zeilen mit Semikolon terminiert und wann nicht?). ... also, in Delphi werden keine Zeilen, sondern Ausdrücke mit einem Semikolon beendet. Das ist nichts ungewöhnliches. In C/C++/C# kenne ich es nicht anders.
Rufus Τ. Firefly schrieb: > (wann exakt werden Zeilen mit > Semikolon terminiert und wann nicht?). Garnicht, mit dem Semikolon werden Ausdrücke getrennt.
Danke für die Spitzfindigkeiten. Ihr wisst beide exakt, was ich gemeint habe.
Rufus Τ. Firefly schrieb: > Ihr wisst beide exakt, was ich gemeint > habe. Nö, sorry, verstehe ich nicht. In pascaloiden Sprachen gehört das Semikolon nicht zur Anweisung, in C-artigen schon.
Rufus Τ. Firefly schrieb: > Danke für die Spitzfindigkeiten. Ihr wisst beide exakt, was ich gemeint > habe. Ja, ja - vorm else darf kein Semikolon stehen. Dafür sagt einem Delphi, dass das da nicht hingehört, wären C krampfhaft versucht, dem Code hinter einem Fehler irgendwelchen Sinn zu entlocken und dann irgendwo weit entfernt zu scheitern, ohne in der Lage zu sein, irgendwelche ernsthaft hilfreichen Fehlermeldungen zu produzieren.
Irgendwie sollte sich "Byte" mal entscheiden, welche Verknüpfung er denn nun eigentlich will... Byte schrieb: > kann mir jemand sagen, wie ich in Delphi ein Byte addieren kann? Peter II schrieb: >> Naja, ich will eigentlich die Bytes in Binärdarstellung verknüpfen. > > was versteht du unter verknüpfen? Oder, Xoder, UND oder doch wieder nur > die Addition? Byte schrieb: > Und natürlich. Tom schrieb: > Das wäre aber ODER (OR) Byte schrieb: > Ich brauch ja von dem einen Byte auch nur den vorderen Teil und von dem > anderen den hinteren Teil (also jeweils 4 bits)
Ich mag Delphi. Ich mag C und ich mag Assembler. Und ich setze alles ein, je nachdem, wie es nötig ist. Das Strichpunkt-else Problem ärgert mich auch, insbesondere da es in C anders ist und man permanent drauf reinfällt aber deswegen Delphi als pauschal ungeeignet abzutun? Naja....
Schweigende Minderheit schrieb: > pauschal ungeeignet != "für viele Zwecke ungeeignet" Logik ist nicht so Dein Ding.
Rufus Τ. Firefly schrieb: > "für viele Zwecke ungeeignet" Für welche Zwecke ist Delphi denn ungeeignet?
Rufus Τ. Firefly schrieb: > Logik ist nicht so Dein Ding. wenn Logik dein Ding wäre, hättest du dich in deinem ersten Beitrag schon klar ausgedrückt: 1. Du magst die Pascal-Syntax nicht und insbesondere stört dich, dass 2. vor dem else kein Semikolon stehen darf. Geschrieben hast du aber "keine Ahnung, wie man in dieser für viele Zwecke ungeeigneten Programmiersprache hexadezimale Konstanten schreibt.", während es um Delphi ging. Tja, auch mods machen manchmal Fehler. So ist das halt ...
Rufus Τ. Firefly schrieb: > Mein Seitenhieb auf Pascal bezog sich eher auf die erst mit > Spracherweiterungen wie Delphi erlangte Nutzbarkeit und auf die meiner > Ansicht nach sehr ... "logische" Syntax (wann exakt werden Zeilen mit > Semikolon terminiert und wann nicht?). Laut diesem Beitrag http://www.bernd-leitenberger.de/pascal-und-c.shtml ist eher C unlogisch und nicht nutzbar.
>>Logik ist nicht so Dein Ding.
Vielen Dank für die Beleidigung.
Als Moderator würde ich so einen Beitrag löschen...
Edi R. schrieb: > Für welche Zwecke ist Delphi denn ungeeignet? Für die Erstellung von Programmen, die auf irgendwas anderem als Windows-PCs laufen sollen.
Rufus Τ. Firefly schrieb: > Für die Erstellung von Programmen, die auf irgendwas anderem als > Windows-PCs laufen sollen. Kylix - Delphi for Linux
OK, das wars dann aber auch mit den Ausnahmen (wenn man das völlig obsolete DOS übersieht). Von aktiver Pflege und Weiterentwicklung kann allerdings bei Kylix auch nicht die Rede sein.
Rufus Τ. Firefly schrieb: > OK, das wars dann aber auch mit den Ausnahmen NÖ, http://de.wikipedia.org/wiki/Free_Pascal
Rufus Τ. Firefly schrieb: > Für die Erstellung von Programmen, die auf irgendwas anderem als > Windows-PCs laufen sollen. ... und das soll eine Konsequenz aus Pascal's Syntaregeln sein ?
> OK, das wars dann aber auch mit den Ausnahmen
XE2 kompiliert auch für OS X und iOS (sogar von Windows aus)
Peter II schrieb: > NÖ, http://de.wikipedia.org/wiki/Free_Pascal Das ist Pascal, nicht Delphi. Und Pascal wurde erst durch die Borland'schen Erweiterungen zu mehr als einem Lehrsystem verwendbar. Ich verweise hier auf das in Pascal nicht mögliche modulare Programmieren und auf die besonders grottigen Dateizugriffmechanismen in Pascal. "Turbo-Pascal" als Delphi-Vorläufer hat hier etliche der fehlenden Dinge hinzugefügt. Das Merkel schrieb: > ... und das soll eine Konsequenz aus Pascal's Syntaregeln sein ? Natürlich nicht, aber wenn man sich Mühe gibt, Dinge nicht verstehen zu wollen, dann kann man auch auf so eine Idee kommen.
Rufus Τ. Firefly schrieb: > Das ist Pascal, nicht Delphi. Die verschiedenen Dialekte können sowohl über Kommandozeilenschalter als auch im Quelltext durch $MODE ausgewählt werden. Derzeit sind folgende Einstellungen möglich: Delphi – Delphi-Kompatibilitätsmodus TP – Turbo-Pascal-Kompatibilitätsmodus (Object-Pascal-Erweiterungen werden abgeschaltet) FPC – Der Vorgabemodus OBJFPC – FPC mit Object-Pascal-Erweiterungen GPC – GNU-Pascal-Kompatibilitätsmodus MACPAS – Kompatibilitätsmodus für Pascaldialekte auf Mac OS, wie Think Pascal, Metrowerks Pascal und MPW Pascal
Rufus Τ. Firefly schrieb: > Natürlich nicht, aber wenn man sich Mühe gibt, Dinge nicht verstehen zu > wollen, dann kann man auch auf so eine Idee kommen. > Danke für die Spitzfindigkeiten. Ihr wisst beide exakt, was ich gemeint > habe. Sorry, Rufus, ich weiß es bisher immer noch nicht, würde es aber gerne wissen. Ich weiß bisher, dass dir die Syntax von Pascal nicht passt und dass du es schlecht findest, dass Delphi nur in der Windows-Welt benutzt wird. Ein Beispiel für deine Behauptung, dass Delphi zur Programmierung von vielen Dingen ungeeignet sei, hast du bisher immer noch nicht gebracht. Kannst Du mal ein konkretes Programmierproblem nennen, für das Delphi ungeeignet ist ?
(nachdem der TO nicht in der Lage ist, die Frage so zu formulieren, dass sie auch irgendjemand versteht, machen wir mal OT weiter..) @Rufus Τ. Firefly du machst dich hier ziemlich lächerlich (sorry) JEDE Programmiersprache ist "für viele Zwecke ungeeignet" Aussage = 0 sollte also wohl nur provozieren, was ja geschafft wurde ;-) viele Sachen die du schreibst stimmen nicht (mehr) dass man z.B. nur für Win32 programmieren kann (siehe XE2 und Lazarus) man nicht modular programmieren kann (wobei ich nicht genau weiß was du meint) (siehe BPL Dateien oder multitier/datasnap usw ) das mit dem ";" hab ich hier schon mal beantwortet Beitrag "Re: Compiler bringt Fehlermeldung verkettetet Liste-weshalb?" edit: Kylix ist allerdings etwas, ...was man als delphi/pascal "Befürworter" nicht als 1. Argument bringen würde ;-)
Rufus Τ. Firefly schrieb: > Das ist Pascal, nicht Delphi. Und Pascal wurde erst durch die > Borland'schen Erweiterungen zu mehr als einem Lehrsystem verwendbar. Nanana, mein Lieber. Mit einem hast du Recht: Die Sprache ist PASCAL - auch bei Delphi. Also: Man programmiert also nicht in Delphi, sondern mittels Delphi in Pascal - und das ist dank des Konzeptes von Delphi als grafisch orientiertem Entwurfssystem um Größenordnungen besser, einfachen und schneller als der Rest der Welt, wenn man mal vom längst untergegangenen VB3 absieht. Abgesehen davon ist die Sprache Pascal schon immer wesentlich besser weil systematischer und sauberer im Sprachkonzept gewesen als alle Dialekte von B, BCPL, C, Ansi-C, C++, Java, C# und was da noch so kommen mag. Ich denke mal, daß all diejenigen, die noch Pascal resp. Delphi kennen, gut daran tun, dieses Software-Gefilde am Leben zu erhalten. Solche Dinge wie FPC, Lazarus, MSEide und Konsorten (incl. Virtual Pascal) können den Leuten zeigen, daß es auch anders geht als mit Visual C. Nebenbei: Ich hatte Mitte der 80er Jahre Gerätesteuerungen mit HiTech-Pascal geschrieben, Pascal war damals schon für Maschinensteuerungen geeignet. Als ich dann das ach so tolle C sah, hat's mir erstmal den Magen umgedreht... Ich sag's mal so: C ist erste Wahl für Leute, die ihre Unabkömmlichkeit durch unverständliche Quellen sicherstellen wollen. Und nun genug gemeckert. Gute Nacht zusammen. W.S.
Rufus Τ. Firefly schrieb: > keine Ahnung, wie man > in dieser für viele Zwecke ungeeigneten Programmiersprache hexadezimale > Konstanten schreibt. Free Pascal kennt auch binäre Konstanten: %10101010 http://www.freepascal.org/docs-html/ref/refse6.html#x18-170001.6 Bit gepackte strukturierte Datentypen gibt es ebenfalls. http://www.freepascal.org/docs-html/ref/refse14.html Martin
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.