EasyManua.ls Logo

Renesas SuperH SH-4A - Page 333

Renesas SuperH SH-4A
472 pages
Print Icon
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Rev. 1.50, 10/04, page 313 of 448
Operation:
SHLD(int m,n)/*SHLD Rm,Rn */
{
int sgn = R[m] & 0x80000000;
if (sgn == 0)
R[n] <<= (R[m] & 0x1F);
else if ((R[m] & 0x1F) == 0)
R[n] = 0;
else
R[n] = (unsigned)R[n] >> ((~R[m] & 0x1F)+1);
PC += 2;
}
Example:
SHLD R1, R2 ;Before execution R1 = H'FFFFFFEC, R2 = H'80180000
;After execution R1 = H'FFFFFFEC, R2 = H'00000801
SHLD R3, R4 ;Before execution R3 = H'00000014, R4 = H'FFFFF801
;After execution R3 = H'00000014, R4 = H'80100000

Table of Contents

Related product manuals