idigitmult.s
来自「Arithmetic for integers of almost unlimi」· S 代码 · 共 32 行
S
32 行
; Thomas Pfahler, Nov 21 1997; DigitType DigitMult (prod, a, b ); $26, $25, $24; DigitType *prod, a, b;;{; *prod=LOW(a*b);; return HIGH(a*b);;} .CODE .EXPORT DigitMultDigitMult .PROC .CALLINFO FRAME=0,NO_CALLS .ENTRY stw %r25,-16(0,%r30) fldws -16(0,%r30),%fr9L ; a -> %fr9L stw %r24,-16(0,%r30) fldws -16(0,%r30),%fr9R ; b -> %fr9R xmpyu %fr9L,%fr9R,%fr8 ; a*b -> %fr8 fstws %fr8R,-16(0,%r30) ldw -16(0,%r30),%r28 ; lo(prod) -> %r28 stw %r28,0(0,%r26) ; store lo(prod) fstws %fr8L,-16(0,%r30) bv 0(%r2) ldw -16(0,%r30),%r28 ; hi(prod) -> %r28 .EXIT .PROCEND
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?