LabVIEW NXG - أنواع البيانات البسيطة ونوع الإكراه

هذه هي المقالة الثالثة في سلسلة LabVIEW NXG التي ننظر فيها إلى أنواع البيانات البسيطة والتحويلات البسيطة بينها.



يشبه نظام نوع LabVIEW إلى حد كبير لغات البرمجة "الكلاسيكية". في هذه المقالة سننظر في الأنواع الأساسية - العددية ، المنطقية ، والسلاسل (على الرغم من أن السلاسل الرسمية لا تنتمي إلى أنواع قياسية بسيطة).


أسهل طريقة لفهم نظام النوع هي إنشاء أداة صغيرة مع عناصر تحكم ومؤشرات من أنواع مختلفة:



وربطها على الرسم البياني مثل هذا:



, " In" " Out". LabVIEW, , ( ).


— , 8, 16, 32 64 , ( 4 8 ), — . :



:



( , ). , ? :



"" ( Coercion Dots), , .


SGL DBL , , U8 I32, , DBL->SGL, DBL->I32 I32->U8 , :



"" LabVIEW Coercion Dots , :



, ? , Data Types->Numeric->Conversion:



:



Coercion Dot, .



, , , DBL, :



, , ( LabVIEW Compound Arithmetic):



LabVIEW . , :


double res;
res = 5/3;
Console.WriteLine(res);

"1".


LabVIEW , 1,66 (1,66666666666667 ):



, LabVIEW , , , C# ( "" ).


, , :



, . , , , :



C# ( , int, , :


        static void Main(string[] args)
        {
        byte x_U8 = 200, y_U8 = 200, res_U8;

        res_U8 = x_U8 + y_U8;

            Console.WriteLine(res_U8);
        }

:


        res_U8 = (byte)(x_U8 + y_U8);

, LabVIEW, , LabVIEW , , ( ):



, , :



LabVIEW ( "" ) — .


LabVIEW C# Microsoft, :


class Program
{
    static void Main(string[] args)
    {
        Console.WriteLine(5.0/0.0);
    }
}

"8". , , "", "Infinity", . , .NET Core — , ( , , " " Windows 10 2004). , , , , , , , .


, , LabVIEW:



— . :



, NaN (Not a Number):



NaN Not a Number? :



— .


.


# :


static void Main(string[] args)
{
    Console.WriteLine(5/0);
}

...


static void Main(string[] args)
{
    int zero = 0; 
    Console.WriteLine(5/zero);
}

… System.DivideByZeroException, LabVIEW — , .




() :



Conversions :



:



, , :



:



, , :


    static void Main(string[] args)
    {
    string hello = "Hello, ";
    string habr = "Habr!";

        Console.WriteLine(hello + habr);
    }

LabVIEW " " , :




. , Boolean to Integer :



LabVIEW. False:



, :



Type Cast


"Type Cast", . :



"Type", . "by flattening it and unflattening". "/".


, SGL I32:



output? "1040187392". ?


:



هذا هو 0x3E000000. هنا يحدث ما يلي - يتم إعادة تفسير أربعة بايت من رقم الفاصلة العائمة كعدد صحيح من أربعة بايت. لقد أخذت الرقم 0.125 عمدًا ، لأنه إذا نظرت إلى تمثيل 0.125 وفقًا لـ IEEE754 ، سترى أنه لا يوجد سوى خمسة بتات لمجموعة العشري - وهذا يعطينا القيمة 3E في البايت العالي.


بعد ثلاث مقالات ، يجب أن نعمل بثقة إلى حد ما مع ثلاثة أنواع من البيانات:



إذا كان لديك أي أسئلة حول المواد المقدمة ، اسأل في التعليقات ، وفي المقالة التالية سننظر في المصفوفات.


All Articles