Bit blit

Bit blit

Als Bit blit (für Bit Block Image Transfer; auch als BitBlt oder ähnlich bezeichnet für bit block transfer) bezeichnet man eine Computeroperation, die für das schnelle Kopieren und Verschieben von Speicherinhalten (Blitting) zuständig ist. Bit blit kann entweder als Softwareprozedur oder als Grafikkartenbefehl implementiert werden; in letzterem Fall bezeichnet man den dazugehörigen Chip auch als Blitter.

Bit Blit geht auf die sogenannte RasterOp-Spezifikation von Newman und Sproull zurück, eine Funktion zum bitweisen Kopieren von Speicherblöcken, die aber noch stark begrenzt war. Eine Hardware-Implementierung der RasterOp-Funktion wurde von VLSI Technology 1986 vorgestellt. Dieser Chip verfügte nicht über DMA und konnte damit den Hauptprozessor kaum entlasten.

Software

Grafik

Blitting wird vor allem zur Beschleunigung der Grafikausgabe verwendet. Dabei werden Bildbereiche verschoben, kopiert, bitweise manipuliert oder zwei Rastergrafikteile zu einem kombiniert. Die CPU wird beim Einsatz des Blitters nicht belastet, sofern dieser über DMA verfügt. Das Konzept wurde von Dan Ingalls am Forschungszentrum Xerox PARC für den Xerox Alto Computer entwickelt. Bei älteren Computern war die CPU oft zu langsam, um große Datenblöcke schnell im Speicher zu kopieren. Die Aufgabe übernahm ein Spezialchip bzw. Co-Prozessor, der besagte Blitter. Viele Heimcomputer wie der Amiga (Amiga Blitter, schon seit 1985 mit DMA-Beschleunigung) und manche Atari-ST-Modelle besaßen einen Blitter. Hiermit wurde es auch möglich, die CPU mit anderen Aufgaben zu beschäftigen, während der Blitter Bildschirmdaten manipulierte.

Auch in die Welt der PC-kompatiblen X86-Prozessor-Rechner fand Blitting Eingang. Zunächst wurden solche Grafikkarten auch als „Windows-Beschleuniger“ bezeichnet, weil sie den Prozessor von der Notwendigkeit entlasteten, die Daten über den ISA-Bus zu übertragen. Wenn dies innerhalb der Grafikkarte durch den Grafikprozessor in separatem Grafik-RAM erfolgt, wird auch hier die CPU und der normale Arbeitsspeicher entlastet. Man spricht hier auch von 2D-Beschleunigung. Sie obliegt, wie auch die später eingeführte 3D-Beschleunigung, dem Grafikprozessor.

Ein klassisches Beispiel für Blitting ist das Verschieben eines Fensters in einer grafischen Oberfläche. Hierbei muss ein großer Speicherblock (der Fensterinhalt) von einer Speicherstelle (Ursprungsposition) in eine andere Speicherstelle (Zielposition) verschoben werden. Geschieht dies ohne Hardwarebeschleunigung, wie beispielsweise im abgesicherten Modus von Windows XP oder unter Verwendung des X11-vesa-Treibers, so kann man diesen Vorgang nachverfolgen: Das Fenster wird nicht als Ganzes verschoben, sondern stückweise. Zudem ist die grafische Oberfläche währenddessen meist blockiert. Frühere Oberflächen wie Windows 3.1 oder Windows 95 haben daher während des Verschiebevorgangs nur den Rahmen gezeichnet und den Fensterinhalt erst verschoben, wenn die Zielposition feststand. Zudem waren die Auflösungen und damit auch die Datenmengen geringer.

Literatur

  • William Newman and Robert Sproull: Principles of Interactive Computer Graphics. McGraw Hill, 1978
  • John Atwood: 16160 RasterOp Chip Data Sheet. Silicon Compilers, 1984
  • User Manual for the Atari ST Bit-Block Transfer Processor (BLiTTER), The Atari Corporation, Sunnyvale, June 1987

Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Bit blit — Saltar a navegación, búsqueda En computación gráfica, BIT BLIT (bitblt, blitting, etc) es una primitiva gráfica consistente en que dos mapas de bit son combinados en uno. Se trata de una de las primitivas gráficas más básicas y por tanto más… …   Wikipedia Español

  • Bit blit — ( bitblt , blitting etc.) is a computer graphics operation in which several bitmap patterns are combined into one using a raster operator .OriginsThe name derives from the BitBLT machine instruction for the Xerox Alto computer, standing for Bit… …   Wikipedia

  • Blit — can mean:* BLock Image Transfer from Bit blit ( Bit Block Transfer , BitBLT , blitting etc.) is a computer graphics operation in which two bitmap patterns are combined. Sometimes, this is done in hardware by means of a Blitter chip. * The Blit… …   Wikipedia

  • Blit — steht für:: die Computeroperation Bit blit BLIT ist die Abkürzung für: den Brandenburger Linux Infotag, ein in Potsdam stattfindender Linuxtag …   Deutsch Wikipedia

  • Blit (computer terminal) — In computing, the Blit was a programmable bitmap graphics terminal designed by Rob Pike and Bart Locanthi Jr. of Bell Labs in 1982. When initially switched on, the Blit looked like an ordinary textual terminal, although taller than usual: Similar …   Wikipedia

  • Bit Block Transfer — Als Bit blit (für Bit Block Image Transfer; auch als BitBlt oder ähnlich bezeichnet für bit block transfer) bezeichnet man eine Computeroperation, die für das schnelle Kopieren und Verschieben von Speicherinhalten (Blitting) zuständig ist. Bit… …   Deutsch Wikipedia

  • Bit — This article is about the unit of information. For other uses, see Bit (disambiguation). Fundamental units of information bit (binary) nat (base e) ban (decimal) qubit (quantum) This box …   Wikipedia

  • BitBLT — Als Bit blit (für Bit Block Image Transfer; auch als BitBlt oder ähnlich bezeichnet für bit block transfer) bezeichnet man eine Computeroperation, die für das schnelle Kopieren und Verschieben von Speicherinhalten (Blitting) zuständig ist. Bit… …   Deutsch Wikipedia

  • BitBlt — Als Bit blit (für Bit Block Image Transfer; auch als BitBlt oder ähnlich bezeichnet für bit block transfer) bezeichnet man eine Computeroperation, die für das schnelle Kopieren und Verschieben von Speicherinhalten (Blitting) zuständig ist. Bit… …   Deutsch Wikipedia

  • Bitblit — Als Bit blit (für Bit Block Image Transfer; auch als BitBlt oder ähnlich bezeichnet für bit block transfer) bezeichnet man eine Computeroperation, die für das schnelle Kopieren und Verschieben von Speicherinhalten (Blitting) zuständig ist. Bit… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”