Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

largeic.c File Reference

#include "ntrtlp.h"

Go to the source code of this file.

Functions

LARGE_INTEGER RtlExtendedLargeIntegerDivide (IN LARGE_INTEGER Dividend, IN ULONG Divisor, IN OUT PULONG Remainder OPTIONAL)
LARGE_INTEGER RtlLargeIntegerDivide (IN LARGE_INTEGER Dividend, IN LARGE_INTEGER Divisor, IN PLARGE_INTEGER Remainder OPTIONAL)
LARGE_INTEGER RtlExtendedIntegerMultiply (IN LARGE_INTEGER Multiplicand, IN LONG Multiplier)


Function Documentation

LARGE_INTEGER RtlExtendedIntegerMultiply IN LARGE_INTEGER  Multiplicand,
IN LONG  Multiplier
 

Definition at line 117 of file largeic.c.

References Multiplier.

Referenced by MiAttemptPageFileExtension().

00124 : 00125 00126 This function multiplies a signed large integer by a signed integer and 00127 returns the signed large integer result. 00128 00129 N.B. An overflow is possible, but no exception is generated. 00130 00131 Arguments: 00132 00133 Multiplicand - Supplies the multiplicand value. 00134 00135 Multiplier - Supplies the multiplier value. 00136 00137 Return Value: 00138 00139 The large integer result is returned 00140 00141 --*/ 00142 { 00143 LARGE_INTEGER Result; 00144 00145 Result.QuadPart = Multiplicand.QuadPart * (LONGLONG)Multiplier; 00146 return (Result); 00147 } }

LARGE_INTEGER RtlExtendedLargeIntegerDivide IN LARGE_INTEGER  Dividend,
IN ULONG  Divisor,
IN OUT PULONG Remainder  OPTIONAL
 

Copyright (C) 1996-97 Intel Corporation. All rights reserved.

The information and source code contained herein is the exclusive property of Intel Corporation and may not be disclosed, examined or reproduced in whole or in part without explicit written authorization from the company.

Definition at line 40 of file largeic.c.

Referenced by FsRecGetDeviceSectors(), KiCalibrateTimeAdjustment(), RtlLargeIntegerToChar(), and RtlLargeIntegerToUnicode().

00048 : 00049 00050 This function divides an unsigned large integer by an unsigned long 00051 and returns the resultant quotient and optionally the remainder. 00052 00053 Arguments: 00054 00055 Dividend - Supplies the dividend value. 00056 00057 Divisor - Supplies the divisor value. 00058 00059 Remainder - Supplies an optional pointer to a variable 00060 that receives the remainder. 00061 00062 Return Value: 00063 00064 The large integer result is stored at the address supplied by a0. 00065 00066 --*/ 00067 00068 { 00069 LARGE_INTEGER Quotient; 00070 00071 Quotient.QuadPart = Dividend.QuadPart / Divisor; 00072 if (Remainder) { 00073 *Remainder = (ULONG)(Dividend.QuadPart % Divisor); 00074 } 00075 return Quotient; 00076 }

LARGE_INTEGER RtlLargeIntegerDivide IN LARGE_INTEGER  Dividend,
IN LARGE_INTEGER  Divisor,
IN PLARGE_INTEGER Remainder  OPTIONAL
 

Definition at line 79 of file largeic.c.

00087 : 00088 00089 This function divides an unsigned large integer by an unsigned 00090 large and returns the resultant quotient and optionally the remainder. 00091 00092 Arguments: 00093 00094 Dividend - Supplies the dividend value. 00095 00096 Divisor - Supplies the divisor value. 00097 00098 Remainder - Supplies an optional pointer to a variable 00099 that receives the remainder. 00100 00101 Return Value: 00102 00103 The large integer result is stored at the address supplied by a0. 00104 00105 --*/ 00106 { 00107 LARGE_INTEGER Quotient; 00108 00109 Quotient.QuadPart = (ULONGLONG)Dividend.QuadPart / (ULONGLONG)Divisor.QuadPart; 00110 if (Remainder) { 00111 Remainder->QuadPart = ((ULONGLONG)Dividend.QuadPart % (ULONGLONG)Divisor.QuadPart); 00112 } 00113 return Quotient; 00114 }


Generated on Sat May 15 19:44:29 2004 for test by doxygen 1.3.7