Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
teknopedia

teknopedia

teknopedia

teknopedia

teknopedia
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Intrinsische Funktion – Wikipedia
Intrinsische Funktion – Wikipedia
aus Wikipedia, der freien Enzyklopädie

Hochsprachen-Compiler unterstützen häufig sogenannte intrinsische Funktionen (englisch intrinsic functions oder kurz intrinsics wörtlich für Innere [Funktionen]; selten auch systeminterne Funktionen genannt), bei denen prozessor­spezifische Operationen in Funktionsaufrufe gekapselt werden. Anders als bei der Verwendung von Inline-Assembler kann der Compiler Intrinsics in vollem Umfang bei Optimierungen berücksichtigen.

Häufig müssen für die Verwendung von Intrinsics bestimmte Header-Dateien eingebunden oder bestimmte Compiler-Optionen gesetzt werden.[1] Meist sind Intrinsics besonders benannt, um sie leichter von Bibliotheks- oder [Entwickler-]eigenen Funktionen unterscheiden zu können, zum Beispiel durch zwei Unterstriche als Präfix.

Beispiele

[Bearbeiten | Quelltext bearbeiten]

Die Programmzeile

u32_intvalue = __ROUND(f_floatvalue);

wird vom IAR C-Compiler für den Prozessor R32C in den Assembler-Code ROUND übersetzt, wobei der Compiler die Kontrolle über die Prozessor-Register hat, welche für die Variablen verwendet werden.[2] (Der ROUND-Opcode wandelt beim R32C eine Gleitkommazahl unter Berücksichtigung des für den Prozessor eingestellten Rundungsmodus in eine Integer-Zahl um.)

Situation in den Programmiersprachen C++ und C für x86

[Bearbeiten | Quelltext bearbeiten]

Microsofts und Intels C- und C++-Compiler sowie auch GCC bieten intrinsische Funktionen, die direkt auf SIMD-Instruktionen (MMX, SSE, SSE2, SSE3, SSSE3, SSE4) der x86-Prozessoren abbilden. In den neueren Versionen der Microsoft-Compiler (VC2005 und VC2008) wird kein Inline-Assembler für 64-Bit-Anwendungen unterstützt.[3] Um das Fehlen des Inline-Assemblers zu kompensieren, wurden zusätzliche intrinsische Funktionen hinzugefügt, die auf Standard-Assembler-Instruktionen abgebildet werden (wie z. B. bit scan), die ansonsten nicht durch C++ oder C erreichbar sind.

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. ↑ Kapitel Compiler Intrinsics. In: Visual C++ Language Reference, MSDN
  2. ↑ Absatz INTRINSIC FUNCTIONS (englisch). In: R32C IAR C/C++ Compiler Reference Guide, Fa. IAR Systems
  3. ↑ Intrinsics and Inline Assembly. In: Visual Studio 2010 SDK. Microsoft, abgerufen am 5. Januar 2016 (englisch). ; Übersetzung: Systeminterne Funktionen und Inlineassemblys
Abgerufen von „https://de.teknopedia.teknokrat.ac.id/w/index.php?title=Intrinsische_Funktion&oldid=244058902“
Kategorien:
  • Programmiersprachelement
  • Compilerbau

  • indonesia
  • Polski
  • العربية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصرى
  • Nederlands
  • 日本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українська
  • Tiếng Việt
  • Winaray
  • 中文
  • Русский
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id