UTOI – Konverze celého čísla bez znaménka na celé číslo se znaménkem

Symbol blokuPotřebná licence: STANDARD
PIC

Popis funkce
Blok UTOI umožňuje převod neznaménkového celého čísla na znaménkové číslo v reprezentaci dvojkového doplňku, což je běžná reprezentace používaná v procesorech. Například, v 8-bitové reprezentaci je číslo -1 reprezentováno jako 255, a v 16-bitové reprezentaci jako 65535. Rozlišení, kolikabitová reprezentace se má použít, určuje parametr bits.

Primární využití tohoto bloku je v situacích, kdy hodnota získaná z ovladače obsahuje více signálů, které se izolují vymaskováním (typicky pomocí bloků INTSM nebo BITOP). Výsledkem tohoto vymaskování je vždy neznaménkové (kladné) číslo. Pokud však má být signál interpretován jako číslo se znaménkem, je pro získání správné hodnoty nutné použít tento blok.

Vzhledem k tomu, že procesory se mohou lišit ve způsobu, jakým ukládají vícebajtová čísla (nejčastěji se setkáváme s tzv. little-endian formátem, kde na nižší adrese najdeme méně významný bajt, existují však i procesory s big-endian formátem, kde je to právě naopak), blok UTOI nabízí možnost prohození pořadí bajtů, pokud to již není řešeno na úrovni ovladače. Pro tuto úpravu slouží parametr SWAP.

Upozornění: Prohození pořadí bajtů (nastavením SWAP=on) typicky řeší problémy s rozdílným uspořádáním bajtů v procesoru pouze pro hodnoty bits=16 nebo bits=32.

Tento blok propaguje kvalitu signálu. Více informací je uvedeno v sekci 1.4.

Vstup

u

Vstupní signál bez znaménka   -9.22337E+18  9.22337E+18

Large (I64)

Parametr

bits

Počet platných bitů ve vstupním signálu   2  64 16

Long (I32)

SWAP

Otočení pořadí bajtů vstupu

Bool

Výstup

i

Zkonvertovaný (se znaménkem) vstupní signál

Large (I64)

2024 © REX Controls s.r.o., www.rexygen.com