gesegmenteerd geheugen, fout???????

Pagina: 1
Acties:
  • 20 views sinds 30-01-2008

Anoniem: 100658

Topicstarter
Ik las het volgende stukje tekst en heb het idee dat er iets niet deugd vwb het accepteren van geheugenadressen door DOS. Kan iemand mij pleasssssssse vertellen of wat hier staat deugd of niet?????
Een gesegmenteerd adres gebruikt hexadecimalen van vier cijfers voor de meeste geheugenadressen. Het voegt een segmentadres toe wanneer het programma de grenzen van het segment overschrijdt. Een programma in het eerste segment gebruikt dus een adres van 0000 tot FFFF. Als het overgaat in het tweede segment, wordt het adressegment 1 toegevoegd, dus kan 1:0000 tot 1:FFFF het adres in het tweede segment zijn. Een meer algemene manier om dit te zien is het maken van twee groepen van vier cijfers, waarbij de eerste groep de vier belangrijkste cijfers van het segmentadres vertegenwoordigt en de tweede groep de laatste vier belangrijke cijfers. Een voorbeeld: 1000: 789A. Het eerste deel is minder belangrijk omdat het wordt gebruikt als opvulling. Bij een 8088 processor is het grootst bruikbare segmentadres F:FFFF, of conventioneel gezien F000:FFFF. Elke F representeert vier binaire cijfers of activeerbare adresdraden, en de 8088 had in totaal 20 adresregels, met de namen A0 tot A19. DOS was echter gemaakt voor het accepteren van gesegmenteerde adressen tot FFFF:FFFF. De toegelaten extra adresruimte bij gesegmenteerd adresseren is niet beschikbaar bij de 20 adresregels van de 8088. Met de introductie van de 80286-processor kwamen er vier adresregels bij. Dit betekent dat de 286 letterlijk maximaal 16 Mb geheugenadresruimte kan zien,ondanks datDOS dat niet kan. En houdt ook in dat, door het gebruik van dt extra adresregel A20, een adres van 1FFFFF kan worden bereikt. Het volledige hexadecirnale getal dat door het gesegmenteerde adres van FFFF:FFFF wordt vertegenwoordigd is 1OFFEF, ruim binnen het door de fysieke adresregels A0 tot A20 toegestane bereik. Met de juiste tactiek kon DOS nu adressen zien tot maximaal FFFF:FFFF. Dit was bijna een volledig segment van 64 Kb aan extra geheugen. Deze 64 Kb (minus 16 bytes) staat nu bekend als High Memory Area (HMA). Het wordt gemaakt en beheerd door een stuurprogramma met de naam HIMEM.SYS.

  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

xxxrogerxxx - het lijkt haast wel huiswerk ;)

Maareh - dit is niet de manier om een topic te starten op GoT :) Je topic heeft een slechte topic titel (geen OS, veel ?'s erin), toont geen eigen iniatief, en is ook nog eens volledig onleesbaar.

Begin even opnieuw :)

Dit topic is gesloten.