Hi, in meinem Skript steht, dass sich mit 32 Bit max. 4 GB Speicher adressieren lassen. Aber wie kann ich das rechnerisch zeigen? Meine Überlegung ist die folgende: 2^(32)=4.294.967.296 Bit Bit ---> Byte umrechnen 4.294.967.296 Bit / 8 = 536.870.912 Byte Byte ---> KiloByte umrechnen 536.870.912 Byte / 1024 = 524288 KB KiloByte ---> MegaByte umrechnen 524288 KB / 1024 = 512 MB Ab hier sehe ich schon, dass es falsch ist, aber warum? Wie kann ich dann zeigen, dass mit 32 Bit max. 4 GB Speicher adressiert werden können? Danke für eure Hilfe Lg
Du hast schon richtig gerechnet, mit 32 Addressletungen kannst du 2^32 Stellen adressieren. Dies sind dann die 4G. Wenn jede dieser Stellen 8 Bit Register besitzt, dann sind dies halt 4 Giga-Bytes. Es kommt halt immer darauf an, was man damit adressiert. Gruß Volker
Die kleinste direkt adressierbare Einheit der meisten Prozessoren ist ein 8-Bit-Byte und nicht ein Bit. Deine Divison durch 8 entfällt also.
Der erste Schritt stimmt nch, danach kommt der Fehler. Es lassen sich 4.294.967.296 Bytes adressieren. Dein Fehler ist, dass du jedes Bit adressierst. Dies ergibt dann die 4 GB
@ Thomas: Kann es sein, dass Du hier im ziemlich falschen Forum postest? Oder zahlst dafür, dass es Dir jemand umrechnet? ;-)
> Meine Überlegung ist die folgende: > 2^(32)=4.294.967.296 Bit Wieso Bit? Seit wann wird Speicher in Bit gerechnet? (Von den einzelnen Bits in FPGAs mal abgesehen ;-) ) Bei PCs und Mikrocontrollers wird normalerweise der Speicher in Byte gerechnet. Also kann man mit einer 32bit Adresse auch grob 4 Gb (+paar Zerquetschte) adressieren. Aber Vorsicht, es gibt auch Adressierung von Datenworten mit 16Bit breite..... (z.B. AVR-Flashspeicher). Die Speicherhersteller von DRAMS und SRAMS geben i.d.R. die Kapazität in Bits an. Das muss aber nicht der Adressierung von "aussen" entsprechen. Dazu muss man sich die Organisationsform anschauen. <nicht 100% sicher> Bei Festplatten wird auch nicht mehr in Bytes, sondern in Anzahl logischer Blöcke gerechnet. (Mit variabler Blockgröße) Das hängt glaub damit zusammen, dass bei IDE nur 16-bit Adressierung möglich ist. Dann werden 65535 Blöcke mit jeweils ca. 512 Byte bis ??? Bytes adressiert. </nicht 100% sicher>
Die Addressierung von Festplattenblöcken ist ne Geschichte für sich... Ganz früher wurde direkt Lesekopf + Cylinder + Sektor angegeben. Später dann haben die Platten dem Bios gemeldet, sie hätten 255 Leseköpfe, und das intern umgerechnet... Inzwischen arbeiten die ATA Platten meist im LBA48 Modus, hier wird nur noch eine 48bittige Blocknummer verwendet, bei 512Bytes/Block sind das dann max. 144115188075855872 Bytes. Sollte erstmal wieder ein bischen reichen, das ständige rumgehampel mit Kapazitätsgrenzen (letzte war bei 128GiB) wurd ja schon fast lästig. Zur Umrechnung von Bytes -> Kilobytes gibts hier ne Tabelle: http://xkcd.com/394/ "Kilo" bedeutet je nach Kontext immer mal was anderes... Neulich erst eine Werbung für nen Computer mit "0,99 GB Ram" gesehen...
Ihr seid heute aber ungewöhnlich geduldig ;) Ich hab damit gerechnet, dass er zur Sau gemacht wird :P
fux wrote: > Ihr seid heute aber ungewöhnlich geduldig ;) Ich hab damit gerechnet, > dass er zur Sau gemacht wird :P Die hatten ihren Spaß alle schon beim humanoiden Roboter rotfl
Hey liebe Leute,ich habe ein paar Fragen, die mir ganz stören. Danke für die Lösungen im Voraus! 1. wie wird die Daten im Speicher angeordent? 2. Wie wird der Speicher adressiert(angesprochen)? 3. Wo durch wird die die Größe des Adressraums eingeschränkt? 4. Was sind die Interrupts, wozu benötigt man sie? 5. Weshalb werden Prioritäten vergeben? 6. Wie werden Register gesichert beim Subroutinen-Aufruf,Kontext-Switch und Interrupt?
Smack Shaka wrote:
> Hey liebe Leute,ich habe ein paar Fragen, die mir ganz stören.
Du meinst du hast ein paar Fragen, die du auf einem Aufgabenzettel aus
der Schule bekommen hast und nun beantworten musst?
Nein,ich MUSS diese Fragen nicht beantworten aber ich soll zu meinem Verstehen beim Lernen!
Du musst lernen selber zu lernen, sprich selber Informationen zusammentragen zu können. Wikipedia erschlägt dich geradezu mit Informationen zu deinen Fragen.
Wikipedia hilft ihm nicht. Das zitieren schon seine Klassenkameraden. Er will sich mit einer anderen Formulierung abheben...
Das ist zu anstrengend für die Generation STRG-C/STRG-V
Da versteh ich nicht, das die kaum Linux benutzen... markieren, mittlere Maustaste dahin wo's hin soll.
Ahhhhh, sowas nervt. Das versucht man "selber Informationen zusammen[zu]tragen" und man findet bloß dämliches Gequatsche von Leuten die berechtigterweise nicht helfen wollen aber dafür seitenweise Dreck schreiben und damit auch noch gut bei google indexiert werden. Wenn ich für jedes "... machs selber WIR helfen dir da bestimmt nicht..." das ich ertragen musste einen ct bekommen würde wär ich der verdammt noch mal reichste Mensch des Universums. Sucht ihr euch mal ne Beschäftigung, und/oder lernt soziale Kompetenz (bezogen auf "omfg... studier was andres!") Cheers
deris wrote:
> Sucht ihr euch mal ne Beschäftigung, und/oder lernt soziale Kompetenz
Selber.
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.