Reading the The XMOS XS1 Architecture describes the LDIVU operation as

Code: Select all

`LDIVU d, e, x, y, v`

Code: Select all

`LDIVU d,x,y,e,v ldivu d, e, v, x, y`

The correct notation is found in the XS1 architecture.

Code: Select all

```
#include <stdio.h>
int main(){
unsigned int Xh=0,Xl=31;
unsigned int y=5;
unsigned int Q;
unsigned int R;
asm("LDIVU %0,%1,%2,%3,%4" : "=r"(Q) , "=r"(R) : "r"(Xh) , "r"(Xl) ,"r"(y));
printf("Q=%u, R=%u",Q,R);
}
```

Q=6, R=1

**31**/

**5**=

**6**+

**1**/5

Q is the Quotent, R is the reminder and the operation is

*(uint_64)*X/

*(uint_32)*y where X is expressed as 2 32-bits number Xhigh and Xlow.

Thus its:

**LDIVU**

*Quotent*,*Reminder*,*Xhigh*,*Xlow*,*Y*