Grafikkarten Referat - Hilfe benötigt

Flockyflo

Lieutenant
Registriert
Okt. 2008
Beiträge
977
Hi,

ich muss Ende nächster Woche (jaaa, bin mal wieder sehr früh dran^^) ein Referat über Grafikkarten halten.
Ich habe auch einen Aufgabenzettel von meinem Lehrer erhalten, auf dem Fragen stehen, die ich wärend der Präsentation (bzw. mit meiner Präsentation) beantworten muss.
Die meisten sind schon verbaut und erledigt, jedoch komme ich mit 3 Problemkandidaten nicht weiter:

Frage:
1.) Aus wie vielen Bildpunkten besteht ein Textzeichen bei einer SVGA-Auflösung und 80x25 Zeichen?

2.) Wie kann der Speicherbedarf einer Grafikkarte ermittelt werden?

3.) Welche Größe (theoretisch und praktisch) sollte der Video-Speicher einer Grafikkarte bei einer True-Color-Darstellung mit einer Auflösung von 1024 x 768 mindestens haben? Begründen Sie, warum der Grafikspeicher in der Praxis wesentlich größer dimensioniert ist als berechnet. Wie viele Farben lassen sich darstellen?


Zu 1.)
SVGA: 800×600×256 (höhe/breite/farben), Speicherbedarf: ~468,75 KB (weiss nicht obs weiterhilft)
Sind die 80x25 jetzt die Maße für das Textzeichen, oder ist das wieder etwas anderes?

Zu 2.)
Bei der Frage steh ich komplett auf dem Schlauch^^
Es für mich das gleiche als würde er das mit HDD stellen. Dann wäre meine Antwort: Sag mir was du drauf haben willst und ich sag dir wie groß deine HDD mindestens sein muss....

Zu 3.)
Größe: Ich rate mal darauf los: 2,25 MB? (1024x768x24(24bit=16,7mille farben)=bit=byte=kb=2,25mb) Dürfte das stimmen?
Grafikspeicher in der Praxis größer als berechnet: Für mich derzeit schwer zu erklären. Ich weiss halt, das wirklich alles am PC einen Puffer braucht, falls mal mehr Daten kommen....so in der Art.
Wie viele Farben: 16,7 Millionen

würde mich sehr freuen, wenn ihr mir weiterhelfen könntet
 
der speicher ist größer dimensioniert, weil mehrere sachen wie z.b. texturen gespeichert werden, die können bei den aktuellen spielen auch 1GB groß sein.
 
zu 1.)
müsste das nicht sein: (800*600)/(80*25) ?

denn wenn 2000 Zeichen sich 480k Bildpunkte teilen müssen, hat jedes Zeichen 240 Bildpunkte, oder?
 
Du findest einige Antworten auf Wikipedia. Probier mal dein Glück.

mfg
 
Was ihr heut in der Schule lernts...über sowas hatte ich eine Vorlesung im Hauptstudium....det hätts früher nich gegeben ;-)

zu 1: 80x25 soll hier bedeuten, dass du 80 Zeichen in einer Zeile und 25 Zeilen haben sollst. also hättest du theoretisch 800/80=10 Pixel horizontal und 600/25= 24 Pixel vertikal. Allerdings hat man so ja keine Zwischenräume..und ich weiß jetzt nicht wie sich dein Lehrer das gedacht hat. Also ob du den Zwischenraum selbst mitrechnen musst, oder ob jedes Zeichen etwas platz rechts und links im vorgegebenen Rahmen hat.

zu 3: So wies gestellt ist würde ichs auch so machen wie du geschrieben hast...ich kann aber irgendwie nicht glauben, dass das so auf der GraKa abgespeichert werden soll...
 
1.) Aus wie vielen Bildpunkten besteht ein Textzeichen bei einer SVGA-Auflösung und 80x25 Zeichen?

Antwort siehe bawde.

800 Pixel Auflösung horizontal / 80 Zeichen = 10 Pixel pro Zeichen.
640 Pixel Auflösung vertikal / 25 Zeichen = 24 Pixel pro Zeichen.

10x24= 240 Pixel pro Zeichen

2.) Wie kann der Speicherbedarf einer Grafikkarte ermittelt werden?

Im üblichen Fall (horizontale x vertikale Auflösung x Farbtiefe in Bit) / 8 (Umrechnung Bit -> Byte) / 1024 (Umrechnung Byte -> Kilobyte) / 1024 (Umrechung Kilobyte -> Megabyte). Zuzüglich eventueller Buffer-Speicher (Double / Triple-Buffer.)

Bsp :

800x600x32 = 15360000 / 8 = 1920000 / 1024 = 1875 / 1024 = 1,831 MB unkomprimiert
1280x1024x32 = 41943040 / 8 = 5242880 / 1024 = 5120 / 1024 = 5,0 MB unkomprimiert

3.) Welche Größe (theoretisch und praktisch) sollte der Video-Speicher einer Grafikkarte bei einer True-Color-Darstellung mit einer Auflösung von 1024 x 768 mindestens haben? Begründen Sie, warum der Grafikspeicher in der Praxis wesentlich größer dimensioniert ist als berechnet. Wie viele Farben lassen sich darstellen?

