Skip to main content

Hvad er en flydende punktenhed?

En flydende punktenhed er en funktionel blok af en computerprocessor, der udfører flydende punktaritmetiske operationer.Også kendt af forkortelsen FPU, kan en flydende enhed også være en fysisk-separat co-processor.En FPU får normalt adgang til data via de samme adresseringstilstande som resten af processoren og inkluderer generelt sine egne registre.En processor bruger en FPU til at beregne trigonometriske, logaritmiske og grundlæggende flydende aritmetiske funktioner.Den bruger også en FPU til at indlæse, gemme og sammenligne numre i flere heltal- og flydende punktdatatyper.

Mange processorer inkluderer ikke en flydende punktenhed.De fleste af de mikroprocessorer, der er produceret af Intel Corporation og Motorola, der er indarbejdet før slutningen af 1980'erne, inkluderer for eksempel ikke en.Mange reducerede instruktionssæt computing (RISC) processorer og indlejrede controllere har heller ikke en.Disse chips inkluderer en aritmetisk logisk enhed (ALU) til at udføre grundlæggende heltal aritmetiske og bitvise logiske funktioner.Floating Point Math håndteres imidlertid af en ekstern co-processor eller et softwarebibliotek.

De fleste processorer og softwaresystemer implementerer Institute of Electrical and Electronics Engineers (IEEE) standard til flydende punktoperationer.IEEE-754-standarden blev først frigivet i 1985 og udvidet i 2008 til at omfatte yderligere datatyper.Det definerer flere heltal- og flydende punktdatatyper, hver med sin egen præcision, repræsentation og numeriske rækkevidde.Det definerer også mange aritmetiske operationer, metoder til afrunding og håndtering af undtagelser som en opdeling af nul.Uanset om matematikken udføres af en flydende point-enhed eller ej, garanterer IEEE-flydende standarden identiske resultater.

Udover tilføjelse, subtraktion, multiplikation og opdeling kan en flydende punktenhed udføre mange andre operationer.Disse inkluderer ofte skalering, firkantet rod og logaritmiske beregninger.Sine, kosinus og delvis tangent trigonometriske funktioner leveres normalt også.Heltal og flydende punktnumre kan sammenlignes med FPU og konverteres fra en præcision til en anden.De kan også afrundes i begge retninger og gemmes direkte til processorernes hovedhukommelse.

FPU for en grafikprocessor kan omfatte ofte gentagne funktioner, der er fælles for tredimensionel objektrotation eller animation.Mange indlejrede controllere er designet med processorer, der er optimeret til digital signalbehandling (DSP).Disse kan bruges i lyd- og kommunikationsapplikationer og kan indeholde FPU'er, som for eksempel er gode til Fast Fourier Transforms (FFTS).Kryptografiprocessorer inkluderer ofte en FPU til højhastighedsberegning af matematik-tung krypteringsalgoritmer.Generelle multiple-core-processorer kan også omfatte en flydende punktenhed for hver regelmæssig processorkerne.