AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Unterschied zwischen "not" und "false"?

Ein Thema von romber · begonnen am 11. Aug 2010 · letzter Beitrag vom 12. Aug 2010
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.659 Beiträge
 
Delphi 12 Athens
 
#1

AW: Unterschied zwischen "not" und "false"?

  Alt 11. Aug 2010, 15:29
Hast Du den Code von himitsu einmal ausprobiert?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
WM_CLOSE

Registriert seit: 12. Mai 2010
Ort: königsbronn
398 Beiträge
 
RAD-Studio 2009 Pro
 
#2

AW: Unterschied zwischen "not" und "false"?

  Alt 11. Aug 2010, 20:02
in den älteren Delphi versionen (ich glaube<6) hängt das von den Definitionen von "true" und "false" ab:
einige API funktionen geben kein Delphi true zurück, sonder eines aus c/c++ das ist dann von mir aus nicht 1 sondern <> 0
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#3

AW: Unterschied zwischen "not" und "false"?

  Alt 11. Aug 2010, 20:16
einige API funktionen geben kein Delphi true zurück, sonder eines aus c/c++ das ist dann von mir aus nicht 1 sondern <> 0
Nicht ganz. Es ist sogar -1 und das ist das ganz große Problem:
true (Delphi) = 1, false (Delphi) = 0
true (C) = -1, false (C) = 0
Das kommt daher, weil man für C den Wert Byte($FF) benutzt, bei dem nun mal -1 rauskommt.

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Sfaizst

Registriert seit: 16. Jun 2008
33 Beiträge
 
#4

AW: Unterschied zwischen "not" und "false"?

  Alt 11. Aug 2010, 20:42
Ich programmier jetz schon relativ lange, aber jetz brennt mir doch ne ziemlich primitive frage auf der zunge.

Wie kann ein Byte, welches 8 Bit hat und im wertebereich von 0..255 liegt bei $FF (ist bei mir 255 sogar mitm wincalc (auch wenn ichs so wusste) ) den Wert -1 annhemen?
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#5

AW: Unterschied zwischen "not" und "false"?

  Alt 11. Aug 2010, 20:44
-1 hat aber auch bei calc den Byte-Wert FF.
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.875 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Unterschied zwischen "not" und "false"?

  Alt 11. Aug 2010, 20:55
Weil bei signed das oberste Bit das Vorzeichen bestimmt

Wegen 0 - Zahl = negative Zahl

Code:
0           -       1 =      -1
00000000(1) - 1000000 = 11111111
Markus Kinzler

Geändert von mkinzler (11. Aug 2010 um 21:04 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#7

AW: Unterschied zwischen "not" und "false"?

  Alt 11. Aug 2010, 21:31
Siehe dazu das Zweierkomplement.

Und das andere: Es ist Definitionssache Wenn du $FF in einen unsigned Byte schreibst, dann hast du 255. Aber in der Regel werden vorzeichenbehaftete Datentypen genommen.

Außerdem ist das doch glaub ich andersherum: true = -1 in Delphi oder nicht?

MfG
Fabian
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#8

AW: Unterschied zwischen "not" und "false"?

  Alt 11. Aug 2010, 21:34
Ich habs noch nicht ausprobiert, aber da sollte +1 rauskommen. In Delphi ist der Boolean wohl so definiert: type Boolean = (false, true); und damit ist true +1 und false 0.

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Micha88
(Gast)

n/a Beiträge
 
#9

AW: Unterschied zwischen "not" und "false"?

  Alt 12. Aug 2010, 09:44
Zitat:
der (Delphi 2006) compiler compiliert beides zu:
Code:
test bl, bl
jnz xxx
Das interessiert mich jetzt aber.. wie kommt man in D2009 denn an den Assemlber-Code (das ist doch Asembler?) ?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.372 Beiträge
 
Delphi 12 Athens
 
#10

AW: Unterschied zwischen "not" und "false"?

  Alt 12. Aug 2010, 09:58
Strg+Alt+C (das geht in jedem Delphi) oder mal oben im Menü suchen (Ansicht > Debug > CPU).
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:42 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