AGH University of Science and Technology in Krakow

cancel
Showing results for 
Search instead for 
Did you mean: 

Reprezentacje typu liczbowego - DBL, U8, I8, itd...

Cześć,

Chciałbym nieco rozjaśnić temat, który (z tego co słyszałem) dla niektórych może być tajemniczy i nie pozwalać w pełni zrozumieć niektórych decyzji, które podejmują m.in. podczas robienia zadań domowych.

Jak wiecie, w LabVIEW istnieje typ danych taki jak liczba, jednak liczby mogą być reprezentowane w różnych sposób: SGL, DBL, U8, I8, I16, U16 itd.

Czym się różnią? Tym o jakim zakresie i o jakiej dokładności liczby mogą wykorzystywać!

Przykład:

Kontrolka typu U8 (unsigned 8 bit = 8 bitowa liczba bez znaku) może przechowywać wartość bez znaku (a więc tylko dodatnią), która w pamięci komputera zajmuje 8 bitów (bit to 0 lub 1)

8 bitów to np. 01010101, 00001111, 00000000, 11111111, ...

Kombinacji jest tyle, że wystarczy tylko na 256 różnych wartości, dlatego zakres liczb jest od 0 do 255.

Typ U16 jest podobny, ale ma 16 bitów, a więc odpowiednio większy zakres.

Typy z literą "I" na początku (np. I8) pozwalają na zakodowanie informacji o znaku (+/-) i wtedy na np. 8 bitach jest również 256 wartości, ale zakres to od -128 do +127.

To wszystko liczby całkowite.

Jeśli jest potrzeba operowania na liczbach rzeczywistych należy użyć np. typu DBL (najpopularniejszy).

Można używać oczywiście zawsze typu DBL (nawet gdy używa się tylko liczb całkowitych), jest to dość wygodne, jednak należy pamiętać o tym, że jest on wolniejszy od całkowitych i zwykle zajmuje więcej pamięci.

Kompletna lista typów, ich zakresów i dokładności tutaj: http://zone.ni.com/reference/en-XX/help/371361J-01/lvhowto/numeric_data_types_table/

Mateusz Owczarek

Certified LabVIEW Architect
Certified TestStand Architect
0 Kudos
Message 1 of 1
(2,774 Views)