Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Führt einen rechten arithmetischen Schichtvorgang für einen signierten 64-Bit-Ganzzahlwert aus. Die Funktion bietet einen verbesserten Verschiebungscode für rechte arithmetische Schichten, bei denen sich die Schichtanzahl im Bereich 0-31 befindet.
Syntax
LONGLONG Int64ShraMod32(
[in] LONGLONG a,
[in] DWORD b
);
Die Parameter
[in] a
Die signierte 64-Bit-Ganzzahl, die verschoben werden soll.
[in] b
Die Schichtanzahl im Bereich 0-31.
Rückgabewert
Typ: LONGLONG
Der Rückgabewert ist das signierte 64-Bit-Ganzzahlergebnis des rechten arithmetischen Schichtvorgangs.
Bemerkungen
Die Schichtanzahl ist die Anzahl der Bitpositionen, die die Bits des Werts verschieben.
Bei einem rechts arithmetischen Schichtvorgang für einen signierten Wert werden die Bits des Werts nach rechts verschoben, und auf der linken Seite des Werts werden die Bits des Werts auf den Wert des Zeichenbits festgelegt.
Ein Compiler kann optimalen Code für einen richtigen arithmetischen Schichtvorgang generieren, wenn die Schichtanzahl eine Konstante ist. Wenn die Schichtanzahl jedoch eine Variable ist, deren Wertebereich unbekannt ist, muss der Compiler den schlimmsten Fall annehmen, was zu nicht optimalem Code führt: Code, der eine Unterroutine aufruft, oder Code, der inline, aber verzweigt ist. Durch die Einschränkung der Schichtanzahl auf den Bereich 0-31 ermöglicht die Int64ShraMod32-Funktion dem Compiler das Generieren eines optimalen oder nahezu optimalen Codes.
Beachten Sie, dass der Wertparameter der Int64ShraMod32-Funktion und der Rückgabewert 64-Bit-Werte sind, nicht LARGE_INTEGER Strukturen.
Anforderungen
| Anforderung | Wert |
|---|---|
| Mindestens unterstützter Client | Windows XP [Desktop-Apps | UWP-Apps] |
| Mindestanforderungen für unterstützte Server | Windows Server 2003 [Desktop-Apps | UWP-Apps] |
| Zielplattform | Fenster |
| Überschrift | winnt.h (enthalten Windows.h) |