Rev. 1.50, 10/04, page 233 of 448
Example 2:
;
R1:R2 (64 bits) ÷ R0 (32 bits) = R2 (32 bits); unsigned
TST R0,R0
;
Check for division by zero
BT ZERO_DIV ;
CMP/HS R0,R1
;
Check for overflow
BT OVER_DIV ;
DIV0U
;
Flag initialization
.arepeat
32
;
ROTCL R2
;
Repeat 32 times
DIV1 R0,R1
;
.aendr
;
ROTCL R2
;
R2 = quotient
Example 3:
;
R1 (16 bits) ÷ R0 (16 bits) = R1 (16 bits); signed
SHLL16 R0
;
Set divisor in upper 16 bits, clear lower 16 bits to 0
EXTS.W R1,R1
;
Dividend sign-extended to 32 bits
XOR R2,R2
;
R2 = 0
MOV R1,R3
;
ROTCL R3
;
SUBC R2,R1
;
If dividend is negative, subtract 1
DIV0S R0,R1
;
Flag initialization
.arepeat
16
;
DIV1 R0,R1
;
Repeat 16 times
.aendr
;
EXTS.W R1,R1
;
ROTCL R1
;
R1 = quotient (one's complement notation)
ADDC R2,R1
;
If MSB of quotient is 1, add 1 to convert to two's complement notation
EXTS.W R1,R1
;
R1 = quotient (two's complement notation)
Содержание SuperH SH-4A
Страница 2: ...Rev 1 50 10 04 page ii of xx ...
Страница 8: ...Rev 1 50 10 04 page viii of xx ...
Страница 116: ...Rev 1 50 10 04 page 96 of 448 ...
Страница 178: ...Rev 1 50 10 04 page 158 of 448 ...
Страница 206: ...Rev 1 50 10 04 page 186 of 448 ...
Страница 231: ...Rev 1 50 10 04 page 211 of 448 Possible Exceptions Slot illegal instruction exception ...
Страница 235: ...Rev 1 50 10 04 page 215 of 448 Possible Exceptions Slot illegal instruction exception ...
Страница 238: ...Rev 1 50 10 04 page 218 of 448 Possible Exceptions Slot illegal instruction exception ...
Страница 408: ...Rev 1 50 10 04 page 388 of 448 Possible Exceptions Inexact Not generated when FPSCR PR 1 ...
Страница 445: ...Rev 1 50 10 04 page 425 of 448 Possible Exceptions Invalid operation Overflow Underflow Inexact ...
Страница 446: ...Rev 1 50 10 04 page 426 of 448 ...
Страница 468: ...Rev 1 50 10 04 page 448 of 448 ...
Страница 471: ......
Страница 472: ...SH 4A Software Manual ...