Hi, wieviel Daten können immer auf unterschiedlichen Windows Systemen in eine RAM- Adresse geschrieben werden???
Hä? Eine RAM-Adresse ist eigentlich immer ein einziges Byte. Man kann auch mehrere gleichzeitig verarbeiten, aber die liegen dann an verschiedenen (aufeinanderfolgenden) Adressen.
Also jetzt nur mal fuer x86 register koennen geladen werden mit byte, double, quad, octal 8 - 16 - 32 - 64 bits respektive (auf AMD64)
Juni schrieb: > Wieso ist das immer ein Byte? Weil PCs Byte-Adressierbar sind (bzw. eigentlich jeder Computer). Jedes Byte hat eine eigene Adresse.
bumb schrieb: > Also jetzt nur mal fuer x86 > > register koennen geladen werden mit byte, double, quad, octal > > 8 - 16 - 32 - 64 bits respektive (auf AMD64) Nach Wikipedia: Als Register bezeichnet man in der Digital- oder Computertechnik Speicherbereiche, die innerhalb eines Prozessors direkt mit der eigentlichen Recheneinheit verbunden sind und die unmittelbaren Operanden und Ergebnisse aller Berechnungen aufnehmen. Register sind in der Regel höchstens so groß wie die Wortgröße des Prozessors (8, 16, 32 oder 64 Bit). Ich habe ja nach RAM (externen Speicher) gefragt. Warum ist eine RAM-Zelle immer ein Byte groß?
Juni schrieb: > Ich habe ja nach RAM (externen Speicher) gefragt. Warum ist eine > RAM-Zelle immer ein Byte groß? Konvention, wär zu kompliziert wenn jedes System da andere Größen hätte
Juni schrieb: > Ich habe ja nach RAM (externen Speicher) gefragt. Warum ist eine > RAM-Zelle immer ein Byte groß? Weil das Byte so definiert ist - als kleinste adressierbare Einheit.
Juni schrieb: > Ich habe ja nach RAM (externen Speicher) gefragt. Warum ist eine > RAM-Zelle immer ein Byte groß? Es geht darum, was die kleinste Dateneinheit ist, die man noch adressieren kann. Einzelne Bits im Speicher kann man auf dem PC nicht adressieren (aber es gibt Microcontroller, die können das). Die kleinste Dateneinheit, die man im PC adressieren kann, ist nunmal das Byte, d.h zwei aufeinanderfolgende Adressen adressieren zwei aufeinanderfolgende Bytes.
Ich verstehe so langsam... Ein char ist (in C) glaub ich ein Byte, also die kleinste Einheit und ein Bitfeld ist egal wieviel Bits immer mind. ein Byte. Wenn ein µC ein Bit Adressieren kann, wie ist dann die Adresse, wenn nicht in HEX, weil ja immer ein Sprung von ein Byte, oder?
Je nach Architektur haben Bytes zwar verschiedene Adressen, aber es können manchmal auch nur Doppelworte auf einmal geschrieben werden (und dann an bestimmten Bytegrenzen ausgerichtet!) und um ein Byte zu schreiben muss das Doppelwort gelesen und verändert geschrieben werden. Das hängt ganz vom Speicherinterface ab, aber 8 Bit sind schon länger nicht mehr in :)
Rolf Magnus schrieb: > Juni schrieb: >> Ich habe ja nach RAM (externen Speicher) gefragt. Warum ist eine >> RAM-Zelle immer ein Byte groß? > > Weil das Byte so definiert ist - als kleinste adressierbare Einheit. Definiert? Nein. Es gibt auch Bytes, die nicht 8 Bit lang sind. Siehe http://de.wikipedia.org/wiki/Byte Aber daß sich die 8 durchgesetzt hat, hat einen ganz simplen Grund: 8 ist eine Zweierpotenz - das macht Bitadressierung, Shiftoperationen, etc. innerhalb des Prozessors effizienter. Das Muster setzt sich dann bei den Prozessoregistern fort: die sind eine Zweierpotenz Bytes breit.
Uhu Uhuhu schrieb: > Rolf Magnus schrieb: >> Juni schrieb: >>> Ich habe ja nach RAM (externen Speicher) gefragt. Warum ist eine >>> RAM-Zelle immer ein Byte groß? >> >> Weil das Byte so definiert ist - als kleinste adressierbare Einheit. > > Definiert? Ja, zumindest ursprünglich mal. Es gibt da noch die Definition über den Zeichensatz, aber die ist heute ja aufgrund Wide- und Multibyte-Charsets nicht mehr sinnvoll. > Es gibt auch Bytes, die nicht 8 Bit lang sind. Ich hab nichts gegenteiliges behauptet. Wenn die kleinste adressierbare Einheit des jeweiligen Systems nicht 8 Bit lang ist, ist dort auch ein Byte nicht 8 Bit lang. > Siehe http://de.wikipedia.org/wiki/Byte "Der Begriff wurde 1956 von Werner Buchholz geprägt in einer frühen Designphase eines IBM-Computers.[3] Im Original beschrieb er eine Breite von sechs Bit und stellte die kleinste direkt adressierbare Speichereinheit eines entsprechenden Computers dar, und damit konnte man die Buchstaben und gängige Sonderzeichen zum Beispiel in Quelltexten von Programmen oder anderen Texten speichern (also verschiedene Zeichen)." Das ist eben die ursprüngliche Definition. Heute ist das allerdings durch unterschiedliches Verständnis ziemlich aufgeweicht, aber z.B. in C ist das Byte auch heute noch so definiert.
Juni schrieb: > Hi, > wieviel Daten können immer auf unterschiedlichen Windows Systemen in > eine RAM- Adresse geschrieben werden??? Reinschreiben kannst du, soviel du willst. Rauslesen nur das letzte Byte.
Klaus Wachtler schrieb: > Juni schrieb: >> Hi, >> wieviel Daten können immer auf unterschiedlichen Windows Systemen in >> eine RAM- Adresse geschrieben werden??? > > Reinschreiben kannst du, soviel du willst. > Rauslesen nur das letzte Byte. die Frage ist ob es im Virtuelleadressen oder Physikalische geht? Jede Anwendung kann in die gleiche Virtuelle Adresse ihre werte reinschreibem.
Rolf Magnus schrieb: > Ja, zumindest ursprünglich mal. Nein, definitiv nicht. Es war immer die kleinste direkt adressierbare Einheit und damit hardwareabhängig. Von einer "ursprünglichen Definition" kann nicht die Rede sein. Die alten Fernschreiber hatten übrigens 5-Bit-Zeichen - Stichwort Baudot-Code -, die doppelt belegt waren. Umschaltzeichen wählten jeweils bei Bedarf die andere Ebene aus. Frühe Conmputer nutzten Fernschreiber zumindst als Konsolschreiber.
Uhu Uhuhu schrieb: > Rolf Magnus schrieb: >> Ja, zumindest ursprünglich mal. > > Nein, definitiv nicht. Es war immer die kleinste direkt adressierbare > Einheit und damit hardwareabhängig. Ähm, das ist doch genau das, was ich geschrieben hab. Du hast behauptet, es sei nicht so: Uhu Uhuhu schrieb: > Rolf Magnus schrieb: >> Juni schrieb: >>> Ich habe ja nach RAM (externen Speicher) gefragt. Warum ist eine >>> RAM-Zelle immer ein Byte groß? >> >> Weil das Byte so definiert ist - als kleinste adressierbare Einheit. > > Definiert? Nein.
Uhu Uhuhu schrieb: > Die alten Fernschreiber hatten übrigens 5-Bit-Zeichen - Stichwort > Baudot-Code Dafür habe ich sogar Transcoder gebaut (Baudot<->Teletype ASCII). Aber niemalsnienicht ist einer auf die Idee gekommen, das Byte zu nennen. Gruss Reinhard
Rolf Magnus schrieb: > Heute ist das allerdings > > durch unterschiedliches Verständnis ziemlich aufgeweicht, aber z.B. in C > ist das Byte auch heute noch so definiert. das ein Byte = 6Bit ist???
Evil schrieb: > Rolf Magnus schrieb: >> Heute ist das allerdings durch unterschiedliches Verständnis ziemlich >> aufgeweicht, aber z.B. in C ist das Byte auch heute noch so definiert. > > das ein Byte = 6Bit ist??? Nein, daß (und ich schreibe es gerne nochmal..,) ein Byte die kleiste Einheit ist, die man einzeln adressieren kann, also in C-Sprache: Die kleinste Einheit, auf die man einen Zeiger definieren kann.
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.