{"id":17947,"date":"2025-02-12T00:09:52","date_gmt":"2025-02-11T23:09:52","guid":{"rendered":"https:\/\/www.bernd-leitenberger.de\/blog\/?p=17947"},"modified":"2025-02-11T14:29:42","modified_gmt":"2025-02-11T13:29:42","slug":"grafik-und-text-ausgeben-gar-nicht-so-einfach-2","status":"publish","type":"post","link":"https:\/\/www.bernd-leitenberger.de\/blog\/2025\/02\/12\/grafik-und-text-ausgeben-gar-nicht-so-einfach-2\/","title":{"rendered":"Grafik und Text ausgeben \u2013 gar nicht so einfach (2)"},"content":{"rendered":"<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_17947\" class=\"pvc_stats all  \" data-element-id=\"17947\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/www.bernd-leitenberger.de\/blog\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n<p>Weiter geht es heute mit dem zweiten Teil &uuml;ber Grafik- und Textausgabe vor allem fr&uuml;her, aber auch heute, der direkt an den <a href=\"https:\/\/www.bernd-leitenberger.de\/blog\/2025\/02\/11\/grafik-und-text-ausgeben-gar-nicht-so-einfach-1\/\">Teil von gestern<\/a> anschlie&szlig;t. Es ist &uuml;brigens f&uuml;r den Artikel egal ob Text ausgegeben wird (zahlreiche Rechner f&uuml;r den Einsatz im B&uuml;ro verf&uuml;gten nur &uuml;ber eine Textdarstellung) oder Grafik, ja die Grafikausgabe ist sogar einfacher. Denn auch beim Text m&uuml;ssen die Pixel aus denen ein Zeichen besteht (5 x 7 beim Apple, 8&#215;8 bei vielen Rechnern, 8&#215;16 oder 9&#215;14 bei IBM Grafikkarten) ja &uuml;bertragen werden. Sie stehen aber nicht als Bitmuster im RAM sondern in einem eigenen Font-ROM; und m&uuml;ssen erst dort ausgelesen werden.<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/vg05.met.vgwort.de\/na\/bfed32e81a054eeaa17858e6821ebd60\" width=\"1\" height=\"1\" alt=\"\"\/><!--more--><\/p>\n<h3 class=\"western\">Speichertiming<\/h3>\n<p>Soweit ist alles gut. Das Problem, das sich aber ergibt, ist, dass die Ausgabe dauernd erfolgen muss. Das hei&szlig;t auf den Grafikspeicher wird dauernd zugegriffen. Nehmen wir mal einen 16 KByte gro&szlig;en Speicher, den erreichten die letzten Heimcomputer problemlos, C<a href=\"https:\/\/www.bernd-leitenberger.de\/grafik-beim-ibm-pc.shtml\">GA oder MDA Grafikkarten<\/a> des <a href=\"https:\/\/www.bernd-leitenberger.de\/ibm-pc.shtml\">IBM PC<\/a> hatten einen ebenso gro&szlig;en Bildschirmspeicher, 50-mal pro Sekunde an einen Monitor &uuml;bertragen mit einem Drittel Overhead f&uuml;r die R&auml;nder, ergeben eine Datenrate von 1.067 Kbyte\/s. Ein Z80 System hatte damals typisch 4 MHz Takt und ben&ouml;tigte daf&uuml;r mindestens <a href=\"https:\/\/www.bernd-leitenberger.de\/computerbegriffe.shtml\">DRAMs<\/a> mit 250 ns Zugriffszeit und etwa 370 bis 400 ns Zykluszeit. Die Zugriffszeit ist die Zeit, nach der ein Prozessor die Daten abrufen kann, das muss bei den meisten Prozessoren nach einem Takt erfolgen, also hier der Kehrwert von 4 MHz = 250 ns. Die Zykluszeit ist bei DRAM l&auml;nger, weil danach die Information wieder restauriert werden muss und Leitungen zum Bus wieder geschlossen werden. Sie ist aber relevant, denn erst danach kann wieder ein Zugriff erfolgen. Bei 1.067 MByte pro Sekunde findet alle 937 ns ein Zugriff statt, das ist w&auml;hrend 40 Prozent der verf&uuml;gbaren Zeit der Fall.<\/p>\n<p>Das ist ein Problem, den damals wurden DRAM-Bausteine als speicher verwendet, die nur eine Datenleitung haben, an der Typenbezeichnung an einer \u201e41\u201c erkennbar, also 4116 f&uuml;r ein 16 Kbit DRAM, 4164 f&uuml;r ein 64 Kbit RAM und 41256 f&uuml;r ein 256 Kbit RAM. Ein 8-Bit-Prozessor mit 8 Datenleitungen brauchte so immer (mindestens) acht Bausteine. Mehr konnten es durchaus sein, so hatten Rechner mit 32 KByte RAM meist zwei B&auml;nke mit je 8 x 4116 Bausteinen und 128 KByte Rechner dann zwei B&auml;nke mit 4164 Bausteinen. Die Wahl des <a href=\"https:\/\/www.bernd-leitenberger.de\/8086.shtml\">Intel 8088<\/a> f&uuml;r den IBM PC erfolgte denn auch (neben anderen Gr&uuml;nden) weil man so weniger Leitungen und Speicherbausteine brauchte.<\/p>\n<p>Das Problem bei einer solchen Organisation ist: egal an welcher Adresse der Grafikspeicher liegt, es werden immer bei jedem Zugriff alle acht Bausteine angesprochen, da in jedem RAM nur ein Bit eines Bytes gespeichert ist, z.B. Bit 0 im ersten Baustein und Bit 7 im letzten Baustein.CPU und Grafikausgabe, egal &uuml;ber welche Methode die Ausgabe erfolgt, m&uuml;ssen sich absprechen, damit es nicht zu einem Konflikt bei dem Zugriff kommt.<\/p>\n<p>Zur L&ouml;sung dieser Herausforderung gibt es verschiedene Methoden. Man kann dies durch einen separaten Grafikspeicher l&ouml;sen. Dieser wird dann nur in den Adressbereich eingeblendet, wenn ein Zugriff durch die CPU n&ouml;tig ist und dann kann sie sich mit der Ausgabe synchronisieren, das geschieht meist durch ein Anlegen eines \u201eWait\u201c Signals an die CPU, wenn gerade ein Zugriff erfolgt. Das ist eine elegante Methode. Einen separaten Grafikspeicher hatte z.B. der <a href=\"https:\/\/www.bernd-leitenberger.de\/osborne.shtml\">Osborne 1<\/a>. Alle Einbaukarten in den IBM PC arbeiten auch nach diesem Prinzip.<\/p>\n<p>Bei einer Reihe von Computern wie dem <a href=\"https:\/\/www.bernd-leitenberger.de\/tandy-commodore-apple-2.shtml\">Apple II<\/a>, <a href=\"https:\/\/www.bernd-leitenberger.de\/Amstrad-CPC-Serie.shtml\">Amstrad CPC<\/a> oder den MSX nutzte man eine Eigenheit des Maschinenzyklus von CPUs aus. Sie hatten im ersten Zyklus beim Holen eines Befehls eine feste Reihenfolge:<\/p>\n<ul>\n<li>Fetch: Befehl aus dem Speicher holen<\/li>\n<li>Decode: Befehl untersuchen und feststellen was zu tun ist<\/li>\n<li>Execute: Den Befehl ausf&uuml;hren<\/li>\n<\/ul>\n<p>Jeder dieser Schritte konnte einen oder mehrere Takte umfassen. Bei einem <a href=\"https:\/\/www.bernd-leitenberger.de\/z80.shtml\">Z80-Prozessor<\/a> brauchte er immer 4 Takte f&uuml;r diesen Teil eines Befehls. Dabei griff er nur in den ersten zwei Takten auf den Speicher zu. In der zweiten H&auml;lfte des Zyklus tat er das nie. Also kam man auf die Idee, die Speicherzugriffe f&uuml;r die Bild&uuml;bertragung in die zweite H&auml;lfte (Takt 3+4) zu legen. Solang also die Zugriffe niemals mehr als 50 Prozent der Gesamtzeit ausmachen ist das eine gute und vor allem billige L&ouml;sung. Der Nachteil: jeder Mikroprozessor hat auch komplexere Befehle, die weitere Speicherzugriffe erfordern. Im obigen Pseudo-Code-Beispiel z.B. alle Ladeoperationen in ein Register. Diese gehen Befehle mit weiteren Bytes gehen schneller weil das Dekodieren nur einmal zu Befehlsanfang n&ouml;tig ist. F&uuml;r einen Speichertransfer braucht der Z80 nur 3 Takte. Damit nun aber diese Operationen in die Zeit rutschen, indem die Pixel ausgelesen werden, wurden in diesen F&auml;llen die Taktzyklen auf ein Vielfaches einer festen Taktzahl \u2013 beim Z80 waren es 4 \u2013 angehoben. Das verlangsamte den Prozessor, bei den CPC ist die Verz&ouml;gerung bekannt, die Ma&szlig;nahme kostete da rund 25 Prozent der Geschwindigkeit. Der Vorteil ist das man nur eine Leitung vom Wait-Pin der Z80 zum Gate Array ziehen muss und dieses bei jedem Transfer die Leitung auf logisch 1 setzt.<\/p>\n<p>Alternativ investiert man mehr Geld in die Speicherchips. Es gibt prinzipiell mehrere L&ouml;sungen:<\/p>\n<ul>\n<li>Statische Bausteine<\/li>\n<li>Bausteine mit mehr Datenleitungen<\/li>\n<li>Dual-Ported RAM<\/li>\n<\/ul>\n<p>Ein statisches RAM speichert die Information nicht in einem Kondensator, sondern einem Flip-Flop. Solche RAMs haben keine Zykluszeit, sondern nur eine Zugriffszeit. Damit w&auml;re ein Zugriff in der zweiten Takth&auml;lfte m&ouml;glich weil dann zwei Takte antat ein Takt zur Verf&uuml;gung stehen. Solche Bausteine sind aber viel teurer als dynamische RAM, weil sie typischerweise damals nur ein Viertel der Datenmenge eines vergleichbar teuren DRAM fassten.<\/p>\n<p>Ein RAM mit anderer interner Organisation \u2013 es gab damals auch Bausteine mit 4 oder 8 Datenleitungen &#8211; erlaubt es die Zugriffe von CPU und Bildschirmlogik zu verteilen. Bei Vier Leitungen pro Chip ist ein 64 Kbit Chip dann 16 K x 4 organisiert. Zwei Chips bilden einen 16 KByte Adressraum und speichern mit 8 Datenleitungen ein Byte. Legt man in diesen 16K-Bereich den Bildschirmspeicher so kann die CPU ihre Programme in den anderen sechs Chips des 64 KByte Speichers problemlos ausf&uuml;hren, ohne einen Konflikt zu haben. Absprechen muss sie sich nur, wenn sie auch auf den Bildschirmspeicher schreiben will. Es gibt aber einen guten Grund, warum diese L&ouml;sung recht unpopul&auml;r war. Denn wer sich an die Zeit erinnert: man arbeitete meist interaktiv. Bei einem Spiel wird sowieso dauernd das Bild erneuert, vor allem war das Scrollen bei dem der ganze Bildschirminhalt umgew&auml;lzt wird sehr langsam. So gesehen brachte diese L&ouml;sung recht wenig, weil eben recht viel in den Grafikspeicher geschrieben wurde.<\/p>\n<p>Eigens f&uuml;r das Problem erfunden wurden Dual Ported RAM. Sie hatten zwei Ausg&auml;nge die separat von CPU und Videoprozessor genutzt wurden und sich somit nicht ins Gehege kamen. Damit dies ging, war der Port f&uuml;r den Videoprozessor ein besonderer: bei einem Zugriff wurden gleich 256 zusammenh&auml;ngende Bit in einen Zwischenspeicher geladen und dann jeweils ausgegeben. Die Logik la&szlig; den Arbeitsspeicher ja sowieso sequentiell aus.<\/p>\n<p>Bei Videoprozessoren oder Grafikkarten die separat eingebaut wurden (<a href=\"https:\/\/www.bernd-leitenberger.de\/konzeption-des-ibm-pc.shtml\">IBM PC<\/a>) war es meist auch so, das die Karten mit ihren Kontrollern oder Videoprozessoren ihren dann separaten Speicher selbst kontrollierten. Die CPU konnte dann mal nicht einfach so auf diesen Speicher zugreifen. Sie musste das mit dem Videoprozessor absprechen. Beim IBM PC wurde bei MDA und CGA Karte dies so gel&ouml;st, das das BIOS bei Zugriffen wartete, bis der Controller signalisierte, das er im Bereich war, den man nicht sah (horizontale und vertikale Austastl&uuml;cke). W&auml;hrend der Zeit \u2013 etwa ein Drittel der Gesamtzeit, d&uuml;rfte dann geschrieben werden. Viele Programme umgingen das BIOS und schrieben direkt in den f&uuml;r die Ausgabe zust&auml;ndigen Speicher, der bei einer festen Adresse im Adressraum lag. Dann gab es Bildst&ouml;rungen, \u201eSchneegest&ouml;ber\u201c genannt. Wie viel Performance das kostet, sieht man an einem wirklich schlechten technischen Konzept, dem des <a href=\"https:\/\/www.bernd-leitenberger.de\/TI994a-intern.shtml\">Ti 99\/4a<\/a>. Bei ihm wurde der gesamte 16 KByte Speicher vom Grafikprozessor verwaltet und die CPU musste immer warten, was diesen Rechner wirklich langsam machte.<\/p>\n<p>Ich habe nicht umsonst 8 Bit Rechner als Referenz bei diesem Artikel genommen. Bei ihnen waren die Anforderungen am h&ouml;chsten und eigene Grafikkarten oder Spezialbausteine f&uuml;r die Grafik eher selten. Der Grund f&uuml;r die hohen Anforderungen sind, dass sie nur 8 Bit auf einmal &uuml;bertrugen und ihre einfachen Befehle nur wenige Takte umfassten. Sie griffen dadurch sehr h&auml;ufig auf den Speicher zu. 16 Bit Mikroprozessoren holten jeweils 16 Bit auf einmal und holen so gleich zwei Befehle, die nur ein Byte lang waren auf einmal. So hatte ein 5 MHz 8086 die gleichen Anforderungen an Speichergeschwindigkeit wie ein 4 MHz Z80.<\/p>\n<h4 class=\"western\">Heute<\/h4>\n<p>Heute hat sich viel ge&auml;ndert. Vor allem spielt die Bildaufbaurate praktisch keine Rolle mehr bei der Gesamtdatenrate vom und zum Speicher. Mein derzeitiger B&uuml;ro-Rechner hat nicht mal eine eigene Grafikkarte, sondern eine integrierte Grafik, die nutzt einen Teil des Hauptspeichers als Grafikspeicher. Das ist variabel, abh&auml;ngig, ob ich einen Text schreibe oder ein Spiel spiele. Beim Text belegt die Grafik 256 KByte von 32 GB. Bei einem Notebook mit separater (Spiele)-Grafikeinheit, aber immer noch Hauptspeichernutzung, sind es schon 4,2 GB die sich die Grafikunit (GPU) abzweigt. Davon belegen die Pixel die man sieht, den kleinsten Teil: selbst bei drei Monitoren mit 4K-Aufl&ouml;sung (3840 x 2160 Pixel) sind es bei 32 Bit pro Bildpunkt gerade mal 96 MByte.<\/p>\n<p>Den meisten Speicher ben&ouml;tigen heute Grafikkarten f&uuml;r die Texturen, Objekte die schnell eingeblendet werden m&uuml;ssen und auch das Programm. Moderne Grafikkarten berechnen z.B. f&uuml;r jeden Lichtstahl, ob man ihn sieht oder nicht. Daf&uuml;r ben&ouml;tigen sie auch einen Gro&szlig;teil der Daten&uuml;bertragungsrate. In ihnen arbeiten Tausende von Recheneinheiten. Jede von ihnen f&uuml;hrt in einem Takt mindestens eine, meist mehrere Operationen aus und muss daher dauernd mit neuen Daten \u201egef&uuml;ttert\u201c werden. Das macht den Gro&szlig;teil der Daten&uuml;bertragungsrate aus. Bei meinem derzeitigen Rechner steckt DDR4-3200 RAM. Das RAM hat eine Frequenz von 3.200 MHz und transferiert pro Takt jeweils 64 Bit, also insgesamt 25.600 Mbyte\/s. F&uuml;r 60 Hz Bildwiederholfrequenz, 16 Millionen Bildpunkte pro Monitor (8K Aufl&ouml;sung) und drei Monitore sind das nur 2,88 GByte pro Sekunde, also ein Bruchteil der Datenrate, die ein Speicherkanal schafft und heute haben die Rechner meist zwei best&uuml;ckte Kan&auml;le, in meinem Rechner der nachtr&auml;glich aufger&uuml;stet wurde, sind es sogar vier Module, auf die sich die Transfers verteilen.<\/p>\n<p>Sie brauchen die hohe Datenrate um die ganzen Bilddaten, die verarbeitet werden m&uuml;ssen, bevor sie ausgegeben werden zu transferieren. Mit den Datenraten, die ein Mainboard bietet kommen separate Grafikkatzen schon lange nicht mehr aus. Je nach Preisklasse haben sie 256 bis 1024 Datenleistungen (anstatt 64 beim PC) und setzen auch spezielles Graphic-RAM GDDR RAM ein, das nochmals h&ouml;her getaktet und schneller als dass RAM auf den DIMMS f&uuml;r Prozessoren ist. Meist ist um die Geschwindigkeit zu erh&ouml;hen es auch fest verl&ouml;tet direkt bei der GPU, um die Wege und Widerst&auml;nde zu verk&uuml;rzen.<\/p>\n<p>Die heutigen Grafikkarten sind eine Weiterentwicklung der Grafikkarten aus den fr&uuml;hen Neunzigern. Bis dahin bot jede neue Generation von Grafikkarten bei der x86 Linie einfach mehr Speicher, mehr Farbe, eine h&ouml;here Aufl&ouml;sung. Aber <a href=\"https:\/\/www.bernd-leitenberger.de\/DOS-Versionen.shtml\">DOS als Betriebssystem<\/a> bot keine API, kein Interface f&uuml;r Grafik. Das musste jedes Programm noch selbst machen, indem es rudiment&auml;re Routinen f&uuml;r das Setzen eines Punktes aufrief. Windows hatte erstmals eine API und es gab immer wieder auftauchende grafische Elemente wie den Rahmen um ein Fenster, die obere Men&uuml;leiste. Ein Fenster war erst mal eine leere Fl&auml;che. Es kamen mit dem Siegeszug von <a href=\"https:\/\/www.bernd-leitenberger.de\/Windows-Geschichte.shtml\">Windows 3.0<\/a> erstmals Windows-Beschleuniger\u201c Grafikkarten auf den Markt. Diese installierten einen Treiber in Windows. Wenn nun ein Fensterrahmen gezeichnet werden sollte, dann wurde nicht jeder Bildpunkt berechnet und gesetzt, das konnte eine Hardwareroutine in der Karte eigenst&auml;ndig tun. Weitere Routinen gab es f&uuml;r Linien, Textausgabe, ausgef&uuml;llte Fl&auml;chen. Das beschleunigte den Bildaufbau enorm, denn in allen F&auml;llen die bisher betrachtet wurden, war es immer noch die CPU die berechnete welche Speicherbaustelle ver&auml;ndert werden musste damit nur ein Pixel gesetzt werden konnte. Das erkl&auml;rt auch warum damals Computer so langsam scrollten. Man konnte damals wirklich mitlesen, was geschrieben wurde. Beim Scrollen musste die CPU praktisch bei jeder ausgegebenen Zeile den ganzen Bildschirmspeicher umw&auml;lzen und das dauerte.<\/p>\n<p>Ab Windows 95 gab es mit DirextX dann auch eine API f&uuml;r Spiele, bei der dann die Elemente vorhanden waren, die Spiele im Vollformat brauchten. Sie brauchte einige Jahre um sich durchzusetzen, zahlreiche Hersteller setzten auf eigene APIs, die als Treiber eingebunden wurden. Diese Karten waren leistungsf&auml;higer, hatten aber den Nachteil das ein Spiel diese Treiber auch nutzen musste, weshalb es oft diese Grafikkarten im Bundle mit Spielen gab, die speziell angepasst wurden.<\/p>\n<p>Heute gibt es das auch noch, aber es ist seltener geworden. Als neues Unterscheidungsmerkmal ist heute das Raytracing hinzugekommen das <a href=\"https:\/\/amzn.to\/3CO3dzc\">NVIDIA<\/a> und <a href=\"https:\/\/amzn.to\/3EJQ3DN\">ATI<\/a> unterschiedlich durchf&uuml;hren. Daneben gibt es eigene Bibliotheken f&uuml;r die Nutzung der Rechenleistung einer Grafikkarte in PC-Anwendungen (CUDA), die meist nur mit bestimmten Anwendungen laufen. Photoshop als Bildbearbeitung ist hier ein popul&auml;res Beispiel. Seit ein, zwei Jahren wird auch die Rechenkapazit&auml;t einer Grafikkarte f&uuml;r KI-Anwendungen genutzt. Damit kann man z.B. bei Videokonferenzen den Hintergrund dynamisch erkennen und auswechseln. Das enorme Steigen des B&ouml;rsenwerts von NVIDIA hat seine Ursache in dem KI-Boom, weil daf&uuml;r spezielle und sehr teure Grafikkarten dieser Firma eingesetzt werden, entsprechend sank er als <a href=\"https:\/\/www.deepseek.com\/\">DeepSeek<\/a> angek&uuml;ndigt wurde, dass viel weniger Ressourcen braucht, auch kurzfristig um 17 Prozent. Trotzdem ist das Unternehmen nach einer B&ouml;rsenwertsteigerung um 2000 Prozent pro Jahr das zweit wertvollste Unternehmen weltweit und<a href=\"https:\/\/companiesmarketcap.com\/de\/nvidia\/marktkapitalisierung\/\"> 3,19 Billionen Dollar wert <\/a>\u2013 und das bei gerade mal 30.000 Mitarbeitern.<\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_17947\" class=\"pvc_stats all  \" data-element-id=\"17947\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/www.bernd-leitenberger.de\/blog\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n<p>Weiter geht es heute mit dem zweiten Teil &uuml;ber Grafik- und Textausgabe vor allem fr&uuml;her, aber auch heute, der direkt an den Teil von gestern anschlie&szlig;t. Es ist &uuml;brigens f&uuml;r den Artikel egal ob Text ausgegeben wird (zahlreiche Rechner f&uuml;r den Einsatz im B&uuml;ro verf&uuml;gten nur &uuml;ber eine Textdarstellung) oder Grafik, ja die Grafikausgabe ist [&hellip;]<\/p>\n","protected":false},"author":169,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[4],"tags":[611,610],"class_list":["post-17947","post","type-post","status-publish","format-standard","hentry","category-computer","tag-grafikdarstellung","tag-grafikkarten","entry"],"a3_pvc":{"activated":true,"total_views":224,"today_views":1},"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":18380,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2025\/09\/03\/die-glorreichen-10-das-war-mal-weg-pc-hardware\/","url_meta":{"origin":17947,"position":0},"title":"Die glorreichen 10 &#8211; Das war mal weg: PC Hardware","author":"Bernd Leitenberger","date":"3. September 2025","format":false,"excerpt":"Ich will heute mal zwei ZDF Info \/ Neo Sendungen verbinden. Die glorreichen 10, die bei mir als Vorlage f\u00fcr einige Blogs dienten und die von mir noch mehr gesch\u00e4tzte Sendung \"Das war mal weg\", wo es um Dinge geht, die fr\u00fcher fast jeder hatte und die heute aus unserem\u2026","rel":"","context":"In &quot;Die Glorreichen 10&quot;","block_context":{"text":"Die Glorreichen 10","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/allgemein\/die-glorreichen-10\/"},"img":{"alt_text":"","src":"https:\/\/vg02.met.vgwort.de\/na\/876c61d389304d98aa0332fadd769381","width":350,"height":200},"classes":[]},{"id":18504,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/01\/25\/die-glorreichen-10-satellitenrekorde\/","url_meta":{"origin":17947,"position":1},"title":"Die glorreichen 10 &#8211; Satellitenrekorde","author":"Bernd Leitenberger","date":"25. Januar 2026","format":false,"excerpt":"Ich denke, es wird mal wieder Zeit f\u00fcr etwas leichte Unterhaltung die etwas Wissen vermittelt. Also einen Blog \u00fcber 10 Rekorde bei Satelliten, die ihr vielleicht noch nicht kennt. Um eines klarzustellen - es geht nur um Satelliten. Raumsonden sind au\u00dfen vor, weil bei ihnen vieles anderes ist, so kann\u2026","rel":"","context":"In &quot;Die Glorreichen 10&quot;","block_context":{"text":"Die Glorreichen 10","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/allgemein\/die-glorreichen-10\/"},"img":{"alt_text":"","src":"\/img\/1kgsats.png","width":350,"height":200,"srcset":"\/img\/1kgsats.png 1x, \/img\/1kgsats.png 1.5x, \/img\/1kgsats.png 2x, \/img\/1kgsats.png 3x"},"classes":[]},{"id":18610,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/03\/27\/galileos-cds-teil-1\/","url_meta":{"origin":17947,"position":2},"title":"Galileos CDS &#8211; Teil 1","author":"Bernd Leitenberger","date":"27. M\u00e4rz 2026","format":false,"excerpt":"Hall\u00f6chen, es wird Zeit das ich mich mal wieder melde. Es gab zwei Gr\u00fcnde, warum ich mich so rar gemacht habe. Das eine ist das es gerade nicht so viel aktuelles gibt, au\u00dfer einem Update zu Artemis, zu dem ich vielleicht noch etwas schreibe. W\u00e4hrend Trump das ganze Programm nach\u2026","rel":"","context":"In &quot;Raumfahrt&quot;","block_context":{"text":"Raumfahrt","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/"},"img":{"alt_text":"","src":"https:\/\/vg07.met.vgwort.de\/na\/4fb81c7bafbd4d9d88b5695abdb33d29","width":350,"height":200},"classes":[]},{"id":18469,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2025\/11\/13\/operation-fishbowl\/","url_meta":{"origin":17947,"position":3},"title":"Operation Fishbowl","author":"Bernd Leitenberger","date":"13. November 2025","format":false,"excerpt":"Hallo, ich schreibe weiter an meinem Buch, die Auskopplung der Thor und Delta aus dem Buch \u00fcber die US-Tr\u00e4gerraketen. Und wie immer nutze ich die Zeit noch was zu erg\u00e4nzen. Seitens des Einsatzes der Thor bzw. Delta als Satellitentr\u00e4ger gibt es wenig Neues zu schreiben da habe ich schon beim\u2026","rel":"","context":"In &quot;Raumfahrt&quot;","block_context":{"text":"Raumfahrt","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/"},"img":{"alt_text":"","src":"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/e\/e2\/Radiocarbon_bomb_spike.svg","width":350,"height":200,"srcset":"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/e\/e2\/Radiocarbon_bomb_spike.svg 1x, https:\/\/upload.wikimedia.org\/wikipedia\/commons\/e\/e2\/Radiocarbon_bomb_spike.svg 1.5x"},"classes":[]},{"id":18511,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2026\/01\/27\/musks-ki-rechenzentren-im-orbit\/","url_meta":{"origin":17947,"position":4},"title":"Musks KI-Rechenzentren im Orbit","author":"Bernd Leitenberger","date":"27. Januar 2026","format":false,"excerpt":"Bei meinem regelm\u00e4\u00dfigen Besuch des Space Reviews stie\u00df ich auf diesen Artikel: SpaceX, orbital data centers, and the journey to Mars. Ich hatte in meiner Nachlese schon erw\u00e4hnt das Elon Musk, nachdem er dies lange verschoben hat nun plant SpaceX an die B\u00f6rse zu bringen. Ich meinte aber, das l\u00e4ge\u2026","rel":"","context":"In &quot;SpaceX&quot;","block_context":{"text":"SpaceX","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/spacex\/"},"img":{"alt_text":"","src":"https:\/\/vg06.met.vgwort.de\/na\/0ee72da693054bc3b5c3f00214a7e2b3","width":350,"height":200},"classes":[]},{"id":18385,"url":"https:\/\/www.bernd-leitenberger.de\/blog\/2025\/09\/07\/spacex-splitter\/","url_meta":{"origin":17947,"position":5},"title":"SpaceX-Splitter","author":"Bernd Leitenberger","date":"7. September 2025","format":false,"excerpt":"Der heutige Blog ist nicht neu, das, was ich schreibe habe ich schon einige Male geschrieben, aber ebenso wie ich zum wiederholten Male Artikel \u00fcber den Fortschritt oder fehlenden Fortschritt in anderen Webseiten lese, denke ich kann man einiges noch mal aufkochen. Ich will das als eine Folge von fiktiven\u2026","rel":"","context":"In &quot;SpaceX&quot;","block_context":{"text":"SpaceX","link":"https:\/\/www.bernd-leitenberger.de\/blog\/category\/raumfahrt\/spacex\/"},"img":{"alt_text":"","src":"https:\/\/vg02.met.vgwort.de\/na\/b2e94ef07fec4d7190886846bcbb4589","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts\/17947","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/users\/169"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/comments?post=17947"}],"version-history":[{"count":0,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/posts\/17947\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/media?parent=17947"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/categories?post=17947"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bernd-leitenberger.de\/blog\/wp-json\/wp\/v2\/tags?post=17947"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}