to działa na małych liczbach.
Mr w sumie jest 40-bitowy, ale jest pdzielony na 3 segmenty MR2-8 bitów M1 i MR0 mają po 16bitów, wynik powinien być jakoś rozdzielony na te segmenty ale jakoś nie jest.
Przecież masz małe liczby....
Masz dwie liczby 16 bitowe.
16bit*16bit = 32bit (mieści się w MR prawda?)
32bit + 16bit*16bit = maksymalnie 33bit - w tym konkretnym przypadku nadal 32 bity.
Nie mam zainstalowanego VDSP dla 218x, ale mam dla BlackFina (też jest 16bitowy, ma takie same rozmiary rejestrów). Sprawdzałem na symulatorze, działa.
Aha, twój wynik znajdzie się w MR1:MR0. Arytmetykę musisz mieć ustawioną na całkowitą.