Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Fixed-point arithmetic
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Software application examples== * The popular [[TrueType]] font format uses 32-bit signed binary fixed-point with 26 bits to the left of the decimal for some numeric values in its instructions.<ref name="TTS"/> This format was chosen to provide the minimal amount of precision required for [[hinting]] and for performance reasons.<ref name="Freetype"/> * With the exception of the [[Nintendo 64]], all 3D games for the [[fifth generation of video game consoles]], including the [[3DO]], [[PlayStation (console)|PlayStation]], [[Sega Saturn]], and [[Atari Jaguar]]<ref name="Dolphin_2014"/> use fixed-point arithmetic, as the systems lack hardware floating-point units. The PlayStation transformation coprocessor supports 16-bit fixed point with 12 fraction bits - whereas the Sega Saturn VDP coprocessors used a 32-bit fixed point format reserving the lower 16 bits for the fractional part. * The [[TeX]] typesetting software, widely used by scientists and mathematicians, uses 32-bit signed binary fixed point with 16 fraction bits for all position calculations. The values are interpreted as fractions of a [[point (typography)|typographer's point]]. [[TeX font metric]] files use 32-bit signed fixed-point numbers, with 12 fraction bits. * [[Tremor (software)|Tremor]], [[Toast (GSM)|Toast]] and [[MPEG Audio Decoder|MAD]] are software libraries which decode the [[Ogg Vorbis]], [[GSM Full Rate]] and [[MP3]] audio formats respectively. These codecs use fixed-point arithmetic because many audio decoding hardware devices do not have an FPU. * The [[WavPack]] lossless audio compressor uses fixed point arithmetic. The choice was justified by, among other things, the worry that different floating-point rounding rules in different hardware could corrupt the lossless nature of the compression.<ref name="WavPack"/> * The Nest Labs Utilities library,<ref name="nlu"/> provides a limited set of macros and functions for fixed point numbers, particularly when dealing with those numbers in the context of sensor sampling and sensor outputs. * The [[OpenGL ES]] 1.x specification includes a fixed point profile, as it is an API aimed for embedded systems, which do not always have an FPU. * The [[dc (computer program)|dc]] and [[bc programming language|bc]] programs are [[arbitrary precision]] calculators, but only keep track of a (user-specified) fixed number of fractional digits. * [[Fractint]] represents numbers as [[Q (number format)|Q2.29]] fixed-point numbers,<ref name="Fractint_2005"/> to speed up drawing on old PCs with [[Intel 80386|386]] or [[486SX]] processors, which lacked an FPU. * ''[[Doom (1993 video game)|Doom]]'' was the last [[first-person shooter]] game by [[id Software]] to use a 16.16 fixed point representation for all of its non-integer computations, including map system, geometry, rendering, and player movement. This representation is still used in modern [[List of Doom source ports|''Doom'' source port]]s. * The [[Q Sharp|Q#]] programming language for the [[Microsoft Azure Quantum|Azure quantum computer]]s, that implement [[quantum logic gates]], contains a standard numeric library for performing fixed-point arithmetic on [[quantum register|registers]] of [[qubit]]s.<ref name="Quantum"/>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)