Interfejs KIDE->Prawa lista->Bloki funkcyjne->Funkcje matematyczne->Sub32v2

Sub32v2 (Odejmowanie liczb 32-bitowych)

Wejścia:

Wyjście:

Algorytm:

Funkcja wykonuje operacje odejmowania na liczbach 32 bitowych w formacie int32 (od −2 147 483 648 — +2 147 483 647). Otrzymany wynik jest w postaci 32 bitowej zapisany na Out_Lo i Out_Hi. Najbardziej znaczący bit Out_Hi odpowiada za znak liczby. Podczas wykonywania operacji odejmowania, należy pamiętać o ograniczeniach wyjścia 32 bitowego - jeśli wartość wyjściowa przekroczy próg 2 147 483 648‬ lub −2 147 483 648, w obu przypadkach wyjście Out_Ovf zostanie ustawione w stan wysoki, przy przekroczeniu wartości, na najstarszy bit może zostać przeniesiona wartość 1, co może spowodować zmianę znaku liczby,

Przykład:

In1_Lo In1_Hi In1 (32 bit) In2_Lo In2_Hi In2 (32 bit) Out_Lo Out_Hi Out (32 bit) Out_Ovf
8 0 8 8 0 8 0 0 0 0
1 0 1 10000 0 1000 -9999 -1 -9999 0
6464 1 72000 32000 0 32000 30000 0 30000 0
0 -30000 ‭-1966080000‬ 0 -30000 ‭-1966080000‬ 0 5536 362807296 1

powrót