Язык nML синтаксис операторы примеры » History » Revision 6
Revision 5 (Alexander Protsenko, 06/18/2019 02:36 PM) → Revision 6/8 (Alexander Protsenko, 06/18/2019 02:56 PM)
*Язык nML: синтаксис, операторы, примеры* h1. История языка nML h1. Синтаксис языка nML h1. Ключевые операторы языка nML и примеры кода h3. Оператор преобразования типа: *cast* h3. Оператор присвоения типа: *сoerce* h1. Использование библиотеки softfloat для работы с числами с плавающей точкой В языке nML, используемом в инструменте MicroTESK, для создание типа чисел с плавающей точкой необходимо использовать ключевое слово *float(мантисса, показатель степени)*. Пример: <pre> type FLOAT16 = float(10, 5) type FLOAT32 = float(23, 8) type FLOAT64 = float(52, 11) type FLOAT128 = float(112, 15) </pre> *float_rounding_mode* - параметр содержащий режим округления. В соответствии с этим параметром происходит округление при обработке операций библиотекой. В настоящий момент поддерживается 5 режимов округления: * round_nearest_even(0), * round_up(1), * round_down(2), * round_to_zero(3), * round_near_maxMag(4); Операторы преобразования чисел с плавающей точкой: * число float = int_to_float(тип float, число int) * целое число int = float_to_int(тип целое число, int, число float) Примеры преобразований: <pre>var fp_32[FLOAT32] var word_32[WORD] word_32 = float_to_int(WORD, fp_32);</pre> <pre>var fp_32[FLOAT32] var int_32[int(32)] fp_32 = int_to_float(FLOAT32, int_32);</pre>