Vad är en dubbelmatris?

Det finns två användningsområden för termen ”dubbel array”. Den första indikerar att en matris är uppbyggd av dataelement av den skalära typen dubbel, ett slags flyttal. Den andra användningen beskriver en array som är tvådimensionell (2D) eller flerdimensionell. Flerdimensionella arrayer har mer än ett index i minnesplatserna för datan, vilket betyder att varje element i den dubbla arrayen faktiskt är början på en annan array. I objektorienterade språk kan en dubbelmatris också indikera en matris som innehåller element av klassen dubbel istället för den skalära typen.

Inte alla datorprogrammeringsspråk har en datatyp som kallas en dubbel. I allmänhet är det dock en flyttalsrepresentation av ett tal som tar upp dubbelt eller dubbelt så mycket utrymme som ett enda precisionstal upptar. Dessa siffror kan ha anmärkningsvärt höga värden som vanligtvis uttrycks med exponenter. De flesta datorhårdvara använder 64 bitar för att representera en dubbel, vilket betyder att en dubbelmatris kommer att uppta 8 byte i minnet för varje element, även om en del hårdvara använder 128 bitar eller mer för en datatyp med dubbel precision.

Många objektorienterade programmeringsspråk har omslagsklasser för skalära datatyper, vilket gör att de kan behandlas som alla andra klasser eller objekt. En dubbel array kan innehålla dessa objekt istället, i vilket fall arrayen kommer att fungera som en array av instansade klasser. Detta kan ibland vara användbart för vissa nätverkssituationer där serialisering är ett problem eller i flertrådade applikationer där synkronisering är viktigt.

När man hänvisar till en flerdimensionell array indikerar en dubbel array vanligtvis en array som har två uppsättningar index. En endimensionell array är helt enkelt en lista över liknande datatyper som alla är inriktade i följd i datorns minne, där platsen för varje separat datacell numreras sekventiellt uppåt med början på noll. Siffran som motsvarar platsen för data i arrayen kallas dess index, och data i indexet kallas dataelementet, eller bara element.

En dubbel array är i grunden en enkeldimensionell array där varje index faktiskt är det första indexet för en annan enkeldimensionell array. Ett sätt att visualisera en dubbel array är som ett rutnät eller en bit rutpapper. Det första indexet i arrayen skulle referera till vilken kolumn i rutnätet som refereras till, medan det andra indexet skulle indikera vilken rad i den kolumnen som nås.