![]() |
Re: Boolean = 1 Byte
Ich habe eben gerade ganz naiv zwei Methoden gegeneinander laufen lassen:
Delphi-Quellcode:
Beides jeweils 160 Millionen mal, wobei nach sechzehn Durchläufen immer ein Sprung erfolgte. Das ergab bei mir 1250 ms gegen 734 ms. Das ist nicht sehr aussagekräftig, weil hier der Cache stark dazwischenfunkt, aber als Tendenz ist das meiner Meinung nach durchaus gültig.
//1.
mov al, byte ptr [boolVar] or al, 1 mov byte ptr [boolvar], al //2. or [boolVar], 1 |
Re: Boolean = 1 Byte
Ich würde sagen: Geschwindigkeitsunterschiede tendieren gegen null.
Unterschiede sehe ich eigentlich nur hier: - Speicherverbrauch: Bools in Bits zu speichern kann bei sehr vielen Werten sinnvoll sein, um von 300 MByte nicht 87,5% brach liegen zu lassen - Mehr Aufwand, mehr Code, damit Fehlermöglichkeiten bei der bitweisen Speicherung. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:01 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