• Navigation überspringen
  • Zur Navigation
  • Zum Seitenende
Organisationsmenü öffnen Organisationsmenü schließen
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
  • FAUZur zentralen FAU Website
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Suche öffnen
  • English
  • Campo
  • StudOn
  • FAUdir
  • Stellenangebote
  • Lageplan
  • Hilfe im Notfall
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
Menu Menu schließen
  • Lehrstuhl
    • Team
    • Aktuelles
    • Kontakt und Anfahrt
    • Leitbild
    • 50-jähriges Jubiläum
    Portal Lehrstuhl
  • Forschung
    • Forschungsbereiche
      • Betriebssysteme
      • Confidential Computing
      • Embedded Systems Software
      • Verteilte Systeme
    • Projekte
      • AIMBOS
      • BALu
      • BFT2Chain
      • DOSS
      • Mirador
      • NEON
      • PAVE
      • ResPECT
      • Watwa
    • Projektkampagnen
      • maRE
    • Seminar
      • Systemsoftware
    Portal Forschung
  • Publikationen
  • Lehre
    • Sommersemester 2025
      • Applied Software Architecture
      • Ausgewählte Kapitel der Systemsoftware
      • Betriebssystemtechnik
      • Projekt angewandte Systemsoftwaretechnik
      • System-Level Programming
      • Systemnahe Programmierung in C
      • Systemprogrammierung 1
      • Verteilte Systeme
    • Wintersemester 2025/26
      • Systemprogrammierung 2
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte Systeme
      • Projekt angewandte Systemsoftwaretechnik
      • Aktuelle Entwicklung in Verteilten und Objektorientierten Betriebssystemen (für Bachelor-/Masterarbeit)
    Portal Lehre
  • Examensarbeiten
  1. Startseite
  2. Extern

Extern

Bereichsnavigation: Lehre
  • Betriebssysteme
    • Vorlesung
      • Folien
    • Übung
      • Seminar
      • Aufgaben
      • Aufgabe 0: C++ Streams
        • Aufgabe 1: Ein-/Ausgabe
          • Assembler Crashkurs
            • C++ Crashkurs
              • Entwicklungsumgebung
                • FAQ
                  • Ruhmeshalle

                Aufgabe 1: Ein-/Ausgabe

                • TextMode
                • Attribute
                Public Member Functions | Public Attributes | List of all members
                TextMode::Attribute Union Reference
                I/O subsystem

                Structure of a character attribute consists of 4 bit fore- and 3 bit background color, and a single blink bit. More...

                #include <machine/textmode.h>

                Public Member Functions

                 Attribute (Color foreground=LIGHT_GREY, Color background=BLACK, bool blink=false)
                 Attribute constructor (with default values) More...
                 

                Public Attributes

                struct {
                uint8_t foreground: 4
                 .... XXXX Foreground color
                 
                uint8_t background: 3
                 .XXX .... Background color
                 
                uint8_t blink: 1
                 X... .... Blink
                 
                }; 
                 
                uint8_t value
                 combined value
                 

                Detailed Description

                Structure of a character attribute consists of 4 bit fore- and 3 bit background color, and a single blink bit.

                Bit fields can notably simplify the access and code readability.

                Note
                Type punning is indeed undefined behavior in C++. However, gcc explicitly allows this construct as a language extension. Some compilers (other than gcc might allow this feature only by disabling strict aliasing (-fno-strict-aliasing). In StuBS we use this feature extensively due to the improved code readability.

                Constructor & Destructor Documentation

                TextMode::Attribute::Attribute ( Color  foreground = LIGHT_GREY,
                Color  background = BLACK,
                bool  blink = false 
                )
                inlineexplicit

                Attribute constructor (with default values)

                Todo:
                Complete constructor
                Parameters
                foregroundForeground color (Default: LIGHT_GREY)
                backgroundBackground color (Default: BLACK)
                blinkBlink if true (default: no blinking)

                The documentation for this union was generated from the following file:
                • machine/textmode.h
                Friedrich-Alexander-Universität
                Erlangen-Nürnberg

                Schlossplatz 4
                91054 Erlangen
                • Impressum
                • Datenschutz
                • Barrierefreiheit
                • Facebook
                • RSS Feed
                • Xing
                Nach oben