Bsp :

1024*768*24 = 18874368 / 8 = 2359296 / 1024 = 2304 / 1024 = 2,25 MB unkomprimiert

Größendifferenz zum meist real verwendeten Speicher ergibt sich z.B. aus Effekten wie Frame-Buffer (Double bzw. Triple Buffer) oder eventuell höherer Farbtiefe (32-Bit).

24 Bit ermöglichen die Darstellung von insgesamt 16777216 Farben.
8 Bit pro Farbkanal (R/G/B) ermöglichen 256 Abstufen pro Kanal. 256*256*256 = 16777216.
 
Zuletzt bearbeitet:
Zu 2 und 3. Speicherbedarf= horizontale Auflösung * vertikale Auflösung * Farbtiefe (in bit), hast du also richtig gerechnet.
Farbtiefe 2^24= 16,78 Mio Farben, zumindest ohne Alphakanal. Allerdings muss man den Grafikspeicher in der Größe immer verdoppeln, wenn er nicht mehr ausreicht. Also brauchst du eine Karte mit 4MB.

Zu1 muss ich sagen, ich finde die Frage unsinnig. Da steht nix zu Zeilenabständen etc. Frag doch deinen Lehrer nochmal nach den Abständen.
 
ad 1: Sehe ich so wie TheElvis; wie das allerdings mit den Abständen zwischen 2 Zeichen handzuhaben ist, weiß ich auch nicht.

ad 2: Hmm... eigenartig forumulierte Frage. Wenn man von den ursprünglichen 2D-Grafikkarten ausgeht, dann kann der Speicherbedarf genau so ermitteln wie du bei 3) gerechnet hast. Wenn man z.b. eine Auflösung von 800x600 gerne hätte und 24 bit farbtiefe: 800*600*24

ad 3: Deine Berechnung stimmt.
In der Praxis wird mehr verbaut, da noch Framebuffer (Double-Buffer, etc.) dazukommen und moderne Grafikkarten ja auch 3D Beschleunigung haben: das heisst, Texturen müssen abgelegt werden, Geometriedaten, aber auch die ganzen Shader und noch einiges mehr
 
1) Den Flächenbedarf könntest du natürlich hochrechnen und auf Pixel umlegen. 80x25 ist aber das Textmodusraster und hat mit SVGA nix am Hut: http://de.wikipedia.org/wiki/Textmodus

2) Tjo, der Hersteller sagt dir, du kannst gar nicht genug haben. Ist inzwischen auch eine Fragen der Dimension. 2D: die Grafikkarte braucht...genau...gar nichts, weil die onboard ausreicht und jene vom BIOS (Haupt-)Speicher zugewiesen bekommt, die wo möglichst klein eingestellt sein sollte. Für 3D muss man sich informieren, was gerade so angesagt ist...

3) Ein True-Color-Pixel belegt idR 32 Bits, wovon aber nur 24 Information tragen. Über 3 Byte shiftet es sich im binären Zahlensystem schlecht. Der Frame-Buffer liegt meistens auch in doppelter Ausführung vor, um das aktuell "bearbeitete" Bild erst nach Fertigstellung zu präsentieren. Insbesondere bei der 3. Dimension kommt natürlich noch viel Unfug wie Texturen dazu.

http://de.wikipedia.org/wiki/Framebuffer
 
Als kurze Anmerkung:

Gerade im Berech des Framebuffers sind die 8 unterschlagenen Bit (eben 32, und nicht 24) sehr wichtig, da hier der Alphakanal durchaus gebraucht wird.

Der Große Bildspeicher ist essenziell, da Texturen und mehrere Bildebenen berücksichtigt werden müssen. Gerade Dinge wie "early Z" zeigen, dass Speicher kontruktiv eingespart werden kann. (Vorab Prüfung, ob bestimmte Bereiche überhaupt sichtbar sind. (Wenn du bei CS vor deiner Wand stehst, muss die Welt dahinter nicht gerendert werden. (Als Bsp)

Dann muss man darüber nachdenken, wie Texturfilterung (Anisotropische / Trilinear, Bilinear) realisiert sind. Gerade Antialiasing (höhere Stufen) lasten den Speicher gleich um den Faktor ihres Antialiasinggrades noch mal mehr aus.

Rieseige Geometrieprogramme und Shaderprogramme berechnen hochkomplexe Wasserreflexionen und Spiegel effekte, das sind enorme Matrixtransformationen, die in ihrem Zahlenwert auch erstmal untergebracht werden müssen.

Bsp: Eine Auflösung von 1680 x 1050 (SXGA+) @ 32bit sind etwa 6,73MB (Rohdaten), Nehmen wir nur mal einen Kubus an, der 4 Seiten hat (Deckel und Boden mal egal), jeweils 1680 * 1050 sind wir bei 27MB. Nun kein earlyZ, keine Filterung, nur AA um den Faktor 8, schon bist du ohne Kompression und Einsparunsgechanismen bei +200MB Framebuffer.

Dort liegt wohl der Hund begraben. :)

Gruß, GuaRdiaN
 
Zurück
Oben