Windows Calculator

Windows Calculator is a software calculator included in all versions of Windows.

Windows Calculator
Calculator in Windows 10 in light mode
Original author(s)Chris Peters,
Mark Cliggett,
Marc Taylor,
Kraig Brockschmidt[1]
Developer(s)Microsoft
Initial releaseNovember 20, 1985 (1985-11-20)
Repositorygithub.com/Microsoft/calculator
Written inC++
Operating systemAll versions of Microsoft Windows, Xbox One System Software, Windows 10 Mobile, Windows Phone
PlatformIA-32, x86-64 and ARM (and historically DEC Alpha, Itanium, MIPS, and PowerPC)
TypeSoftware calculator
LicenseMIT License

History

Microsoft Windows NT Calculator Version 3.1

A simple arithmetic calculator was first included with Windows 1.0.[2]

In Windows 3.0, a scientific mode was added, which included exponents and roots, logarithms, factorial-based functions, trigonometry (supports radian, degree and gradians angles), base conversions (2, 8, 10, 16), logic operations, statistical functions such as single variable statistics and linear regression.

Windows 9x

Until Windows 95, it uses an IEEE 754-1985 double-precision floating-point, and the highest representable number by the calculator is 21024, which is slightly above 10308 (~1.80 × 10308).

In Windows 98 and later, it uses an arbitrary-precision arithmetic library, replacing the standard IEEE floating point library.[3] It offers bignum precision for basic operations (addition, subtraction, multiplication, division) and 32 digits of precision for advanced operations (square root, transcendental functions). The largest value that can be represented on the Windows Calculator is currently <1010,000 and the smallest is 10−9,999. (Also ! calculates the Gamma function which is defined over all real numbers, only excluding the negative integers).

Windows 2000, XP and Vista

In Windows 2000, digit grouping is added. Degree and base settings are added to menu bar.

The calculators of Windows XP and Vista were able to calculate using numbers beyond 1010000, but calculating with these numbers (e.g. 10^2^2^2^2^2^2^2...) does increasingly slow down the calculator and make it unresponsive until the calculation has been completed.

These are the last versions of Windows Calculator, where calculating with Binary/Decimal/Hexadecimal/Octal numbers is included into scientific mode. In Windows 7, they were moved to programmer mode, which is a new separate mode that co-exists with scientific mode.

Windows 7

Windows 7 Calculator

In Windows 7, separate programmer, statistics, unit conversion, date calculation and worksheets modes were added. Tooltips were removed. Furthermore, Calculator's interface was revamped for the first time since its introduction. The base conversion functions were moved to the programmer mode and statistics functions were moved to the statistics mode. Switching between modes does not preserve the current number, clearing it to 0.

The highest number is now limited to 1010000 again.

In every mode except programmer mode, one can see the history of calculations. The app was redesigned to accommodate multi-touch. Standard mode behaves as a simple checkbook calculator; entering the sequence 6 * 4 + 12 / 4 - 4 * 5 gives the answer 25. In scientific mode, order of operations is followed while doing calculations (multiplication and division are done before addition and subtraction), which means 6 * 4 + 12 / 4 - 4 * 5 = 7.

In programmer mode, inputting a number in decimal has a lower and upper limit, depending on the data type, and must always be an integer. Data type of number in decimal mode is signed n-bit[4] integer when converting from number in hexadecimal, octal, or binary mode.

Data typeSize of data type (bits)Lower limitUpper limit
Byte8-128127
Word16-32,76832,767
Dword32-2,147,483,6482,147,483,647
Qword64-9,223,372,036,854,775,8089,223,372,036,854,775,807
Windows 8.1's additional Metro-style calculator in standard mode

On the right of the main Calculator, one can add a panel with date calculation, unit conversion and worksheets. Worksheets allow one to calculate a result of a chosen field based on the values of other fields. Pre-defined templates include calculating a car's fuel economy (mpg and L/100 km),[5] a vehicle lease, and a mortgage. In pre-beta versions of Windows 7, Calculator also provided a Wages template.

Windows 8.1

While the traditional Calculator is still included with Windows 8.1, a Metro-style Calculator is also present, featuring a full-screen interface as well as normal, scientific, and conversion modes.[6]

Windows 10

The Calculator in non-LTSC editions of Windows 10 is a Universal Windows Platform app. In contrast, Windows 10 LTSC (which does not include universal Windows apps) includes the traditional calculator, but which is now named win32calc.exe. Both calculators provide the features of the traditional calculator included with Windows 7, such as a unit conversions for volume, length, weight, temperature, energy, area, speed, time, power, data, pressure and angle, and the history list which the user can clear.

Both the universal Windows app and LTSC's win32calc.exe register themselves with the system as handlers of a 'calculator:' pseudo-protocol. This registration is similar to that performed by any other well-behaved application when it registers itself as a handler for a filetype (e.g. .jpg) or protocol (e.g. http:).

All Windows 10 editions (both LTSC and non-LTSC) continue to have a calc.exe, which however is just a stub that launches (via ShellExecute) the handler that is associated with the 'calculator:' pseudo-protocol. As with any other protocol or filetype, when there are multiple handlers to choose from, users are free to choose which handler they prefer either via the classic control panel ('Default programs' settings) or the immersive UI settings ('Default Apps' settings) or from the command prompt via OpenWith calculator:.

In the Windows 10 Fall Creators Update, a currency converter mode was added to Calculator.[7]

On 6 March 2019, Microsoft released the source code for Calculator on GitHub under the MIT License.[8]

Features

By default, Calculator runs in standard mode, which resembles a four-function calculator. More advanced functions are available in scientific mode, including logarithms, numerical base conversions, some logical operators, operator precedence, radian, degree and gradians support as well as simple single-variable statistical functions. It does not provide support for user-defined functions, complex numbers, storage variables for intermediate results (other than the classic accumulator memory of pocket calculators), automated polar-cartesian coordinates conversion, or support for two-variables statistics.

Calculator supports keyboard shortcuts; all Calculator features have an associated keyboard shortcut.[9]

Calculator in programmer mode cannot accept or display a number larger than a signed QWORD (16 hexadecimal digits/64 bits). The largest number it can handle is therefore 0x7FFFFFFFFFFFFFFF (decimal 9,223,372,036,854,775,807). Any calculations in programmer mode which exceed this limit will overflow, even if those calculations would succeed in other modes. In particular, scientific notation is not available in this mode.

Issues

For some transcendental function operations, such as square root operator (sqrt(4) - 2 = -8.1648465955514287168521180122928e-39) causing the number to be calculated incorrectly due to catastrophic cancelation.

Calculator Plus

Calculator Plus is a separate application for Windows XP and Windows Server 2003 users that adds a 'Conversion' mode over the Windows XP version of the Calculator. The 'Conversion' mode supports unit conversion and currency conversion. Currency exchange rates can be updated using the built-in update feature, which downloads exchange rates from the European Central Bank.

See also

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.