AGB  ·  Datenschutz  ·  Impressum  







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

ReadInt32 ???

Ein Thema von tabbi · begonnen am 29. Sep 2007 · letzter Beitrag vom 29. Sep 2007
Antwort Antwort
tabbi

Registriert seit: 28. Sep 2007
9 Beiträge
 
#1

ReadInt32 ???

  Alt 29. Sep 2007, 00:48
hallo,

ich hab da mal eine kurze Verständisfrage (ist ja schon späät und bei paar bier hehe)

bei .NET gibts bei den Streams eine Funktion namens ReadInt32. Es wird also ein 32bit Integer eingelesn.

So bei Delphi un beim TFileStream gibts ja nur Read, bei dem man angeben kann wieviel Bytes eingelesen werden sollen.

Verstehe ich das richtig wenn ich jetzt das gleiche wie ReadInt32 machen will, einfach nur bei count eine 4 eintrage, denn 4 Byte = 32 Bit ???

Oder ist da ein denkfehler ?
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: ReadInt32 ???

  Alt 29. Sep 2007, 00:59
Ja. Wobei du bei Netzwerkstreams aufpassen musst, ob die Streamquelle die gleiche Byte-Kodierung verwendet wie du. (Big-/Little-Endian)
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
tabbi

Registriert seit: 28. Sep 2007
9 Beiträge
 
#3

Re: ReadInt32 ???

  Alt 29. Sep 2007, 01:05
hi, ok gut aber bei binärdateien ist das egal oder (exe,...) ?
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: ReadInt32 ???

  Alt 29. Sep 2007, 01:10
Nein, ist es nicht.

Beispiel:

System A ist ein stinknormales Win32-x86-System. System B ist ein IBM-Mainframe.

System B schickt jetzt den Integer 42 (0x0000002A) an System A.

Im Speicher von System B sieht der so aus: 00 00 00 2A

System A empfängt die 4 Bytes an Daten und liest sie zur weiteren Verwendung in ein Prozessor-Register. Und hoppala, plötzlich wird aus dem 00 00 00 2A im Speicher der Integer 0x2A000000, und das ist was ganz anderes als 42.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
tabbi

Registriert seit: 28. Sep 2007
9 Beiträge
 
#5

Re: ReadInt32 ???

  Alt 29. Sep 2007, 01:23
ah ok. Danke für den kleinen Exkurs, wusste ich noch garnicht.
  Mit Zitat antworten Zitat
Antwort Antwort


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 19:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz